BBS概要设计说明书.docx
《BBS概要设计说明书.docx》由会员分享,可在线阅读,更多相关《BBS概要设计说明书.docx(26页珍藏版)》请在冰豆网上搜索。
![BBS概要设计说明书.docx](https://file1.bdocx.com/fileroot1/2023-2/26/b5522c8f-556c-4278-851b-fa4d385f193a/b5522c8f-556c-4278-851b-fa4d385f193a1.gif)
BBS概要设计说明书
论坛概述设计说明书
编写部门:
软件10-2班
项目经理:
10031209胡情情:
引言、任务概述、总体设计、出错处理设计
组员:
10031219骆莹:
接口设计、数据结构设计、
运行设计、安全保密设计、
维护设计
1引言2
1.1编写目的2
1.2项目背景3
1.3定义3
1.4参考资料4
2任务概述5
2.1目标5
2.2运行环境5
2.3需求概述6
2.4限制描述6
3总体设计6
3.1基本设计概念和处理流程6
3.2系统总体结构和模块外部设计9
3.3功能分配12
4接口设计13
4.1外部接口13
4.2内部接口13
5数据结构设计13
5.1逻辑结构设计13
5.2物理结构设计13
5.3数据结构与程序的关系13
6运行设计13
6.1运行模块组合13
6.2运行控制13
6.3运行时间13
7出错处理设计13
7.1出错输出信息13
7.2出错处理方法及补救措施14
8安全保密设计14
9维护设计14
1引言
1.1编写目的
本文档作为BBS的概要设计说明文档,用于与用户确定最终的目标,并成为协议文本的一部分,同时也是本系统设计人员的基础文档。
概要设计说明书说明了BBS论坛系统设计的整体结构。
预期读者:
本系统开发人员及维护人员。
1.2项目背景
BBS论坛,或者称为社区,是电子商务网站中一种常见功能,也是互联网上一种极为常见的互动交流服务。
它为上网用户提供了也各自由的讨论区。
通过论坛可以向用户提供开放性的分类专题讨论区服务,同时注册的用户可以根据需要在论坛上发表文章,交流技术经验,或者提出问题并表达自己的观点。
不仅如此,上网的用户还可以在论坛中看到他人发表的文章,并且能够对该文章进行评论。
一般情况下,BBS按不同主题分为多个布告栏,其设立多是依据使用者的要求和喜好,但多具有信件交流、软件交流、信息发布等功能。
目前,大部分BBS由教育机构、研究机构或商业机构管理,大多有自己的拨入电话号码,用户只需电脑、调制解调器和电话线就可通过电话拨号登录BBS站点。
1.3定义
1.3.1本文档中涉及的专业词汇
(一)GB:
中华人民共和国国家标准的英文缩写字母
(二)构件:
具有某种功能的可重用的软件模版单元,表示了系统中主要的计算元素和数据存储。
(三)逻辑视图:
描述支持系统的功能需求的视图。
(四)开发视图:
也称模块视图,主要侧重于软件模块的组织和管理描述。
1.3.2名词说明
(一)BBS:
BulletinBoardService
(二)JSP(JavaServerPages ):
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。
网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。
JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。
(三)Struts只是一个MVC框架(Framework):
它用于快速开发JavaWeb应用。
Struts实现的重点在C(Controller),包括ActionServlet/RequestProcessor和我们定制的Action,也为V(View)提供了一系列定制标签(CustomTag)。
但Struts几乎没有涉及M(Model),所以Struts可以采用JAVA实现的任何形式的商业逻辑。
1.4参考资料
1.4.1
《软件工程导论》
第五版
张海藩
2007-10-10
清华大学出版社
《JAVA面向对象程序设计》
赵祥模、袁绍欣、葛玮
2010-11-16
清华大学出版社
J2EE项目实训Struts框架技术
杨少波等
2008-8
清华大学出版社
JSB大学实用教程
耿祥义、张跃平
2007-2-20
电子工业出版社
《数据库系统概论》
王珊
2007-7-7
高等教育出版社
《javaweb数据库系统应用开发与实列》
沈应逵、曾凌
2008-10-1
人民邮电出版社
表1
1.4.2
《BBS需求分析说明书》
1.4.3
《UML基础案例与应用》
《UML与软件建模》
《面向对象分析与设计》
2任务概述
2.1目标
图1
2.2运行环境
2.2.1软件环境
(一)客户端:
Windows95/98/2000/XP,InternetExplorer(IE6.0及其以上版本)等。
(二)服务器端:
WindowsNT/Windows2000,Tomcat5.0[12],JDK1.5及其以上版本,IE6.0及其以上版本等;
(三)数据库:
采用SQL2000,运行于服务器端。
2.2.2硬件环境:
(一)服务器CPU:
PIII500以上,内存:
512M以上。
(二)客户机CPU:
P200MMX以上,内存:
32M以上。
2.3需求概述
2.3.1需要实现的功能
(一)论坛的会员拥有浏览、发表主题、回复帖子、修改个人资料、查询主题或者其他会员信息的功能。
(二)板块的管理人员拥有对帖子的删除、加精、置顶、移动、恢复普通等操作。
(三)系统管理人员拥有对会员的管理、版主的管理、板块的管理等。
2.3.2界面要求
要求整体界面美观,有清晰的层次感,布局简洁、合理。
同时保证后台的管理页面和前台的服务页面保持风格的一致。
2.3.3需求规定
(一)时间需求:
在软件方面,响应时间,更新处理时间都比较快且迅速,系统响应时间不能超过20秒。
(二)灵活性:
当用户需求,如操作方式,运行环境,结果精度,数据结构等其他软件接口等发生变化时,设计的软件能做出适当调整,灵活性非常大。
2.4限制描述
(一)应保证使用时的安全性,防止病毒破坏系统。
(二)安全性方面的具体要求:
服务器安装防火墙和身份认证。
(三)性能方面:
Web支持1000人同时在线浏览,数据库支持20个连接。
3总体设计
3.1基本设计概念和处理流程
3.1.1开发模型
本系统采用三层结构进行开发。
三层结构是一种成熟、简单并得到普遍应用的应用程序架构,他将应用程序划分三层独立的包,包括用户表示层、业务逻辑层、数据访问层。
其中将实现人机交互的所有表单和组件放在表示层,将所有业务规则和业务的实现封装在业务逻辑组件中,将所有和数据库的交互封装在数据访问组件中。
3.1.2流程流图
BBS数据流图第一层
图2游客、会员流程流图
1.读入BBS网址读取BBS中的基本信息,将基本信息传递给游客
2.读入查询条件并将其格式化,将查询结果集返回给游客
3.读入注册信息并验证后将信息持久化到会员信息表,返回一个新的页面给客户
4.读入新帖信息经验证后将信息持久化到帖子信息表并返回该模块下所有的帖子信息。
5.读入回复内容经验证后将信息持久化到回复信息表并返回该话题的所有回复信息
6.退出系统成为游客,如果有登录帐号则直接进行登录。
如此类推
BBS数据流图第一层—版主数据流图
图3版主数据流图
1.读取要置顶的帖子,读出置顶后的帖子列表
2.读取要加精的帖子,读出加精后的帖子列表
3.读取要恢复的帖子,读出恢复后的帖子列表
4.读取要删除的帖子,读出删除后的帖子列表
5.读取要修改的帖子,读出修改后的帖子列表
3.2系统总体结构和模块外部设计
图4管理员管理模块
图5版主管理模块
图6会员模块
图7会员模块
3.3功能分配
注册登陆
版块管理
帖子管理
用户管理
友情链接管理
输入
√
√
√
添加
√
√
√
修改
√
√
√
√
删除
√
√
输出
√
√
√
√
√
打印
表2
4接口设计
4.1外部接口
本软件采用标准图形用户界面,运行于Windows2000及更高版本的操作系统之上,不需要特定的硬件或硬件接口进行支撑,Pentium以上PC机均可运行此软件。
本软件与升级服务器的接口:
软件启动被监控端端升级服务器软件。
4.2内部接口
监控端软件和被监控端软件的接口:
被监控端发送链接请求
监控端获取链接回应
被监控端发送操作消息
监控端接收异常操作消息
5数据结构设计
5.1逻辑结构设计
5.1.1实体关系(Entity-Relationship)图
1、逻辑图(Logicdiagram)
2、物理图(Physicaldiagram)
5.1.2数据库表的逻辑设计
1、BBS信息数据库表结构及数据字典定义表
注意:
对数据库表中的结构设计,最后应该给出下面的对每个字段的详细说明。
字段名
标识符
类型及长度
有无空值
主键
BBS的ID标识
id
int(自动编号)
无
PK
BBS作者
author
vchar
无
BBS标题
title
vchar
无
字段名
标识符
类型及长度
是否允许为空
主键
主题ID
bbsID
int4
Notnull
PK
主题作者
author
nvarchar(20)
Notnull
主题标题
bbsTitle
nvarchar(20)
Notnull
回复数
reply
int4
Notnull
发表时间
createTime
nvarchar(20)
Notnull
最后回复时间
lastUpdateTime
nvarchar(20)
Notnull
内容
content
ntext(16)
Notnull
点击数
hits
int4
Notnull
BBS表情图片
iconID
int4
所属类型ID
bbsTypeID
int4
Notnull
所属版块ID
boardID
int4
Notnull
用户ID
userID
int4
Notnull
是否为精华帖
bbsElite
int4
是否置顶主题
bbsTop
int4
是否禁止回复
bbsLock
int4
所属类型:
原创、转贴、问题、灌水、建议、种子、资料、下载
2、BBS回复信息表结构及数据字典定义表
字段名
标识符
类型及长度
是否允许为空
主键
回复帖ID
replyID
int4
Notnull
PK
所属主题ID
bbsID
int4
Notnull
回复作者
replyAuthor
nvarchar(20)
Notnull
回复时间
replyTime
nvarchar(20)
Notnull
回复表情ID
replyIconID
int4
回复标题
replyTitle
nvarchar(50)
Notnull
回复内容
replyContent
ntext
Notnull
3、BBS分类标题数据库表结构及数据字典定义表
字段名
标识符
类型及长度
是否允许为空
主键
版块ID
boardID
int4
Notnull
PK
版块题目
boardTitle
nvarchar(20)
Notnull
版块内容
boardContent
nvarchar(255)
Notnull
版主
leaderName
nvarchar(20)
副版主
secLeaderName
nvarchar(20)
版块主题总和
allTopicNumber
int4
版块当天帖子总和
todayTopicNumber
int4
最后回复的时间
lastReplyTime
nvarchar(20)
Notnull
最后回复的作者
lastReplyAuthor
nvarchar(20)
Notnull
4、用户信息数据库表结构及数据字典定义表
字段名
标识符
类型及长度
是否允许为空
主键
用户ID
userID
int4
否
PK
用户名
username
nvarchar(20)
否
用户性别(男0,女1)
userSex
smallint
(2)
否
用户密码
userPassWord
nvarchar(16)
否
用户Email
userEmail
nvarchar(50)
否
用户取回密码问题
userPassAsk
nvarchar(30)
否
用户取回密码答案
userPassAnswer
nvarchar(30)
否
用户角色
userType
tinyint
(1)
否
用户生日
userBirthday
nvarchar(10)
用户地址
userComeFrom
nvarchar(50)
注册时间
userRegister
nvarchar(20)
否
用户头像
userSign
nvarchar(255)
QQ号
userQQCode
nvarchar(15)
用户签名档
userIdiograph
ntext
最后登录时间
userLastTime
nvarchar(20)
否
用户发表的主题数总和
userTopicCount
int4
用户回复的主题数总和
userReTopicCount
int4
用户被删的帖子总和
userDelTopicCount
int4
用户被推荐精华帖总和
userEliteTopicCount
int4
用户登录次数
userLoadDegree
int4
是否被禁言
userLock
int4
5、管理员的数据库表及数据字典定义表
6、用户联系数据库表结构及数据字典定义表
7、用户角色数据库表结构及数据字典定义表
字段名
标识符
类型及长度
是否允许空
主键
角色ID
roleID
int4
Notnull
PK
角色名称
roleName
nvarchar(20)
Notnull
用户ID
userID
int4
Notnull
下面为说明在Access中创建出各个数据库表之间的E-R图的实现过程
可以在Access中创建除各个数据库表之间的E-R图,首先选择“工具”---“关系”
此时,将产生除“关系”菜单项目,然后选择其中的“编辑关系”菜单项目。
在项目的对话框中选中我们所需要创建关系的各个数据库表
最后点击“添加”按钮,将出现下面的图示
选择“关系”菜单中的“编辑关系”子菜单
在对话框中选择“创建”按钮以创建新的关系
分别选择主动表和被动表以及它们之间的关联字段(主--外键)
最后点击“创建”按钮,将产生除下面的E-R图
5.2物理结构设计
5.3数据结构与程序的关系
6运行设计
6.1运行模块组合
本软件的功能模块比较单一
6.2运行控制
概要过程图:
6.3运行时间
软件的运行时间基本可达到用户提出的要求,运行此软件的响应时间不超过3秒。
7出错处理设计
7.1出错输出信息
错误信息
含义
系统输出信息
数据存储部分
主要系统在与数据库产品交互时,常见的一些错误。
比如数据库连接错误,数据库对象不存在或数据字符过多。
若数据库对象不存在,系统将
跳出窗口提示“您查找的对象不存在”。
应用部分
主要是反映用户在键盘输入操作时,可能引起的数据类型错误,字符长度超过限制等,使用鼠标或键盘可能引起的操作错误等。
若用户操作错误,系统将跳出窗口提示“错误操作”。
核心库部分
主要反映系统框架中的一些错误,比如数组下标越界,数字超出范围等。
若系统框架出现错误,系统将跳出窗口提示“系统出错”。
商业层部分
主要反映系统中的一些如权限被拒绝,输入参数错误等。
若用户的权限被拒绝,系统将跳出窗口提示“您的权限不正确”。
表3
7.2出错处理方法及补救措施
(一)为防止数据存储部分出错,本系统每周将自动进行系统数据维护和系统数据副本的保存。
系统还有完善的日志记录,把相关的操作都保存到指定文件。
(二)应用部分出错后,系统将跳出窗口提示用户出错的相关问题。
当用户点击窗口按钮后,用户出错的部分将自动清除。
当鼠标或键盘操作错误后,系统跳出警告窗口提示操作不当,用户点击窗口按钮后,出错操作无奈。
(三)当系统框架出现错误,系统将跳出错误窗口提示出现错误,用户点击窗口按钮后系统自动刷新本页面,同时将会发送错误报告至系统管理员。
(四)用户权限被拒绝后,系统跳出警告窗口提示用户权限错误,用户点击窗口按钮后权限选择自动恢复至默认选项。
(五)系统崩溃后,系统自动启用副本系统代替工作。
8安全保密设计
9维护设计
由于软件太小,没有外加维护模块,仅靠软件的一些基本维护措施即可。