通用BBS论坛系统的设计与实现_第1页
通用BBS论坛系统的设计与实现_第2页
通用BBS论坛系统的设计与实现_第3页
通用BBS论坛系统的设计与实现_第4页
通用BBS论坛系统的设计与实现_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、摘 要 当今社会正处在网络时代,信息化大潮席卷全球,网络正以前所未有的速度在我国普及开来。网站以其独特的优势在信息化的过程中占有重要的一席。为了方便信息的交流,在使用 JAVA 开发了这个快捷、界面友好的交流系统,实现了一个功能相对齐全的论坛系统,网友可以自由地提出问题以及帮助他人解决问题,或者交流经验。论坛用当今主流的网站开发技术 jsp 语言进行开发。论坛将采用 B/S 体系结构,人们通过浏览器就可以访问教学网站的主页,保证的服务器的安全。数据库采用免费,小巧,易用的 mysql 数据库。该论坛功能较齐全,在这里可以自由地发表自己的观点和对论坛的主题发表意见,我们还可以对网友的问题及时地解

2、决,获取对自己有用的知识。该论坛还有一些特殊的功能,如在线人员显示、强大的搜索功能。本网站严格按照软件项目开发的流程进行开发,对于网站开发的可行性分析、需求分析、概要设计、详细设计以及对网站的测试与维护都有详细的论述和实现过程。本套论坛的优点在于它具有强大的可扩展性和可维护性,非常适合网民创建自己的中小型 BBS 论坛!关键词:关键词:BBS , JAVA , MySQL ,JSPI 目 录第一章第一章 引引 言言.1 1第二章第二章 需求分析需求分析.2 2第三章第三章 总体总体设计设计.4 4第四章第四章 详细设计与实现详细设计与实现.9 9第五章第五章 系统测试系统测试.1212结结 论

3、论.1313参考文献参考文献.1414大连交通大学软件实践0第一章第一章引引 言言进入二十一世纪,计算机技术迅速向着网络化、集成化方向发展。传统的单机版应用软件正在逐渐退出舞台,取而代之的是支持网络、支持多种数据信息(多媒体)的新一代网络版应用软件,而目前网络版软件中似乎存在着两种不同的趋势,一种是称为客户端服务器的 C/S 结构,这类软件具有结构严谨,运行效率高,服务器端压力小,安全性好等优点,被广泛运用于局域网中。而另一种,也是本毕业设计所采用的,是称为浏览器服务器的 B/S 结构,它的特点是在客户端直接采用了功能强大的浏览器软件作为界面,其优点在于软件开发效率高,客户端不受操作平台的限制

4、、也不受地域的限制,网络传输量少,即适用于局域网,更适用于 Internet,而且投资小、见效快,用户可以不必进行服务器方面的投资,而是去租用,甚至是免费使用 ISP 的服务器资源,因而受到越来越多中小型单位的青睐。随着 Internet 技术的不断发展,以及用户群爆炸性地增长,网络不再仅仅是信息的被动获取来源,更成为人们探讨间题、交换观点的场所,其中,网上论坛扮演了极其重要的角色,随着时间的推移,论坛站点中积存了丰富的信息资源,不但有各类技术资料和新闻文档,还包含着用户的判断和评论,论坛站点己成为 Web 信息库的重要组成部分,自网上论坛诞生 20 多年以来,随着 Web 技术的发展,己经由

5、原来简单的电子公告板系统发展为功能丰富的网上论坛和虚拟社区模式。各种论坛随着网络迅速发展,几乎充实着生活工作的每一个方面,无论是商界、政界,还是娱乐界,都有各种论坛。互联网正在融入我们的生活,网络提供给我们的不只是一个获取信息的来源,而且还是一个可以相互交流的空间,网上论坛正是一种供人们进行交流的网络空间, 影响和改变着我们的生活。大连交通大学软件实践1第二章第二章需求分析需求分析作为一个 BBS 论坛,它应该具有 BBS 所有的一些基本功能,包括:用户登陆功能,用户取回密码功能,用户浏览帖子的功能以及用户发表、回复、修改和删除帖子的功能等。接下来,我将详细阐述一下这些功能。(一)、用户登录和

