问答网站设计论文

来源:网络收集 时间:2025-08-09 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xuecool-com或QQ:370150219 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

加速知识积累的问答网站设计与实现

grade quesans anstime status qid varchar(50) text int int int N N N N Y 外键 回答用户等级 回答问题内容 回答问题时间 问题状态 问题编号 表4-1和表4-2详细的表示了本系统的回答模块的数据结构,可以看出提问回答模式中能准确的关联用户和时间以及栏目分级,这些都是在设计阶段提出过的需求,能够有效的完成提问和回答相关数据的存储,清晰的表达问答模式中的关系。

4.2详细E-R模型

为了清晰明确的表达用户的要求,需要建立详细的数据模型来进行概念描述,这是一个面向问题的数据模型,通过分析用户的需求进行建模。从用户角度去分析本系统的运行。

在此使用实体-联系方法模型,即E-R模型来进行描述,本系统用到如下一些主键:

管理员表中的admin字段(管理员编号); 问题表中的qid字段(问题编号); 答案表中的aid字段(答案编号); 用户表中的userid字段(用户名);

问题一级栏目表中的itemid字段(一级栏目编号); 问题二级栏目表中的subid字段(二级栏目编号);

21

加速知识积累的问答网站设计与实现

图4-2问题与用户详细E-R图

本图详细展示了问题和回答以及用户间的相关关系,本系统中,问题、答案与用户的关系是一对多,问题与答案之间的关系也是一对多的关系。对于问题、答案与用户的属性也能够清晰的展示。

另外对于问题的分类也需要有一个清晰的模型来展示,见图4-3问题分类关系图。

图4-3问题分类关系图

因为问题也需要分类,所以要设置一个二级栏目来描述问题的分类,主栏目对于问题进行分类,二次栏目对于问题的二级分类进行详细描述。这样就可以把问题的分类清晰的表达出来,使用户能更清晰的找到自己需要的问题所属于的分

22

加速知识积累的问答网站设计与实现

类。

4.3系统原理与代码实现

4.3.1系统原理与静态类图

本系统采用B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式。系统工作原理图如图4-4所示:

图4-4系统工作原理 系统一些工作流程如下:

(1)用户注册。用户使用前进行用户注册,系统保存相关信息。

(2)用户登陆。用户在输入相关信息后,系统经过查询正确后允许用户登录。 (3)问题发表。用户选择提问后在输入框里输入相关信息并设置悬赏分之后发表问题。

(4)问题回答。用户进入自己感兴趣的问题然后选择回答,并输入相关信息后提交,经过提问者确认采纳后获得分数。

(5)用户信息管理。其中包括对用户信息的查询和修改,系统会自动更新生成内容。

(7)后台管理。管理员通过后台可以对用户、问题及答案进行管理。同时管理员也可以对用户个人信息进行维护比如积分相关。

23

加速知识积累的问答网站设计与实现

图4-5系统静态类图

类图作为系统设计的核心,能完整的展示基本类帮助我们进一步理解和完善系统。图4-5展示了整个系统的数据的传递和各个类之间的关系,由图可以看出管理员对用户和问题可以进行信息管理,用户在提出和回答问题的时候能够对question表和answer表传递信息,quesion表中itemid和subid对应item和subitem表中的各自的id。 4.3.2系统顺序图

系统顺序图完整的展示了整个系统的业务流程,可以直观的表达系统的运行机制,见图4-6问答系统顺序图。

24

加速知识积累的问答网站设计与实现

图4-6问答系统顺序图

本系统顺序图对问答系统中用户从登陆到选择提出问题、回答问题、查看问题三个功能进行了描述,表示了在整个问答周期里面各个功能对象间的交互过程,可以清楚的看到数据的流向,消息的传递。

4.4加速知识创新功能

上述章节中本系统已详细介绍了问答网站的功能,达到了初期设定目标,在本节将对如何加速知识积累功能进行探讨。

经过调查资料与思考,采取了利用多次记忆的方法来加速知识积累。即使用一个独特的知识加速功能,通过考察用户知识掌握度来帮助用户积累知识。在用户进入系统后,可以选择知识检测功能。本功能利用AJAX技术在用户查看系统给出的问题之后如果选择不知道答案,系统能在当前页面给出采纳的答案供用户巩固知识。模拟其顺序图如下:

25

加速知识积累的问答网站设计与实现

袁伟 集美大学计算机工程学院

[摘要] 当前计算机网络发展迅速,本系统结合一些问答网站的功能,进行分析设计,

实现了用户注册登录,提出问题,回答问题,查询问答记录等基础问答功能。此外,为了实现加速知识的目标,本系统特别添加了用户个人问答管理功能和问题展示功能,进入个人管理界面可以查询提出问题和回答问题的历史记录。问题展示功能简洁的向用户展示优质问题推荐,显示待解决的问题和目前用户积分排行。本系统采用积分排行的方式激励用户积极学习和共享知识。通过这几个方面的功能来实现加速知识积累的问答网站系统。本系统采用JSP技术,SSH框架搭建,另有以下创新功能:通过AJAX异步技术来实现问题输入的查询、问题分类查询等。本系统对于加速知识积累有着极大的帮助,能为需要的用户提供定向的知识积累作用。

