2024年4月19日发(作者:)

作品名称: BBS

软件工程实验报告

论坛系统

学院:信息学院

专业:计算机科学与技术

报告人姓名:XX

学号:XXXXX

一、BBS论坛系统的需求分析

1.1 系统的功能需求

一个基本的BBS论坛,可以大致分为以下流程:用户登录进入论坛(一般为

游客,有时还要注册为会员),就某个话题(帖字的主题)展开讨论。通过发贴

功能发布新的话题;通过回帖功能回复已有的话题;通过搜索功能查找已有的话

题。管理员通过管理功能创建、编辑、删除论坛的版块;管理注册的用户;管理

帖子。

这样的流程决定了BBS论坛系统的需求:

(1)会员注册

提供新会员注册功能,包括提供录入信息的界面,检查注册信息的有效性,

并将注册会员的信息保存在对应数据库的数据表中。

(2)发表帖子

提供会员发表帖子的功能,未注册的用户不允许使用该功能。

3帖子查询

对注册会员和未注册会员提供文章查询以及阅读的功能,即提供对应文章标

题信息,以及查看详细内容及回复文章的超链接。

(4)会员管理

当网上论坛的会员完成注册后,系统会在数据库中加入会员的资料。包括会

员名称、会员密码、会员E-mail等相关信息资料。同时,按照会员的不同身份,

将特殊会议按设置为版主,使他具备删除本讨论区对应文章等特殊操作的权利。

管理员可以依据数据库中注册的特殊身份登录到论坛后对会员信息进行管理。

(5)论坛分类管理

根据不同的讨论内容,管理员将整个讨论区划分成不同的区域,会员可以选

择进入不同的讨论区,允许管理者对分类进行调整,同时提供不同讨论区中包括

文章数量等的统计功能。

(6)帖子管理

管理员和版主可以对会员发表的帖子进行转移、置顶、修改和删除,设置精

华帖,控制帖子的点击率等操作。

系统总体功能需求框架图如下图所示:

1.2 前台基本业务模块

前台基本业务模块包含下图所示的几个方面:

(1)会员注册

提供新会员注册功能,包括提供录入信息的界面,检查注册信息的有效性,并将

注册会员的信息保存在对应数据库的数据表中。

(2)登录系统

提供会员的登录功能。要想针对某篇帖子发言,或发表帖子,必须是登录用户才

可以操作。由于论坛中某些操作只有会员才可以执行

(3)浏览帖子

对注册会员和未注册会员提供文章查询功能及阅读功能,即提供对应文章的标题

信息以及查看详细内容及回复文章的超链接。

(4)发表帖子

提供会员发表帖子的功能,未注册的用户无此项功能。

(5)回复帖子

注册会员和未注册会员可以对某一话题展开讨论,发表意见,并给出回复。

1.3 后台管理模块

后台管理模块主要包括对整个BBS系统的设置管理,

包含下图所示的几个

方面:

(1)版块管理

根据不同话题,管理员可将每个话题分成不同的版块,然后对其进行管理。

管理员可以删除不必要的版块话题;可以修改某个版块的主题名、类型和数量等;

可以添加新的版块。

(2)帖子管理

管理员可以对会员发布的帖子进行管理。管理员可以删除内容反动或不健康

的帖子;可以顶置帖子。还可以设置精华帖,控制帖子的点击率等。

(3)会员管理

管理员可以对会员进行管理。可删除会员,收回他的会员号;修改会员的基

本信息,修改会员的积分,排行等。

二、BBS论坛系统的UML建模

2.1系统的用例图

用例图是指作为外部参与者的外部用户所能观察到的系统功能的模型图,整个

开发过程都是围绕需求阶段的用例进行的。

(1)确定参与者

根据分析得出该系统一共有4类参与者,分别是未注册用户,注册用户,版

主和论坛管理员。

(2)创建用例

根据项目的功能需求分析,系统可以分为以下几个用例,如下图所示:

(3)创建用例图

按照参与者的只能划分,论坛管理系统的用例图如下图所示:

相对会员管理和论坛分类管理而言,还可以进一步划分。管理员管理

会员和论坛种类种类的用例图如下图:

系统用户的用例图如下图:

2.2系统的时序图

时序图描述了对象之间传送消息的时间顺序,它可以用来表示用例中的行为顺

序。这里给出几个比较典型的时序图:

(1)会员发帖回帖时的时序图:

(2)论坛管理员管理会员时的时序图:

(3)论坛管理员管理论坛分类的时序图:

(4)论坛管理员管理帖子的时序图:

2.3系统的协作图

协作图是时序图之外另一种表示方法,主要用来表现系统的对象间时间和空间顺

序上的交互。下面将针对上面已有的时序图给出相应的协作图。

(1)会员发帖回帖时的协作图:

(2)论坛管理员管理会员时的协作图:

(3)论坛管理员管理论坛分类的协作图:

(4)论坛管理员管理帖子的协作图:

2.4系统的状态图

(1)前台业务模块的状态图:

(2)后台会员管理的状态图:

(3)后台论坛分类管理的状态图:

(4)后台帖子管理的状态图:

2.5系统的活动图

活动是某件时间正在进行的状态,既可以是实现现实生活中正在进行的某

一项工作,也可以是软件系统某个类对象的一个操作。

简单来说,一个用例就代表一个活动。BBS论坛系统大体按前台和后台来

介绍下该系统中的活动图。

(1)前台业务模块的活动图:

(1)后台业务的活动图:

三、BBS论坛系统中的类

3.1 类图的生成

(1)参与者相关的类

系统中参与者有4个,分别是未注册用户、注册用户、版主和系统管理员。其

中把未注册用户,注册用户和版主归为使用者,所以该系统中和参与者相关的类

类图如下图所示:

1、bbsuser是未注册用户、注册用户和版主的总称,包含的属性有用户编号

(userid),用户姓名(username),用户密码(usepassword),用户性别(usersex),

用户注册时间(dataandtime)等。

2、bbsadmin是系统管理员类,他拥有自己的属性,包括管理员ID,管理员账号

(adminname)、管理员密码(adminpwd)

(2)系统中其他的类:

(1)bbs类表示论坛中发表的帖子类。此类的属性有帖子编号(bbsid)、板块编

号(boardid)、跟帖数(child)、发表人姓名(username)、发表人IP地址(userip)、

发表人表情(expression)、签名(usersign)、文章主题(bbstopic)等。

(2)bbscom类是设置分页显示的类。属性包括分页数(pagesCurrent)、下一

页(pageNext)、最后一页(pageLast)。该类的功能主要是分页显示得到的数据

列表。

(3)bbsboard类表示板块信息的类。它的属性主要有板块编号(boardid)、板

块名称(boardname)、板块中的版主称呼(boardmaster)、版主密码(masterpwd)、

版主格言(masterword)、版主E-mail(masteremail)、板块点击率(boardhits)、

板块主题数(boardtopics)。

(4)bbsreg类是跟数据库连接相关的类。属性有jdbc驱动(sDBDriver)、连接

(conn)、结果集(rs)。该类是专门为数据库设计的,其中有一个执行SQL

“executeQuery()”的方法

3.2 各类之间的关系

类不是单独存在的,各个类之间存在着一定的联系。BBS论坛系统中主要类之

间的联系如下图所示:

一个版块可以发表很多帖子,所以板块和帖子之间是一对多的关系。每个帖

子都要用到分页显示的功能,而且分页功能是一样的,所以帖子和分页之间是多

对一得关系。

四、BBS论坛系统的配置和实现

4.1 系统的组件图

BBS论坛系统的组件图如下图所示,组成该系统Web应用程序的页面包括:浏览

帖子页面、发表帖子和回复帖子页面、登录页面、后台管理页面。

4.2 系统的配置图

配置图主要是用来说明如何配置系统的硬件和软件。BBS论坛系统的应用服务器

负担保存整个web应用程序,数据库则是负责数据管理。此外还有很多终端可作

为客户端访问网站。如下图所示:

实验总结:在本次实验学习中,通过一个简单的BBS论坛系统,经过

这一些步骤和方法,学习了解了各个模型的不同点和相互之间的联

系,了解了他们的转换和演化过程,同时熟悉了ROSE软件的使用,

感觉学到了不少知识。