6、注册功能进入登录页面后,对于第一次登陆的用户来说,首先需要注册,单击“新用户注册”按钮即可进入注册界面,注册完成后返回登录界面。输入用户名和密码,点击“登录”按钮,系统即将用户名和密码发送到网络服务器上,与保存在服务器数据库中的信息进行核对。若核对正确,则进入帖子浏览的界面,若不正确,则重新返回登录界面。(二)、用户找回密码功能 在有些时候,我们可能会忘记登录密码,这时就用到了密码找回功能,通过正确的回答当初注册时的一些信息即可取回密码。(三)、用户帖子的浏览 当用户登录成功后便进入该页面,在该页面可以浏览他人已经发表的主题帖子,1、 帖子的总览在主题页面中主要有两部分组成,一是用户的个人信息

7、,再就是他人已经发表的主题帖子,每个帖子都包含了一些简单信息:主题、作者和时间。鼠标单击主题便进入了下一页面该帖的详细内容页面。2、查看特定帖的详细信息详细内容页面主要包含了该帖的详细内容和他人对此帖的回复,点击“我要回复”便可回复此贴。(四)、用户帖子的发布/修改/删除/回复功能1、 帖子的发布登陆成功进入主题页面后,点击“发表新的主题文章”按钮后,便可进入发表帖子的界面。在该页面中填写完信息,点击“发送新的主题” ,点击“我要回复”按钮便可对该贴进行回复,如要想对其他回复此贴的人进行回复,可以点击回复人后面的“回复XX 楼”按钮对其进行回复。大连交通大学软件实践22、帖子的删除 在主题帖子

8、页面中,每幅帖子的最左面都有一个删除按钮,点击此按钮便可删除你所发表的帖子。每个用户(除管理员外)只可删除自己的帖子。(五)、管理员对帖子的查看/发表/删除功能1、管理员查看或发表帖子2、 管理员删除帖子 综上,得到的系统用例图如图 2.1 所示。 图 2.1 系统用例图大连交通大学软件实践3第三章第三章总体总体设计设计3.1 系统框架BBS 系统角色管理管理员会员用户前台显示后台管理首页管理个人信息管理个人帖子管理会员信息管理会员帖子管理修改密码发布系统消息修改个人信息修改密码发布帖子修改帖子删除帖子查看帖子查看会员信息删除会员信息 图 3.1 功能结构图大连交通大学软件实践4 发帖回帖流程

9、图是一种表明用户发帖回帖过程的流程图,它可以帮助分析人员找出流程中的不合理回路。下面图 3.2 就用户发帖回帖流程图。 : 主 主 主 主主 主 主 主主 主 主 主主 主 主 主主 主 主 主 主 主 主 主主 主 主 主 主 主 主 主 主 主 主 主 主 主 主主 主 主 主 主 主 主 主 主 主主 主 主 主 主 主 图 3.2 用户发帖回帖流程图3.2 数据库设计 数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。数据库的设计通常是以一个已经存在

10、的数据库管理系统为基础的。通过对业务流程的分析,得到了系统的实体,以及实体之间关系,根据这些实体与关系之间的联系,得到了系统的 E-R 图,如图 3.3 所示。大连交通大学软件实践5图 3.3 通用 BBS 论坛 ER 图 E-R 模型用实体间联系反映现实世界事物间的内在联系,而数据表的建立是应用程序开发过程中的非常重要的一个环节,必须清楚每一模块要操纵的数据是那些,以及数据间的相互关系,然后建立数据表。本系统数据库使用 SQL Server 2000,包含以下 4 个表:用户表(student)、回复表(reply)、讨论表(discuss)。下面分别详细介绍以上各表:表 3.1 用户表(s

11、tudent)大连交通大学软件实践6表 3.2 回复表(reply)字段名称数据类型长度是否为空主外键说明idint11否主键编码usernamevarchar20否否用户姓名password varchar20否否密码sexvarchar8否否性别agevarchar4否否年龄birthvarchar20否否生日telephonevarchar12否否电话emailvarchar40否否电邮字段名称数据类型长度是否为空主外键说明idint4否主键编码namevarchar50否否姓名contentvarchar50否否内容timevarchar50否否时间replyvarchar50否否回复