[关键字]问答系统 知识积累 AJAX JSP

1

Design and implementation of the question answering website to accelerate

knowledge accumulation

[Abstract] The computer network is developing rapidly now,This system combines some of the Q & A site features, analysis and design, user registration log in, ask questions, answer questions, inquiries and other basic questions and answers questions and answers recorded function. Furthermore, in order to accelerate the realization of knowledge The goal of this system is particularly user add personal quiz show management features and functionality issues into personal management interface can be queried to ask questions and answer questions of history. Problems display function show features concise display quality issues recommended to the user, display problem to be solved and the current user integral ranking. This ranking system uses integral way encourage users to actively learn and share knowledge. Through these aspects of functionality to achieve accelerated accumulation of knowledge Q & A site system. The system uses JSP technology, SSH framework to build, and another the following innovative features: through asynchronous AJAX technology to achieve the problem input query, question classification inquiries. For this system to accelerate the accumulation of knowledge has a great help to provide orientation for the role of knowledge accumulated user need.

[Keywords]Question Answering System Information Retrieval AJAX JSP

2

目 录

第一章 引言 .............................................................. 5

1.1背景分析 .......................................................... 5 1.2设计概要 .......................................................... 6

1.2.1研究目标 ..................................................... 6 1.2.2研究内容 ..................................................... 6 1.2.3设计流程 ..................................................... 6 1.2.4难点分析 ..................................................... 7 1.3本章小结 .......................................................... 7 第二章 开发环境与相关技术 ................................................ 8

2.1开发环境搭建 ...................................................... 8 2.2相关软件与技术介绍 ................................................ 8

2.2.1JSP技术简介 .................................................. 8 2.2.1MY SQL数据库简介 ............................................. 8 2.2.3MyEclipse简介 ................................................ 9 2.2.4AJAX技术介绍 ................................................. 9 2.2.5SSH框架介绍 ................................................. 10 2.3本章小结 ......................................................... 11 需求分析 ................................................................ 12 第三章 ................................................................. 12

3.1国际网络问答社区研究分析 ......................................... 12

3.1.1网络问答服务系统 ............................................ 12 3.1.2问答动机 .................................................... 12 3.1.3问答内容 .................................................... 13 3.2功能分析及用例图 ................................................. 13 3.4问答辅助功能设计 ................................................. 18 3.5本章小结 ......................................................... 18 第四章 详细设计 ......................................................... 19

4.1数据库设计 ....................................................... 19 4.1.1数据库需求分析 ................................................. 19

4.1.2重点表详细分析 .............................................. 20 4.2详细E-R模型 ..................................................... 21 4.3系统原理与代码实现 ............................................... 23

4.3.1系统原理与静态类图 .......................................... 23 4.3.2系统顺序图 .................................................. 24 4.4加速知识创新功能 ................................................. 25 4.5本章小结 ......................................................... 26 5.1系统测试方法介绍 ................................................. 27 5.2系统测试案例 ..................................................... 28 结论 .................................................................... 33 致谢语 .................................................................. 34

3

参考文献 ................................................................ 35

4

加速知识积累的问答网站设计与实现

第一章 引言

本章主要介绍本系统的研究背景分析与设计概要,通过背景分析来阐述该系统的研究意义与发展现状,从课题要实现的目标来进行设计分析概要,对本系统进行一个介绍。

1.1背景分析

随着互联网的快速发展,用户交换和分享信息的途径也越来越多样化,用户的信息需求也不断提升,传统的信息获取方式已难满足用户精准的信息需求[1]。“网站”是一种网络上的新兴媒体,通过Internet已经成为一个实时的,多媒体的信息传播渠道。中文互联网世界已经出现了知乎,百度知道,天涯问答等一批网络问答网站或社区,这些网站的出现代表学习知识已经不再依赖于传统媒介而是转向更为方便的互联网。截至到2013年9月,百度知道己累计解决5亿多个问题,约有5000万贡献答案的用户,平均每个闽题都有超过两个人回答[2]。腾讯旗下的捜搜问问化则已收录上亿条已解决问题,同时在线人数超过千万。相关数据表明,2008年2月至7月,百度知道月访问量在百度捜索月访问量中占比超过12%,腾讯捜捜问问对腾巧捜索的月访问次数贡献率也达30.1% [3]。

尽管他们在信息传播率上有着无与伦比的效率,但是也因为网络世界信息繁杂往往伴随着大量的无意义信息,问题与答案的质量参差不齐,不过瑕不掩瑜,问答的网站的出现确实在解决问题积累知识方面有无可替代的效率,人们越来越倾向于通过网络获取知识。

问答社区倡导开放性,这些问题的答案将加入问答社区的资源库中,满足其他用户需求,这到知识共享的目的。[4]针对对不同分类下的各类问题的问答,问答网站的用户可以积累起专门领域的大量知识,再通过等级表现出价值与信用,便于用户认可回答者。通过对答题者的限制或让用户自己认可答案来达到回答问

5

加速知识积累的问答网站设计与实现

题的目的,以知识分享为首要目的。通过明确的问答定位与搜索网站以及论坛网站区分开,知识问答网站就是这样一个系统。

