BBS论坛系统uml建模

BBS论坛系统uml建模
BBS论坛系统uml建模

沈阳工程学院

课程设计

设计题目: BBS论坛系统

系别信息工程系班级软件本121

项目组长聂恒阳(19)

项目组员王益峰(16)张朋(21)杨东明(08)

刘明洋(10)

指导教师朱克敌、姜柳职称副教授

起止日期:2014 年12月10日起——至2015 年01月01日止

沈阳工程学院

课程设计任务书课程设计题目: BBS论坛系统

系别信息工程系班级软件本121 项目组长聂恒阳(19)

项目组员王益峰(16)张朋(21)杨东明(08)

刘明洋(10)

指导教师朱克敌、姜柳职称副教授

课程设计进行地点:实训F 任务下达时间:2014 年12 月05 日

起止日期:2009 年12月20日起——至2015年01月01日止教研室主任姜柳2014年12月14日批准

一、课程设计的原始资料及依据

项目开发与管理课程设计的前驱条件是要求学生们必须具备“软件工程”和“程序设计”等计算机专业理论知识,本次设计正是在符合这种前提条件下实施。

首先成立项目小组并推举有责任心的学生担当项目组长,全组成员在组长的带领下,针对“BBS论坛系统”,按着软件生命周期和项目管理的要求,运用面向对象的分析和设计方法,采用目前最为流行的面向对象的设计工具UML,对所选系统进行软件需求分析、功能设计,然后根据能力和功能进行任务分配。根据分析结果进行系统用例图、类图、顺序图、协作图、活动图等项目设计,从而完成一个较完整的项目开发与管理实践。

二、课程设计主要内容及要求

首先要求参加课程设计的学生们要重新认真复习软件工程及项目管理的理论知识和技能,熟练掌握UML设计工具,之后学生们能够灵活地把所学理论知识和技能应用于该项目的开发实践中去,从而有目的地加深理解项目开发与管理的深刻含义。具体要求如下:1.成立项目开发小组并选举项目组长。

2.根据设计要求小组选定设计题目。

3.每天要求项目组长要至少组织召开一次会议,总结、汇报和布置任务。

4.每次会议要求保留会议记录并存档。

5.发挥团队合作精神共同完成如下内容:

⑴软件需求分析

⑵用例图

⑶类图

⑷顺序图

⑸协作图

⑹活动图

⑺状态图

6.组长要根据能力合理地分配任务,要求每个组员都能积极参与并完成如下内容:

⑴参与需求分析

⑵各种设计视图

⑶个人总结

7.组长要对每个组员进行公正客观地评价。

8.要求项目组共同对课程设计成果进行装订成册。

三、对课程设计说明书撰写内容、格式、字数的要求

1.课程设计说明书是体现和总结课程设计成果的载体,要求认真按着要求进行完成。

2.每个项目小组撰写完成并提交一份课程设计说明书。

3.所有文档撰写格式均需要严格按着给定参考模板进行。

4.模板中的文字字体、大小、格式、页眉页脚等各种设置不可随意改变。

5.课程设计说明书严格按着装订顺序进行装订。

6.课程设计说明书装订顺序为:

⑴课程设计封面(1份)

⑵任务书(1份)

⑶成绩评定表(1份)

⑷装订目录

⑸课程设计报告书(1份)

报告封面

目录

第1章系统需求分析

第2章用例图设计建模

第3章类图设计建模

第4章顺序图设计建模

第5章协作图设计建模

第6章活动图设计建模

第7章状态图设计建模

第8章配置图设计建模

致谢

参考文献

附录一:项目开发体制图

附录二:开发时间计划表

⑹会议记录(要求每天至少1份)

⑺项目个人总结(每人1份)

四、设计完成后应提交成果的种类、数量、质量等方面的要求

1.课程设计报告书(1份)

2.开发时间计划表(1份)

3.会议记录(每天至少1份)

4.个人总结(每人1份)

五、时间进度安排

六、主要参考资料(文献)

[1] J2EE项目实训---UML及设计模式杨少波清华大学出版社

[2] UML基础与ROSE建模案例吴建人民邮电出版社

[3] UML基础与ROSE建模教程蔡敏人民邮电出版社

沈阳工程学院

项目开发管理课程设计成绩评定表

系(部):信息工程系班级:软件本121 组长:聂恒阳(19)学生姓名:王益峰(16)张朋(21)杨东明(08)刘明洋(10)