12、大连交通大学软件实践7 表 3.3 讨论表(discuss)字段名称数据类型长度是否为空主外键说明namevarchar50否主键姓名emailvarchar40否否电邮id int4否外键编码subjectvarchar60否否题目usernamevarchar20否否用户姓名contentvarchar655535否否内容time varchar40否否时间大连交通大学软件实践8第四章第四章详细设计与实现详细设计与实现详细设计阶段就是把解决方法具体化,设计出详细规格说明,包含必要的细节,程序员可以根据它们写出实际的程序代码,详细设计也称模块设计,在这个阶段将详细地设计每个模块,具体的实现功

13、能。在详细设计过程中,具体的功能实现过程可以按照软件工程中的方法描述中的交互模型具体描述,力求完全符合客户的真实需求。该系统的设计基于以下几个原则:1.标准化;2.模块化;3.先进性;4.安全性;5.交互性。4.1 登录页面 4.2 注册新会员 %String username = request.getParameter(username);大连交通大学软件实践10String password = request.getParameter(password);String sex = request.getParameter(sex);String age = request.getPar

14、ameter(age);String year = request.getParameter(year);String month = request.getParameter(month);String day = request.getParameter(day);String telephone = request.getParameter(telephone);String email = request.getParameter(email);String msg = null;username = convert(username);sql = select * from stud

15、ent where username= + username + ;rs = stm.executeQuery(sql); /查询数据库if (!rs.next() /如果不存在sex = convert(sex);age = convert(age);String birth;birth = year + 年 + month + 月 + day + 日;sql = insert into student ( username, password, sex, birth, age, telephone , email )values(+ username+ ,+ password + ,+ s

16、ex+ ,+ birth+ ,+ age+ ,+ telephone+ ,+ email + );stm.executeUpdate(sql); /插入数据库中msg = 恭喜你,已注册成功!;response.sendRedirect(login.html); else /如果注册用户已存在msg = 你所注册的用户已经存在,请你重新注册!;out.println(提示信息:out.println();%大连交通大学软件实践11第五章第五章系统测试系统测试为了保证测试的质量,将测试过程分成几个阶段,即:代码审查、单元测试、集成测试、确认测试和系统测试。 (1)单元测试 单元测试集中在检查软件

17、设计的最小单位模块上,通过测试发现实现该模块的实际功能与定义该模块的功能说明不符合的情况,以及编码的错误。 (2)集成测试 集成测试是将模块按照设计要求组装起来同时进行测试,主要目标是发现与接口有关的问题。如一个模块与另一个模块可能有由于疏忽的问题而造成有害影响;把子功能组合起来可能不产生预期的主功能;个别看起来是可以接受的误差可能积累到不能接受的程度;全程数据结构可能有错误等。 (3)确认测试 确认测试的目的是向未来的用户表明系统能够像预定要求那样工作。经集成测试后,已经按照设计把所有的模块组装成一个完整的软件系统,接口错误也已经基本排除了,接着就应该进一步验证软件的有效性,这就是确认测试的

18、任务,即软件的功能和性能如同用户所合理期待的那样。 (4)系统测试 软件开发完成以后,最终还要与系统中其他部分配套运行,进行系统测试。包括恢复测试、安全测试、强度测试和性能测试等。单独对系统的测试主要从以下几方面入手: 功能测试:测试是否满足开发要求,是否提供设计所描述的功能,是否用户的需求都得到满足。功能测试是系统测试最常用和必须的测试,通常还会以正式的软件说明书为测试标准。 强度测试及性能测试:测试系统能力最高实际限度,即软件在一些超负荷情况下功能实现的情况。大连交通大学软件实践12经过上述的测试过程对软件进行测试后,软件基本满足开发的要求,测试宣告结束。 结 论我所选题目是“通用 BBS 论坛系

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论