基于积累知识的目的,在老师的指导下我设计了这个问答网站,能够提供一个释疑答惑的功能,用户可以将自己有疑问的知识点放在网站上,然后其他用户能够为其解答,对于问题进行栏目划分分清类别,此外能够对用户进行等级分级来达到划分用户知识积累程度,对于提问与回复作为关键功能进行开发设计。

AJAX 是与服务器交换数据并更新部分网页的艺术,在不重新加载整个页面的情况下,本系统采用AJAX通过在后台与服务器进行少量数据交换,就可以试网页实现异步更新,很多AJAX实例比如新浪微博、Google地图等都是使用了AJAX技术,能过创造动态性极强的web页面,也能降低服务器压力。通过采用AJAX技术,运用JSP技术开发一个能够有效积累知识,方便大家交流疑问的WEB网站是很有意义的。

1.2设计概要

1.2.1研究目标

根据人们对于知识答疑的需求进行分析总结,对此进行业务需求的提取,开发出知识问答网站,本系统将借鉴于各类问答网站,对于知识的共享与累积进行专门分析,针对分领域的知识开发一个能够加速知识积累的问答网站,使用户能够实际有效的通过本网站进行知识的积累与解惑,旨在能够节约用户大量时间去查阅资源,能更快速有效的去获得问题的答案。 1.2.2研究内容

问答网站以实现各类问题的信息传递为目的,方便用户间知识共享与积累,主要研究目标如下:

(1)数据库管理系统的开发;

(2)基于SSH技术,以MYSQL数据库为后台; (3)问答网站的总体框架设计;

(4)用户注册登录,发布问题,回答问题,个人信息管理等功能; (5)其他扩展元素。 1.2.3设计流程

6

加速知识积累的问答网站设计与实现

通过查阅相关文档,参考书籍,并下载安装搭建开发环境,另外对于已有的问答网站进行分析借鉴,同时分析实际问答模式,进行模拟问答来提取实体,进行需求分析,制定功能与设计大体方案。根据软件工程知识,大致先分为三个阶段:需求分析,技术准备,编程测试。

需求分析阶段是一个软件生命的起点,首先要进行需求调研,这是需求分析最重要的一环,通过对现有问答网站的模式进行分析,再与同学沟通之后模拟出各个角色和流程,提取出核心的需求死需求调研的关键。所谓的需求分析是指对要解决的问题进行详细的分析,弄清楚问题的要求,包括需要输入什么数据,要得到什么结果,最后应输出什么。通过定位清楚本系统的角色与适用对象,了解用户的实际适用流程,分析提问与回答的时候系统的活动过程,做好数据库的设计就是需求分析应该要做到的。

技术准备方面,确定了使用JSP技术来进行网站开发,使用MYSQL数据库并应用AJAX技术。具体一些技术要求如下:Strust+Spring+Hibernate集成框架,了解AJAX工作原理并运用到网站建设中去,MYSQL的应用。

编程测试是实际开发阶段,根据需求分析阶段得到需求去划分功能模块,然后针对各模块进行逐一编程测试,最后将各个功能整合到一起,进行完成的系统测试。 1.2.4难点分析

由于互联网的普及,作为主要其主要载体文字的提炼,知识的传播需求得到了大大的提升,因此搜索引擎、问答网站、学习网站等等传播知识的网站比比皆是,这是一个比较成熟的系统,虽然可借鉴的地方很多,但是如何做出特色却是一个难点,毕竟受限于视界,能做出创新的地方很少,因此把其用作与固定领域国定圈子内的问答网站是一个更好的选择。把本网站定位与一个互动式的分享社区,类似于知乎网一样,期望以关系社区形式,帮助用户寻找答问题和答案的网络问答社区[5]。

1.3本章小结

本章通过对课题的分析,进行调查分析,大致了解了课题研究的背景,问答网站的发展与现况。结合这些调查再进行粗略的系统设计分析,建立了一个基本的设计概念。

7

加速知识积累的问答网站设计与实现

第二章 开发环境与相关技术

本章介绍了搭建本项目需要的开发环境以及相关技术的概述,本项目使用MY SQL作为数据库,在MYECLIPSE 10上搭建SSH框架。另外使用AJAX技术完善系统。

2.1开发环境搭建

1)安装MYECLIPSE 10 2)安装MY SQL 5.0 3)为项目提供SSH支持

2.2相关软件与技术介绍

2.2.1JSP技术简介

JSP:(Java Server Pages)是是由Sun公司倡导,许多公司参与一起建立的一种动态页面技术标准,在静态页面中嵌入Java代码片段,再由Web服务器中的JSP引擎来进行编译并执行嵌入的Java代码片段,生成的页面信息返回给客户端。JSP技术在动态网也的建设中由其强大而特别的功能,它主要要用于创建支持跨平台Web服务器的动态网页。

Java Server Pages 技术实现与用户的交互,利于扩展,需要基于B/S技术的动态网页。作为Java技术的一部分,JSP能够快速开发基于Web,独立与平台的应用程序。

2.2.1MY SQL数据库简介

MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。

MySQL名字的来历MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司,在2008年1月16号被Sun公司收购。MySQL被广泛地

8

加速知识积累的问答网站设计与实现