装订目录

1.封面

2.任务书

3.成绩评定表

4.装订目录

5.课程设计报告书

6.会议记录

7.项目个人总结

项目开发管理课程设计

系统分析设计报告

题目: BBS论坛系统

班级:软件本121 组长:聂恒阳(19)组员:王益峰(16)张朋(21)杨东明(08)刘明洋(10)

目录

第1章系统需求分析 (1)

1.1需求分析 (1)

1.2.1 前台基本业务模块 (2)

1.2.2 后台管理模块 (3)

1.2.3会员服务模块 (3)

第2章用例图设计建模 (5)

2.1 用例图简介 (5)

2.2 本系统用例图 (5)

2.1.1 游客浏览帖子的用例图 (5)

2.1.2 管理员用例图 (6)

2.1.3 会员用例图 (6)

第3章类图设计建模 (7)

3.1 各个参与者类图 (7)

3.2 各类之间的关系 (8)

第4章顺序图设计建模 (10)

4.1 顺序图简介 (10)

4.2本系统顺序图 (10)

4.2.1游客注册的顺序图 (10)

4.2.2 论坛管理员管理会员的顺序图 (11)

4.2.3 论坛管理员管理论坛分类的顺序图 (11)

4.2.4 论坛管理员管理帖子的顺序图 (12)

4.2.5 会员发帖回帖的顺序图 (12)

第5章协作图设计建模 (13)

5.1 协作图简介 (13)

5.2 本系统协作图 (13)

5.2.1 游客浏览帖子的协作图 (13)

5.2.2 游客注册会员的协作图 (14)

5.2.3 会员发帖回帖的协作图 (14)

5.2.4 管理员管理会员的协作图 (15)

第6章活动图设计建模 (16)

6.1活动图简介 (16)

6.2本系统活动图 (16)

第7章状态图设计建模 (18)

7.1状态图简介 (18)

7.2本系统状态图 (18)

第8章配置图设计建模 (20)

致谢 (21)

参考文献 (22)

附录一: (23)

附录二:............................................................................................................................. 错误!未定义书签。

第1章系统需求分析

BBS论坛系统是一个专业的知识型论坛网站,论坛系统的主要功能有如下所示。首页、登录、我的帖子、精华帖子、进入后台、注册、注销,为各类人士提供交流的平台。

1.1需求分析

系统开发的总目标是提供一个供用户交流的平台,为广大用户提供交流经验、探讨问题的社区。

一般来说BBS论坛大致分为以下流程:用户登陆进入论坛(一半为游客,有时候注册为会员),就某个话题(贴字的主题)展开讨论。通过发帖功能发布新的话题;通过回帖功能回复已有的话题;通过搜索功能查找已有的话题。管理员通过功能创建、编辑、删除论坛的板块;管理注册的用户;管理帖子。

1.2系统功能需求

(1)游客注册

提供新会员注册功能,包括提供录入信息的界面,检查注册信息的有效性,并将注册会员信息保存在对应数据库的数据表中。

会员发帖回帖

提供会员发表文章,回复文章的功能,未注册用户不允许使用该功能浏览帖子

对注册会员和胃注册会员提供文章查询以及阅读的功能,即通过对应文章标题信息,查看查询详细内容及发表文章的超级链接

会员管理

当网上论坛的回忆完成注册后,系统会在数据库中加入会员的资料。包括会员名称,会员密码,会员Email等相关信息资料。同时,按照会员的不同身份,将特殊会员设置为版主,使他具备删除被讨论区中对应文章等特殊操作的权利。管理者可以依据数据库中注册的特殊身份登录到论坛后台对会员信息进行管理。

板块(论坛分类)管理

根据不同的讨论内容,管理员将整个讨论区分为不同的区域,会员可以选择进入不同的讨论区,允许管理者对分类进行调整,同时提供不同讨论区中包括文章等的统计功能。

贴子管理

管理员和版主都可以对会员发表的帖子进行提前、置顶和删除等操作。

系统总体功能模块图如下:

图1.1系统功能模块

1.2.1 前台基本业务模块

用户使用模块主要完成用户申请注册BBS论坛会员身份,会员使用论坛各项功能。

前台基本业务模块包含如图1.2所示的几个方面。

图1.2:前台基本业务模块图

(1)注册会员

提供新会员注册功能,包括录入信息的节目,检查注册信息的有效性,并将注册会员信息存入对应数据库的数据表中。

