软件工程基于Web的BBS系统试验报告Word文档格式.docx
- 文档编号:17049452
- 上传时间:2022-11-28
- 格式:DOCX
- 页数:31
- 大小:383.43KB
软件工程基于Web的BBS系统试验报告Word文档格式.docx
《软件工程基于Web的BBS系统试验报告Word文档格式.docx》由会员分享,可在线阅读,更多相关《软件工程基于Web的BBS系统试验报告Word文档格式.docx(31页珍藏版)》请在冰豆网上搜索。
(3)数据库设计是信息系统开发和建设的重要组成部分。
5、开发环境
在开发此论坛的时候,需要具备下面的软件环境
服务器端:
●操作系统:
WindowsXP。
●Web服务器:
Tomcat6.0。
●Java开发包:
JDK1.6。
●数据库:
SQLServer2000。
●浏览器:
IE6.0。
●分辨率:
最佳效果为1024×
768像素。
客户端:
二、概念模型设计(E-R图)
数据模型是是数据特征的抽象,从抽象层次上描述了系统的静态特征、动态行为和约束条件,为数据库系统的信息表与操作提供一个抽象的框架。
描述了数据结构、数据操作及数据约束。
E-R模型的基本概念
ER图概念化地构建实体间关系的模型,这使得它们区别于数据库模型图。
ER图的理念是:
项目所有参与者能理解ER图。
ER图由不同实体类型、关系、特性和类型构成。
实体是诸如用户的实际对象,有时更抽象,但必须有业务意义。
特性用于描述实体,关系用于实体之间
(1)实体:
现实世界中的事物;
(2)属性:
事物的特性;
(3)联系:
现实世界中事物间的关系。
实体集的关系有一对一、一对多、多对多的联系。
本系统的ER图
数据库及关系的建立
根据以上这些步骤就可以创建一个数据库,依次建立下列表结构.
1.用户基本资料表
2.用户详细信息表
3.论坛文章表
4.论坛版区表
5.论坛初始化信息表
(1).用户基本信息表和用户详细信息表是一对一的关系,一个用户只对应一个详细的信息表
(2).用户基本信息表和文章表是一对多的关系,即一个用户可以发表多篇文章和回复.
(3).论坛版区表和论坛文章表是一对多的关系,在一个论坛中可以含有多个文章和回复.
详细数据库结构设计
(1).用户基本资料表:
用户基本资料表中存放的是用户登陆时所需要或者记录用户的基本信息,包含比如登陆名,密码,最后登陆时间等.用户基本信息表的建立主要是记录用户最常用的一些信息.
1leafbbs_userinfo
字段名
数据类型
长度
主键
索引
外键
可空
说明
ID
bigint
20
Y
N
代理主键
UserName
Varchar
用户名
NickName
60
昵称
Passwd
40
密码
varchar
255
电子邮件
Question
提示问题
Answer
提示答案
RegTime
datetime
注册时间
LoginTime
最后登陆时间
LoginIP
最后登陆IP
LoginTimes
int
11
登陆次数
StayTime
停留时间
SignDetail
text
用户签名
HavePic
tinyint
1
是否有头像
PicFileName
头像地址
TimeZone
地区
(2).用户详细信息表:
用户详细信息表中存放的是用户的身高,体重,联系方式等详细资料,建立此表的目的是把一些用户不经常用到的详细信息,单独存放到一张表中,可以节约系统的资源.
2leafbbs_userdetai
字段
数据类
Height
身高
Weight
体重
FavourPeople
最喜欢的人
DreamJob
向往工作
FavourMusic
喜欢的音乐
FavourPlace
喜欢的地方
FavourMovie
喜欢的电影
HomePage
主页
OicqNo
QQ号码
IcqNo
ICQ号码
MSN
MSN号码
Sex
性别
Brief
简介
(3).论坛文章表:
论坛文章表存放的是用户所发表的文章信息,也包括回复信息.而在数据库的设计中主要问题是鉴别帖子信息和回复信息.
3leafbbs_forum
ParentID
父帖ID
MainID
主帖ID
BoardID
版区ID
BoardName
版区名字
ReNum
回复数量
ClickNum
点击次数
UserID
发表者ID
发表者姓名
发表者昵称
Title
150
文章标题
Detail
文章内容
Sign
文章说明
ArtSize
文章字节数
postTime
发表时间
LastTime
最后回复时间
IPAddress
发表者IP
IsNew
是否是新
IsHidden
是否隐藏
IsTop
是否置顶
IsLock
是否被锁定
(4).论坛版区表:
论坛版区表是存放的是论坛中版块信息.而论坛也划分为父论坛和子论坛,区分他们也靠表中的某个字段来实现的.具体实际的设计如下.
4leafbbs_board
父版区ID
ChildIDs
子版区ID
Explains
版区描述
BoardPic
200
图片地址
Orders
显示顺序
PostNum
文章数量
NeedPasswd
是否加密
100
论坛初始化信息表:
论坛初始化信息表是存放初始化信息和管理员的帐号密码等信息,初始化信息是在论坛在加载过程中读取的或者以后经常用的一些信息.
表3.5leafbbs_config表
50
初始化标题
ConfContext
初始化信息
用户分三类:
普通用户、管理员
帖子管理信息表:
部分用例图:
功能需求列表
编号
功能名称
功能描述
输入内容
输出内容
用户注册
对用户名验证并注册
用户信息
注册结果
2
用户信息管理
管理用户信息,保证用户使用安全
管理方面
管理结果
3
发帖功能
用户可以自由发帖
帖子内容
帖子发布情况
4
帖子管理
管理员管理帖子
帖子管理操作
5
主题词查询
查询主题词
主题词
查询到的信息
6
用户信息修改和查询
用户修改个人信息
更新后的信息
BBS基于UML建模
用例模型(usecasesview)(用例视图)的基本组成部件是用例(usecase)、角色(actor)和系统(system)。
用例用于描述系统的功能,也就是从外部用户的角度观察,系统应支持哪些功能,帮助分析人员理解系统的行为,它是对系统功能的宏观描述,一个完整的系统中通常包含若干个用例,每个用例具体说明应完成的功能,代表系统的所有基本功能(集)。
角色是与系统进行交互的外部实体,它可以是系统用户,也可以是其它系统或硬件设备,总之,凡是需要与系统交互的任何东西都可以称作角色。
系统的边界线以内的区域(即用例的活动区域)则抽象表示系统能够实现的所有基本功能。
在一个基本功能(集)已经实现的系统中,系统运转的大致过程是:
外部角色先初始化用例,然后用例执行其所代表的功能,执行完后用例便给角色返回一些值,这个值可以是角色需要的来自系统中的任何东西。
UML:
是一种标准的图形化建模语言,它是面向对象分析与设计的一种标准表示;
它不是一种可视化的程序设计语言而是一种可视化的建模语言;
不是工具或知识库的规格说明而是一种建模语言规格说明是一种表示的标准;
不是过程也不是方法但允许任何一种过程和方法使用它。
UML模型
4、系统目标
对于典型的数据库管理系统,尤其是对像论坛这样的数据流量特别大的网络管理系统,必须要满足使用方便、操作灵活等设计需求。
本系统在设计时应满足以下几个目标:
1.采用人机对话的操作方式,界面设计美观友好,信息查看灵活、方便、快捷、准确,数据存储安全可靠。
2.全面展示系统内所有分类的帖子,并进行分页显示。
3.为用户提供一个方便、快捷的主题信息查看功能。
4.实现在线发表帖子。
5.提供登录模块,主要用开管理员登录系统和发表帖子时留下发表者的信息。
6.用户随时都可以查看自己发表的帖子。
7.对用户输入的数据,系统进行严格的数据检验,尽可能排除人为的错误。
8.系统最大限度地实现了易维护性和易操作性。
9.系统运行稳定安全可靠。
系统设计:
总体结构图如下
系统行为图
(一)状态图:
1、前台业务状态图:
2、帖子管理状态图:
(二)活动图:
2、后台业务活动图:
系统组件图:
六、系统配置图:
七、系统类图:
三:
用户模块
用户功能实现
(1).用户的登录
(2).用户的注册(3).用户的查找(4).用户资料的修改
会员登入
根据系统首页的链接,将表格中“会员登录”项建立链接到登录页面,登录页面login.htm界面设计同样采用表单,内部嵌入表格的形式,包含“帐号”和“密码”两项内容,用户填写完毕单击“确定”按钮即进入登录信息处理页面login.asp,如果用户填写错误可单击“重置”按钮进行重填。
信息接收后转入登录信息处理程序login.asp,根据要求编写代码实现,其中,用户名和密码均不能为空,且用户填写信息需与数据库中相应内容进行比较,其中任何一项内容填写错误均会有提示信息且要求返回重填。
只有用户填写的内容与数据库中内容进行比较无误后方可进入论坛主目录,主目录头会显示会员应有的权限,如:
浏览帖子、发表帖子、回复帖子、搜索帖子以及搜索帖子等。
如果单击登录的用户是游客,则剥夺其登录权限并给出提示。
代码如下:
<
bodybgcolor="
#c1f7d8"
>
<
%
setrstemp=server.CreateObject("
adodb.recordset"
dimstrname,strpassword,sql
strname=request.Form("
name"
strpassword=request.Form("
password"
sql="
select*fromuserwhereusername='
"
&
strname&
'
rstemp.opensql,conn,1,3
ifstrname="
then
response.write"
账号不能为空<
p>
/p>
%>
ahref="
javascript:
history.back()"
上一页<
/a>
response.end
endif
ifstrpassword="
then
密码不能为空<
ifrstemp.recordcount=1then
ifrstemp("
userpassword"
)=strpasswordthen
session("
)=strname
response.redirect"
user.htm"
else
密码错误请重新输入<
账号错误请重新输入<
rstemp.close
setrstemp=nothing
/body>
浏览帖子
任何访问论坛的用户,均可以浏览帖子简要信息表,单击标题可以浏览帖子详细内容及所有回复内容。
相关代码及界面如下:
Strings_id="
;
声明变量用来接收从数据库中获得对应值:
Strings_hit="
Strings_renum="
Strings_subject="
Strings_context="
Strings_date1="
Strings_reid="
BBS论坛首页界面显示主帖子界面设计代码如下:
tr>
tdcolspan="
6"
nbsp;
/td>
/tr>
tdwidth="
10%"
点击次数<
回复次数<
15%"
主题<
35%"
内容<
25%"
发言日期<
判断数据库中的记录值是否为空,若不为空,将从数据库中获得的值赋给前面声明的变量,代码如下:
rs=stmt.executeQuery("
select*frombbs110wherereID=0orderbyiddesc"
);
if(!
rs.isLast()){
rs.next();
s_id=(rs.getString("
id"
)!
=null?
rs.getString("
):
s_hit=(rs.getString("
hit_amount"
s_renum=(rs.getString("
reNum"
s_subject=(rs.getString("
subject"
s_context=(rs.getString("
context"
s_date1=(rs.getString("
date1"
s_reid=(rs.getString("
reID"
通过JSP表达式显示,代码如下:
td>
%=s_hit%>
%=s_renum%>
td>
ahref="
part.jsp?
id=<
%=s_id%>
%=s_subject%>
%=s_context%>
%=s_date1%>
%}%>
发表帖子
发表帖子模块的实现过程如下:
首先创建一个用来封装根贴信息的ActionForm,该ActionForm继承ValidatorForm类,并覆盖了Validate()方法,其关键代码如下:
publicclassBbsFormextendsValidatorForm{
privateStringbbsId;
privateStringbbsBoardID;
privateStringbbsTitle;
privateStringbbsCont
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 基于 Web BBS 系统 试验报告
![提示](https://static.bdocx.com/images/bang_tan.gif)