应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。MYSQL既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。MYSQL为多种编程语言提供了API。这些编程语言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。其可以支持多线程,能够充分利用CPU资源。 2.2.3MyEclipse简介

MyEclipse是是在eclipse 基础上加上自己的插件开发而成的功能强大的企业级集成开发环境,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。MyEclipse的功能非常强大,支持也十分广泛,具有编码、调试、测试、发布等功能,支持Struts,CSS,Hibernate,Javascript,SPING,EJB3,AJAX等。

在结构上,MyEclipse的特征可以被分为7类: 1)JavaEE模型 2)WEB开发工具 3)EJB开发工具

4)应用程序服务器的连接器 5) JavaEE项目部署服务 6)数据库服务

7) MyEclipse整合帮助

MyEclipse 10发布了,该版本使用最高级的桌面和Web开发技术,包括 HTML5和 Java EE 6,支持 JPA 2.0、JSF 2.0 、Eclipselink 2.1以及OpenJPA 2.0。MyEclipse10对检索功能以及错误查询功能更加强大,包括对js文件的错误查询。 2.2.4AJAX技术介绍

Ajax实际上它不是一种技术,是好几种技术的集合,是一种用于创建更好更快以及交互性更强的Web应用程序的技术。传统的网页(不使用 AJAX)遇到更新内容的情况的时候,只能重新加载整个页面。但是AJAX 是一种不需要重新加载整个页面的情况下,就能够完成更新部分网页的技术。AJAX = 异步

9

加速知识积累的问答网站设计与实现

JavaScript 和 XML。通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。Ajax 的核心是 JavaScript 对象 XMLHttpRequest,是一种支持异步请求的技术。使用 AJAX技术,可以让应用程序更加完善和友好。

2.2.5SSH框架介绍

著名的软件大师Ralph Johnson对框架(Framework)进行了如下的定义: 框架是整个系统或系统的一部分的可重用设计,由一组抽象的类及其实例间的相互作用方式组成。框架一般具有很高的可重用性,能够实现即插即用,而且稳定性较高,对团队合作也很友好。SSH框架分为表示层框架Struts、业务逻辑层框架Spring、数据持久层框架Hibernate三个框架。

图2-1 SSH架构图

表示层框架Struts是以JSP Model2为基础实现的一个框架,主要分为模型、视图、控制器三个方面。主要设计理念是用控制器将表现逻辑和业务逻辑解耦,以提高系统的可维护性、可扩展性和可重用性。

Spring是一个解决了许多在J2EE开发中常见的问题的强大框架。 Spring 有良好的业务管理机制,而且比较支持对接口编程。Spring的架构的基础是利用JavaBean的IOC容器。Spring提供了一个用标准Java语言编写的AOP框架,它

10

加速知识积累的问答网站设计与实现

给POJOs提供了声明式的事务管理和其他企业事务--如果你需要--还能实现你自己的aspects。这个框架足够强大,使得应用程序能够抛开EJB的复杂性,同时享受着和传统EJB相关的关键服务。Spring还提供了可以和IoC容器集成的强大而灵活的MVC Web框架。

Hibernate是一个对象关系映射框架,Hibernate是目前最为流行的O/R mapping框架,Hibernate使程序员可以对数据库的操作比较轻松,因为他实现了数据库和对象间的自动映射。O/R mapping技术是为了解决关系型数据库和面向对象的程序设计之间不匹配的矛盾而产生的。Hibernate的这些性能使得其能够完成数据持久化的重任。

在SSH框架的组合模式中,三者各司其职,相互配合。Struts主要技术是Servlet和Jsp,其MVC模式能够让我们的逻辑更清楚,做出来的程序有清晰的层次。Spring则是让我们管理业务对象有了一个一致的方法,能养成对接口编程的有益习惯。Hibernate对我们提供完全面向对象的数据库操作,完美的解决了数据持久化的问题,由于其对JDBC的轻量级封装,我们对关系型数据库的操作会变得相当轻松。

2.3本章小结

开发环境的搭建是实现软件开发的基石,只有先建立好完善的开发环境,才能够更好的进行软件开发,正确的认识到开发环境的意义是很有必要的,相关技术是开发的支柱,各个技术的应用才能实现系统的功能,是整个系统的灵魂。

11

加速知识积累的问答网站设计与实现

第三章需求分析

本章要根据实际要求来进行需求分析,对需要实现的功能和必须解决的问题进行详细分析,确定需要做什么和要达到的基本效果。只有正确的认识软件系统需要的功能,才能正确得到需求分析应有的效果。

3.1国际网络问答社区研究分析

在进行本系统分析前先进行对比调查分析,对于国内外已建成的各种网络问答社区的动态进行研究分析。有关在线问答社区的研究可依其三个关键要素分为三部分--网络问答服务系统、问答动机及问答内容[6]。对于网络问答服务主要需要关注的是其运作的模式和类型;然后是对问答动机的研究,需要了解用户提出问题或浏览的动机;最后是要关注内容物,分析其问答数量质量排行这些方面。这三个方面是相互关联的,也能为需求分析提供主要的参考价值。 3.1.1网络问答服务系统