(2)登录系统

提供会员登录论坛功能,要想针对谋篇帖子发言,或发表帖子,必须是登陆用户才可以操作。由于论坛中某些操作只有会员才可以执行,所以必须先登录系统。

(3)浏览帖子

对注册会员和未注册会员提供文章查询以及阅读的功能,即提供对应文章标题信息,以及查看详细内容及回复文章的超链接

(4)会员发表帖子

会员可以针对某个感兴趣的活体发表自己独到的见解。未注册用户无此项功能

(5)回复帖子

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

1.2.2 后台管理模块

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

图三:后台管理模块图

(1)板块管理

根据不同的话题,管理员可以将每个话题分成不同的种类板块,然后对起进行管理。管理员可以删除认为不必要的板块话题;管理员可以修改板块的主题,类型和数量等;管理员还可以添加新的板块

(2)帖子管理

管理员可以对会员发表的帖子进行管理。管理员可以删除内容反动火不艰苦的帖子,可以指定帖子。还可以设置精华帖,删除、提前帖子等操作

(3)会员管理

管理员可以对会员进行管理。可以删除会员,收回他的会员号;修改会员的基本信息,修改会员的积分,排行等。

1.2.3会员服务模块

会员服务模块包含如图1.4所示的几个方面。

图1.4 观众意见反馈模块

⑴接受意见

接受意见主要负责对会员所反映来的意见进行接受到管理中心。

⑵筛选意见

筛选意见主要负责对会员反映的意见进行筛选,选出较好的意见。

⑶上报意见

上报意见主要负责将会员的正确意见上报给维护管理部门。

⑷奖励会员

上级管理部门将意见采纳后,对被采纳意见的会员进行奖励。

第2章用例图设计建模

2.1 用例图简介

用例图是从用户的角度来描述系统功能的,使用用例图可以更好的描述系统应具备的功能。通过分析可知,新闻管理系统的参与者有:后台用户管理员、后台新闻管理员、后台网络管理员和前台的浏览者,12个用例分图。

用例图(Use Case Diagram)是由软件需求分析到最终实现的第一步,它描述人们如何使用一个系统。用例视图显示谁是相关的用户、用户希望系统提供什么样的服务,以及用户需要为系统提供的服务,以便使系统的用户更容易理解这些元素的用途,也便于软件开发人员最终实现这些元素。用例图在各种开发活动中被广泛的应用,但是它最常用来描述系统及子系统。

当用例视图在外部用户出现以前出现时,它捕获到系统、子系统或类的行为。它将系统功能划分成对参与者(即系统的理想用户)有用的需求。而交互部分被称作用例。用例使用系统与一个或者多个参与者之间的一系列消息来描述系统中的交互。

用例图包含六个元素,分别是:参与者(Actor)、用例(Use Case)、关联关系(Association)、包含关系(Include)、扩展关系(Extend)以及泛化关系(Generalization)。

用例图可一个包含注释和约束,还可一个包含包,用于将模型中的元素组合成更大的模块。有时,可以将用例的实例引入到图中。用例图模型如下所示,参与者用人形图标来标识,用例用椭圆来表示,连线表示它们之间的关系。

2.2 本系统用例图

2.1.1 游客浏览帖子的用例图

游客浏览帖子的用例图如图1所示,对于未登录的游客,只能浏览帖子,没有发帖回复等权限,可以注册成为会员。

图2.1 游客浏览帖子的用例图

2.1.2 管理员用例图

管理员不仅可以做游客和会员的所有操作,还拥有自己的用例,管理员操作后台的用例图如图2.2所示。管理员可进行版面管理,如设定权限、删除帖子、置顶帖子等操作,管理员可对普通会员进行管理,如封禁账号,解除封禁,设置等级等,还可以设置论坛的界面风格,屏蔽一些关键字,进行日常的维护备份等。

系统管理员用例图如下所示:

图2.2系统管理员用例图

2.1.3 会员用例图

会员在论坛中的用例图如图2所示。会员是论坛系统的主要参与者,在会员进行登录后,可进行浏览、发表、编辑、删除、回复帖子,查看个人信息,搜索帖子等一系列的操作。

图2.3会员用例图

第3章类图设计建模

3.1 各个参与者类图

系统中参与者有4个,分别是未注册用户、注册用户、版主和系统管理员。其中把未注册用户、注册用户和版主归为使用者,所以该系统中和参与者相关的类的类图如下图所示:

图3.1 各个参与者类图

类图(class diagram)描述了模型的静态结构,包括模型中的类的类的内部结构以及于其他类的联系,在结构化设计一个系统的时候类图可以让我们的思路更加清晰。

一个类与其他的类多见的联系有:

1.一般化联系

2.关联联系

3.聚合联系

4.组合联系(合成联系)

5.依赖联系

其中,聚合联系合成联系又属于关联联系。

一般化联系表现是与类之间是(is a)的联系。也就是类与类之间的继承,接口于接口之间的继承或者是对一个接口的实现。表示要领是用一个空心箭头+实线,箭头指向父类。

或用空心肩头加虚线(如果富父类是接口的话)

关联系表现为类与类之间的(has a)联系。它使一个类知道另一个类的属性和要领。关联联系表示的是类与类之间的持久联系,这种联系一般是表示一种业务逻辑上的联系,须要保存到数据库中的。

聚合联系是关联的一种,是一种强关联联系。聚合联系还体现了一种整体与个体的联系。

依赖联系是表现为类与类之间的一种(use a)的联系。一个类用到了另一个类,为了完成一特定的操作。但是类与类之间不存在业务逻辑上的联系。依赖联系是针对于程序来说的。依赖联系体现在程序中主要是些局部变量、要领参数、或对一个类要领的调用

3.2 各类之间的关系

类不是单独存在的,各个类之间的存在着一定得联系。该BBS论坛系统中主要类之间的关系如下图所示:

图3.2 各个类之间关系图

系统中其他的类:

图3.3:系统中其他的类图

(a)bbs类表示论坛中发表的帖子类。此类的属性有帖子编号(bbsid)、板块编号(boardid)、父贴编号(parentid)、跟帖数(child)、发表人姓名(username)、发表人E-mail(usermail)、发表人IP地址(userip)、发表人表情(expression0、签名(usersign0、文章的主题(bbstopic)。包含的方法有增加、删除、更改帖子等操作。

(b)bbscom类是设置分页显示的类。属性包括分页数(pagesCurrent)、下一页(pagesNext)、最后一页(pagesLast)。该类的功能主要是分页显示得到的数据列表。包含的方法有向上、向下翻页,设置页码等。

(c)bbsboard类表示板块信息的类。它的属性主要有板块编号(boardid)、板块名称(boardname)、板块中的版主称呼(boardmaster)、版主密码(masterpwd0、版主格言(masterword)、版主E-mail(masteremail)、板块点击率(boardhits)、板块主题数(boardtopics)。包含的方法有检查版主信息,删除、排列板块等。

(d)bbsreg类是跟数据库连接相关的类。属性有jdbc驱动(sDBDriver)、连接(conn)、结果集(rs)。该类是专门为数据库设计的,其中有一个执行SQL”executeQuery()”的方法。

第4章顺序图设计建模

4.1 顺序图简介

顺序图显示具体用例(或者是用例的一部分)的详细流程。它几乎是自描述的,并且显示了流程中不同对象之间的调用关系,同时还可以很详细地显示对不同对象的不同调用。

顺序图有两个维度:垂直维度以发生的时间顺序显示消息/调用的序列;水平维度显示消息被发送到的对象实例。

顺序图的绘制非常简单。横跨图的顶部,每个框表示每个类的实例(对象)。在框中,类实例名称和类名称之间用空格/冒号/空格来分隔,例如,myReportGenerator : ReportGenerator。如果某个类实例向另一个类实例发送一条消息,则绘制一条具有指向接收类实例的开箭头的连线,并把消息/方法的名称放在连线上面。对于某些特别重要的消息,您可以绘制一条具有指向发起类实例的开箭头的虚线,将返回值标注在虚线上。

阅读顺序图也非常简单。从左上角启动顺序的"驱动"类实例开始,然后顺着每条消息往下阅读。

4.2本系统顺序图

4.2.1游客注册的顺序图

对于游客,只能进行浏览帖子以及注册操作。用户注册时,系统会要求游客输入相关注册信息并对这些信息是否为合法进行判断,之后返回判断结果。游客确认注册信息后注册模块将向会员信息数据库提交资料,数据库对信息进行保存后会返回注册成功的提示。

⑴游客注册的顺序图如图4.1所示。

图4.1游客注册的顺序图

相关主题
相关文档
最新文档