网络问答服务系统对人们的网络生活有了大大的改变,过去人们需要得到知识的时候往往是通过搜索引擎去进行搜索,然后过滤分析得到的海量的资料,而问答服务则可以使社区里的成员收到其他成员筛选分析,并且理解组织后的成果。而且现在很多用户也是通过搜索引擎搜索问题然后转到显示答案的问答网站,比如百度知道这类最常用到的网站。Evans[7]等人开展了一项行为观察实验,比较问答系统和搜索引擎的使用,最后发现两者其实任务绩效是接近的,但是交换的信息类型不一样。尤其问答网站的提问者会由于多个回答者的不同答案往往可以接受到更为深入的解决方案,成员间的认知协助能有效提高相互的认知水平。

3.1.2问答动机

对于在线问答提问者的动机层面研究,其中包含为什么使用,对其服务和获取信息的期望。用户是因为某种需求使用问答网站,并且期望获得答案或者信息,

12

加速知识积累的问答网站设计与实现

满足其需求。

网络环境丰富的信息量其实也促进了用户的动机。蔡志欣、赖玲玲的研究表明了虚拟社区其实质是另外一种社会网络,用户在社区中同样有着社区性的互动,互动程度的高低也带动着用户分享知识的意愿。另外社群中也有着激励机制,比如积分、等级、称号等等激烈机制能使用户通过分享而获取其他人的认可和肯定提升成就感,如此也能促使有大量知识的使用者更加乐意去提供知识。网络问答服务还有一些其他优点,包括成本较低(绝大多是为免费服务),社区参与度高,资本组成也相对简单。不过相对的答案的质量是参差不齐的,毕竟是依靠群体智慧的问答模式。综合各个调查网站,大概可以得出知识贡献的五个动机--享受帮助、知识的自我效能、自我价值、学习和社区信用奖励,这几个因素与问答中知识的贡献量和质量息息相关。 3.1.3问答内容

问答网站中,成员基本依靠问答互动作为交流方式,需要知识的用户通过在网站提出问题寻求答案,其他有能力有知识的用户可以选择其希望解决的问题进行讨论解答或者评论[9]。在相互问答的讨论中,信息以文字的形式被记录在网站中,并且通过图片,声音,视频等等多媒体辅助可以使知识的表示方式更加多元化更为清楚。

近年来,对于问答的内容相关性作为内容质量的评判标准已经受到了很多研究人员的质疑,通过大量的研究和探索,研究者们制定了一些新的评估标准。比如Bary与Schamber进行了定量定性的分析之后,给出了一些描述标准,涉及深度/范围/特征、准确性/有效性、清晰度,同时也指出这几个标准有着很高的重复度[10]。

[8]

3.2功能分析及用例图

本系统是一个问答社区。问答社区其目的在于营造一个信息交流的环境,吸引对讨论主题感兴趣的成员于讨论区内公开地发表意见、分享经验及交换信息

[11]

。课题要求是开发一个面向某专业领域的问答网站,利用独特的技术加速知识

的验证和积累。首先要进行简单的分析:

1)需要使用本系统的用户群体:希望传达知识的用户,希望学习知识的用

13

加速知识积累的问答网站设计与实现

户,某领域的专家,寻找他人认同的人等等。这些用户中,提供知识的用户是最为关键的,通过他们的专业知识能过吸引很多新的用户,同时对于知识领域的分类也要尽量清晰科学才能对渴望解决问题的用户提供帮助。

2)系统要实现的功能首先最为基本的功能是知识问答,本系统力求以问题为核心进行问答互动和知识竞争,通过提问者提出问题,各位答题者提供答案,还有关注者去对答案进行对比讨论,最后在互动中解决问题。

其次进一步要实现的功能是对有质量的问题和回答进行审核,对其他用户进行优质知识的推广。

第二个要实现的基本功能就是知识积累,对用户的进行了提问或者是关注回答的问题的类别进行分类划分,能让用户对认同的知识进行收藏。在此基础上根据用户的知识喜好分类可以对用户进行一些该类知识的优质问答推广。

另外可以补充的一些功能,比如对于大量知识问题答案的回答者进行评定,给予其专业知识的分类与认定,使得一些希望获取该类知识的人可以通过关注这些回答者来更系统的获取知识。

功能分析后可以进行一个简单的本系统分析:

图3-1问答模式系统结构图

当有问题需要得到解决的时候,可以登录网站进行分类的选择或者直接进行搜索,查看问答相关得到答案。当没有直接的答案的时候,可以直接进行提问,对于回答者的答案进行判断或者通过讨论得到解决。同时还可以通过得到多个答

14

加速知识积累的问答网站设计与实现

案,得到相关的一些更为全面的知识。问题得到解决后,可以关注答题者,同时可以把问题收藏到自己的知识分类里面。

3.3详细用例图及类图

本系统的顶层用例图如下:

图3-2顶层用例图

本系统的顶层用如图3-2所示,用户和管理员对个人信息和问题状态都有权限修改,另外用户可以提出问题和回答问题,管理员不能进行问答,管理员可以对主页面的信息进行管理,比如问题推荐,栏目管理。

结合系统的工作流程,对于核心的问答功能进行了用例分析。以下是用户级用例图,

15

加速知识积累的问答网站设计与实现

图3-3用户级用例图

图3-3把用户和系统间的关系阐述的清楚明了,对系统的主要功能有明确的展示,用户登录之后涉及的数据分两类,一类是问题相关一类是用户信息相关,这些都可以由管理员进行维护,用户登陆后能查看修改自己的信息,能提出问题并选择回答,也能去浏览问题并回答问题。

图3-4用户问答详细用例

16

加速知识积累的问答网站设计与实现

本用例图详细解释了用户与问题的关系,用户登入之后,可以选择查看问题,然后能查看其他用户的回答和回答问题;用户在选择提问后选择问题分类然后提出问题;在个人中心界面用户还可以选择查看问题记录,包含有提出的问题和回答的问题记录。

图3-5用户数据管理详细用例

图3-5是用户管理个人数据的的用例详解,用户在注册的时候可以添加个人信息,登录之后进入个人中心可以选择管理个人信息和对问题信息管理。

图3-6管理员管理用例图

图3-6是管理员对问答系统的管理用例图,本图阐述了管理员在登录后可以

17

加速知识积累的问答网站设计与实现

进行的操作,分为对用户信息的管理和问题的管理。用户信息有个人信息和积分可以操作;问题管理分为问题的状态维护和删除问题两个功能。

3.4问答辅助功能设计

在完成基础的问答需求之外拟设计一个用户个人问题管理中心,大致界面见表3-1。

表3-1用户个人管理栏目表 用户ID:xxxx 等级xxxx 积分:xx 用户密码: 确认密码: 提示问题: 问题答案: 真实姓名: 性别: 备注:

提出的问题: 回答的问题:

该表有基础的用户管理功能,可以管理自己账号相关信息,设置密码提示答案这些常用功能,同时记录一些个人隐私信息和备注,另外针对本系统特别增加了用户提出过的问题和回答过的问题的记录,供用户需要的时候查询用。

3.5本章小结

本章先研究已有的问答网站模式,进行分析提取需求,建立一个设计概念,进而将概念设计进一步转化为模型层次的设计,虽然还比较粗略,不过作出了问答网站的所需要的基本结构和功能,为进一步的去设计和实现提供了有效的指导。

18

加速知识积累的问答网站设计与实现

第四章 详细设计

本章对本网站的一些表和结构进行详细分析设计,完成实际的开发和设计。对于设计中的一些细节和关键进行详细描述,并对要实现的功能进行详细设计。实现预期要完成的功能并解决一些难点问题。

4.1数据库设计

4.1.1数据库需求分析

根据系统需求,可以列出以下数据项和数据结构:

用户表:包括用户名、密码、真实姓名、用户积分、性别、密码保护问题及答案;

问题表:包括问题编号、提问者、问题题干、提问时间、所属栏目分级、用户等级、回答状态、采纳的答案、推荐的问题;

答案表:包括答案编号、答案内容、回答者、回答时间、回答时间、问题所属编号;

管理员表:用户名、密码;

一级栏目表:一级栏目编号、一级栏目名称;

二级栏目表:二级栏目编号、二级栏目名称;一级栏目编号。 数据库表设计全部表如下:

19

加速知识积累的问答网站设计与实现

图4-1数据库设计总览

总表展示了本系统所用的所有表的项目,根据数据库的需求分析进行设计的,能保存本系统所需的预期信息。对于提问回答和栏目分级表将在之后进行详细分析。

4.1.2重点表详细分析

对于本网站的重点功能问答系统进行详细的数据结构分析设计。首先是基础的问答功能设计。问答表的设计见表4-1、4-2。

表4-1问题表(question) 字段名 qid userid title content itemid subid status acceptflag questiontime offerscore 字段名 aid userid

数据类型 int int

varchar(50) text int int int int

datetime int 数据类型 int int

是否为空 N N N N N N Y Y N N 是否为空 N N

20

默认值 自动增长 NULL 默认值 自动增长

备注 主键 外键 字段说明 问题编号 提问者姓名 问题标题 内容

所属一级栏目 所属二级栏目 用户等级 采纳的答案 提问时间 悬赏分数

表4-2回答表(answer)

备注 字段说明 主键 问题回答编号 外键 回答用户编号

加速知识积累的问答网站设计与实现

图4-7知识考验功能顺序图

本图展示了知识考验功能的详细活动,用户在进入个人中心后选择知识考验,系统会读取用户提问的历史记录,然后随机抽取问题考验用户是否知道答案,若用户知道答案就选择知道,若选不知道答案系统会读取用户采纳的答案利用AJAX技术显示在当前页面。

4.5本章小结

本章详细阐述了本系统的设计和思想,对问答网站的功能做了详细的讲解。并用代码展示了问答网站的主要三个功能,提出问题,回答问题,问题展示。这是本系统的核心功能,也是实现问答模式的基础,是本系统最关键的核心代码部分。

26

加速知识积累的问答网站设计与实现

第五章系统测试

5.1系统测试方法介绍

系统测试主要使用黑盒测试与白盒测试法。 1)黑盒测试:

黑盒测试也称功能测试或数据驱动测试,黑盒测试时用来检测每个功能是否都能正常使用,黑盒测试主要是用来检查功能实现是否达到预期要求的。黑盒测试方法主要有等价类划分、边值分析、因—果图、错误推测等,主要用于软件确认测试。在黑盒测试中,要测试程序是否能正确的接受数据,传达数据,能否对数据执行期望的操作。

对本系统的黑盒测试主要集中在账户模块和问答模块,进行多组用户的注册然后登录,进行修改密码然后重新登录功能正常;用已注册的用户提出问题,然后换另外一个注册用户进行回答问题,分别能在两个用户个人中心显示提出的问题和回答的问题,提问用户采纳答案之后,注册用户的积分能正确的增加提问用户设置的悬赏分。

2)白盒测试:

白盒测试用来程序的每个部件是否正常的工作了,并非检查功能实现的正确与否,白盒测试的主要方法有逻辑驱动、基路测试等,主要用于软件验证。

“白盒”是对所有逻辑路径进行全面测试的一种测试法。“白盒”法是穷举路径测试。

在此我采用动态的白盒测试方法,按照运作流程输入一组问题和回答相关数据,观察程序的运行状况,根据实例数据动态的运行程序。提出简单的诸如1+2的问题,然后用另外一个用户回答问题,再用原用户采纳问题,观察期间数据的流动,看程序是否正确的处理数据。

在后期的测试中发现用户注册后无法对个人信息进行相应的管理。后通过添加个人信息管理模块,用户能够方便的修改自己的信息。

经过多次编码检查,最后对系统完整的测试之后。该系统在Windows 7上进行测试得出如下结论:该系统基本能达到预期要求,但是在数据数量达到一定程

27

加速知识积累的问答网站设计与实现

度之后运行速度有变慢。

5.2系统测试案例

对于本系统进行活动图分析并进行测试,具体测试了用户提问,用户回答以及用户管理问题回答的几个活动流程。经过测试以下几个功能都可以完成,本系统的问答功能测试结果是达到了预期的目的,能够较好的为用户提供一个从提问到解决问题的体验。提出的问题能够使用另外一个用户去浏览,用户也能正确的查看其它用户的回答,这些说明了数据从用户提问开始能准确的传递,没有发生错误。

1)用户提问活动图

图5-1用户提问活动图

用户在提问过程中,登录之后选择提问,进入提问界面,根据要求选择问题分类,系统根据分类返回该分类下的二级分类,用户选择之后输入问题,然后设置悬赏分,完成所有的提问设定之后用户可以提交问题,之后系统验证无误就成功发布问题了。

2)用户回答活动图

28

加速知识积累的问答网站设计与实现

图5-2用户回答活动图

用户在登录后选择感兴趣的问题点击进入,查看问题之后选择回答问题,就能够在回答框里输入文本,把自己的答案写在上面后点击提交,系统检查提交内容合法之后就能够显示该用户回答问题的答案,回答成功。

3)用户采纳答案活动图

图5-3用户采纳答案活动图

用户提出问题后,经过一段时间进入个人中心可以看到提出问题记录,在提出问题记录选择一个问题进入该问题,系统显示出目前所有的回答,用户浏览之

29

加速知识积累的问答网站设计与实现

后可以采纳答案,回答者答案被采纳后积分增加。

4)用户登录功能活动图

图5-4用户登录活动图

用户进入网站后,在登录界面输入用户名和密码,点击提交,数据传递给数据库,验证其输入合法性和数据正确性,若均正确则成功登录,若不合法则返回登录界面,若不合法切没有权限,亦结束登录。

5)管理员维护活动图

图5-5管理员维护活动图

30

加速知识积累的问答网站设计与实现

管理登录之后可以选择要维护的项目(用户信息维护和问题维护),选择项目之后,系统给出项目的具体属性,管理员修改要维护的数据之后提交,系统验证修改后的数据是否合法,合法的话则修改成功,不合法的话则返回到修改页面。 表5-1 问答功能测试用例

功能点 用例编号 用例说明 前置条件

输入

预期结果

测试结果

1.提问功能

1.2 1.1

进入个人中心

提出问题 已登录

已登录

点击个人中心 点击提问

转至个人中心页面 转至提问界面

1.3

查看提问记录

1.4

设置悬赏分

登录后进入个人中心 选择提出问题

点击历史记录 提问时设置悬赏分

转至要查询的问题页面 提出的问题有正确的显示悬赏分数

2.回答功能

2.2

回答问题 选中问题

2.1

查看问题 已登录

点击要查看的问题 输入回答后提交

2.3

增加分数 用户回答问

题,提问者

提问者对选中的答案选

转至选择的问题界面 该问题页面显示回答 回答者分数增加

成功 N 成功 N 成功 N 成功 N 成功 N 成功 N 成功 N

备注

采纳该回答 择采纳

2.4

查看回答记录

进入个人中心

在个人中心点击历史记录

2.5

采纳问题 进入个人中

心后点击提出过的问题查看所有 回答

用户选中一个答案,确定采纳

该回答变为被采纳的答案

成功 N

转至回答的问题界面

成功 N

根据以上主要功能的流程图结合本人在软件测试课程中学习了很多测试的方法,针对本系统主要功能我设计了如表5-1的测试案列。以上测试表明本系统

31

加速知识积累的问答网站设计与实现

基本达到问答网站的预期功能要求,虽然数据处理能力比较弱,但是能够完成从注册用户到提问回答然后获取积分的完整流程,表明本系统基本功能已经完善。

另外基于经验和直觉我推测了一些系统中常见的错误,进行了错误推测法的测试,对于输入数据的规范、输入框的的响应设置、模块错误,没有发现问题,至此系统的整个测试结束,基本达到预期目标。

32

加速知识积累的问答网站设计与实现

结论

本系统参考国内各个问答网站系统结构作为分析对象,结合国际的相关研究进行需求分析,对于网络问答的模式进行了深入的了解,根据问答的需求和内容研究进行进一步分析提取需求,进而进行详细设计问答模式。同时通过研究问答网站的激励模式,了解了不少中文知识问答分析平台的激励机制,使用积分制来激发用户分享知识的动力。最后结合这几年学到的各种知识,通过同学老师的帮助,做出了这个问答网站,基本完成了预期的功能,虽然还有许多不尽人意的地方需要改进,不过由于本人知识能力有限只能期待以后能继续改进。

这个题目一开始我觉得是一个相对来说比较容易的题目,但是通过深入调查之后发现问答网站并不是那么简单的东西,实际做起来很多问题都很难解决,而且还要使用AJAX这种不懂的技术,比较茫然。但是通过慢慢的学习和调查,有了一个比较清晰的思路之后终于能开始开发了。很多东西都要从理论开始一步步学起,不过磨刀不误砍柴工,这是必须的步骤,只有理论到位了才能去实际应用。

我有很多知识都比较薄弱,但是在查询和动手开发中,出现的那些问题都是能解决的,通过同学的帮助和查询资料,学到了很多,这个毕业设计真的对我帮助很大,完整的理了一遍我所学的知识,自己完整的一次开发经历是很重要也是必须经历的。

33

加速知识积累的问答网站设计与实现

致谢语

感谢进行毕业设计以来老师和同学对我的帮助,这一两个月以来真的是在很多方面麻烦了很多人,也得到了实习公司的同事的帮助,总之真的非常谢谢这些帮助我的人,我很多方面的知识都欠缺,然而他们还是能够不厌其烦的拿出时间帮助我,给我提出建议,甚至帮我查阅资料。在做这个问答系统中,他们给了我许多帮助,带给我很大动力,是他们陪我一起走过这段时间,是他们细心而耐心的和我一起找出系统中出现的一些问题,这段时间里他们的帮助,我将铭记于心。

我是一个有很重拖延症的人,很谢谢廖江福老师不厌其烦的指导督促我们的进度,才没有让我拖欠太多的时间去完成毕业设计,大学几年各位老师传道授业造就了现在的我们。在我找工作的时候辅导员也耐心热情的帮助过我,不然我恐怕无法鼓起勇气去积极找工作,前段时间进入的公司的同事们对我也很热情,有疑惑的地方都帮我耐心解答,在我做毕设的期间他们还能为我提供不少他们的经验,真的是很谢谢这四年来的各位老师和同学。

34

加速知识积累的问答网站设计与实现

参考文献

[1] 蒋楠,王鹏.程社会化问答服务中用户需求与信息内容的相关性评价研巧一以“百度知道”为例[J].信息资源管理学报,2013(3):35-45.

[2]揭秘你所不知道的百度[EB/OL].http://search.iresearch.cn/portal/20130910/211823.shtml [3]张中峰,李秋丹.社区问答系统研究综述[J].计算机科学,2010,37(11):19-23,54.

[4]Kang M, Kim B, Gloor P, et al.Understanding the effect of social networks on user behaviors in community Driven knowledge services [J] Journal of the American Society for Information Science and Technology,2011,62(6):1066-1074.

[5]宁菁菁.基于“弱关系理论”的知识问答社区知识传播社区研究一以知乎网为例[J].新闻知识,2014(2).

[6]蔡志线,赖玲玲.虚拟社群的咨询分享行为[J].图书咨询学刊,2011(9):161-196.

[7]Evans B,Kairam S,Pirolli P.Do your friends make you smarter?An analysis of social strategies in online information seeking[J].Journal of the American Society for information Science and Technology,2012,63(10):2020-2036.

[8]Surowiecki J.The wisdom of crowds:Why the many are smarter than the few and how collective wisdom shapes business,economies,societies and nations[J].Library Journal,2005(1):55. [9]Kim Y,Choi T Y,Yan T,et al.& Dooley,K.Structural Investigation of supply network:a social network analysis approach.Journal of Management Operations,20,2011,29(3):194-211.

[10]Barry C L and Schamber L.Users’criteria for relevance evaluation:AcrossSituation comparison[J].information Processing & Management,1998:34(2/3):219236.

[11]Xu G,Ma W Y.[2006],Building Implicit links from content content for forum search[C]//In SIGIR06:Proceedings of the 29th annual international ACM SIGIR Conference on research and development in information retrieval.2006:300-307.

35

百度搜索“70edu”或“70教育网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,70教育网,提供经典综合文库问答网站设计论文在线全文阅读。

问答网站设计论文.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.70edu.com/wenku/228695.html(转载请注明文章来源)
Copyright © 2020-2025 70教育网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:370150219 邮箱:370150219@qq.com
苏ICP备16052595号-17
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:7 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219