基于uml的小型论坛系统建模.doc
- 文档编号:153871
- 上传时间:2022-10-04
- 格式:DOC
- 页数:14
- 大小:673KB
基于uml的小型论坛系统建模.doc
《基于uml的小型论坛系统建模.doc》由会员分享,可在线阅读,更多相关《基于uml的小型论坛系统建模.doc(14页珍藏版)》请在冰豆网上搜索。
成绩
课程设计报告
题目小型论坛系统
课程名称软件系统分析与建模课程设计
院部名称信息技术学院
专业软件工程
班级
学生姓名
学号
课程设计地点
课程设计学时
指导教师
【注:
根据课程设计大纲第四项具体要求撰写课程设计报告】
目录
一、课程设计目的 3
二、课程设计要求 3
三、课程设计过程描述 3
1、 设计背景 3
2、 产品的简要需求描述 3
3、 分析与建模过程 4
3.1需求建模原理 4
3.2建模过程 5
3.3类图 11
3.4活动图 12
四、课程设计结果分析 14
一、课程设计目的
本课程设计结合统一建模语言UML和项目案例,使学生深入理解以面向对象方法为主线的软件工程技术的精髓和实质,系统了解并掌握面向对象分析与设计等相关软件工程领域的关键技术,通过以团队方式进行的项目实践环节,培养学生的软件开发实践和项目组织的初步经验、创新意识和团队精神。
二、课程设计要求
1)给出需求的简易描述;
2)完成需求建模;
3)完成系统静态及动态建模工作;
4)完成系统设计工作报告的撰写。
三、课程设计过程描述
1、设计背景
随着Internet技术的快速发展,人与人之间交流方式逐渐增多。
网络视频、网络聊天、博客已经成为人们彼此沟通、交流信息的主要方式。
此外,为了方便人们在某一专业领域探讨问题和发表意见,Internet上还出现了在线论坛。
在论坛上,人们可以对某一领域提出自己遇到的问题,即发表某一主题,随后,论坛上的其他人会根据自己的学识、经验发表意见或提出问题的方法。
开发本BBS论坛系统的目的是提供一个供用户交流的平台,为广大用户提供交流经验、探讨问题的网上社区。
2、产品的简要需求描述
对于用户来说,小型论坛系统最基本的功能应该有三个:
(1)发帖:
论坛是为了相互讨论话题而产生的,发表帖子就是表达自己的看法,与他人进行讨论,因此发帖时论坛的首要功能。
(2)回帖:
与发帖相对应,如果想发表自己的意见,参与讨论,那就要回复帖子。
(3)浏览帖子:
发表了帖子就是要给人看的。
除了以上基本功能,要是论坛能够完整,还需要其他扩展功能:
(1)注册登录:
有了注册登录后,可以明确地区分不同的用户,也方便用户之间的互相交流。
(2)编辑帖子:
注册用户在需要修改更新自己发表帖子的内容时,就引出了编辑帖子的扩展,用于给用户更新自己发表帖子的内容。
对于管理员来说,可以任意编辑帖子的内容。
(3)转移帖子:
论坛是有明确板块划分的,如果某内容不属于所在板块的相关话题,那么管理员就可以将该内容转移到所属话题的板块中去。
(4)删除帖子:
如果用户发表了不符合论坛规则的帖子,则需要管理员删除这些帖子。
(5)搜索帖子:
论坛中的帖子很多、很杂,有了搜索帖子的功能之后,用户就可以从大量的帖子中找到符合要求的帖子。
(6)锁定帖子:
管理员有时候不希望用户对某些帖子进行发表或回复,这就需要锁定贴子的功能。
(7)分版块浏览帖子:
这个功能是在论坛规模慢慢扩大后体现出来的。
随着帖子数量的增加,帖子的内容会变得五花八门,将讨论话题相同的帖子放在一起,分成不同的版块,这样用户就可以分版块浏览自己感兴趣的帖子了。
(8)管理版面:
论坛版块需要先被创建,才能被使用,管理员可以对板块进行修改、删除等操作,这些是管理员才可以操作的扩展功能。
(9)管理会员:
管理员可以对注册该论坛的用户进行管理。
管理员可以添加、修改、删除以及赋予用户某种权限等操作,这个扩展功能可以对用户进行很好的管理。
3、分析与建模过程
3.1需求建模原理
UML是一种功能强大的、面向对象的可视化系统分析的建模语言,它采用一整套成熟的建模技术,广泛地适用于各个应用领域。
它的各个模型可以帮助开发人员更好地理解业务流程,建立更可靠、更完善的系统模型。
从而使用户和开发人员对问题的描述达到相同的理解,以减少语义差异,保障分析的正确性。
3.2建模过程
3.2.1确定参与者
作为一个论坛,肯定有浏览者,即游客。
要想进一步使用论坛的相关功能,比如发帖、回帖,就必须注册为会员。
论坛系统需要有人来维护,设置相关信息,需要有一个系统管理员。
3.2.2确定用例
用例是系统参与者与系统在交互过程中所需要完成的事务,识别用例最好的方法就是从系统的参与者着手,考虑每个参与者是怎么使用系统的。
根据系统的需求分析,可以得到如下用例图。
(1)游客浏览帖子的用例图如图1所示,对于未登录的游客,只能浏览帖子,没有发帖回复等权限,可以注册成为会员。
图1游客用例图
(2)会员在论坛中的用例图如图2所示。
会员是论坛系统的主要参与者,在会员进行登录后,可进行浏览、发表、编辑、删除、回复帖子,查看个人信息,搜索帖子等一系列的操作。
图2会员用例图
(3)管理员不仅可以做游客和会员的所有操作,还拥有自己的用例,管理员操作后台的用例图如图3所示。
管理员可进行版面管理,如设定权限、删除帖子、置顶帖子等操作,管理员可对普通会员进行管理,如封禁账号,解除封禁,设置等级等,还可以设置论坛的界面风格,屏蔽一些关键字,进行日常的维护备份等。
图3管理员用例图
3.2.3系统的时序图
时序图描述了对象之间传递消息的时间顺序,用来表示用例中的行为顺序。
当执行一个用力行为时,时序图中的每一条消息对应了一个类操作或状态机中引起换行的触发事件。
在论坛系统中,每个用例都可以建立一个时序图,将用例执行中各个参与对象之间的消息传递过程表现出来。
(1)游客浏览帖子及注册时序图
对于游客,只能进行浏览帖子以及注册操作。
用户注册时,系统会要求游客输入相关注册信息并对这些信息是否为合法进行判断,之后返回判断结果。
游客确认注册信息后注册模块将向会员信息数据库提交资料,数据库对信息进行保存后会返回注册成功的提示。
图4游客浏览帖子时序图
图5游客注册时序图
(2)会员发帖回帖时序图
图6会员发帖回帖时序图
从图中可以看出,首先会员被要求输入注册时获得的用户名和密码,在这个过程中,系统会验证用户的合法性。
如果合法,会员就可以登录到论坛做自己想做的事情。
会员在浏览帖子时,可以对自己感兴趣的话题发表意见(发帖),也可以对他人发表的文章发表评论(回帖)。
其中浏览帖子和发帖回帖是循环执行的。
(3)管理员管理会员时序图
图7管理员管理会员时序图
管理员管理会员信息时,首先被要求输入账号和密码。
在这个过程中,系统会验证合法性。
如果合法,管理员就可以登录到论坛做自己想做的事情。
管理会员信息时,要输入指定的会员id,会员管理模块会显示会员的相关操作信息,管理员对会员信息进行增删改等操作后提交至操作模块,由操作模块更新数据库,更新成功后逐级进行操作成功的提示。
3.2.4系统的协作图
协作图是除时序图之外另一种表示交互的方法。
与时序图所描述的随着时间交互的各种信息不同,协作图描述的是和对象结构相关的信息。
协作图的用途是表示类操作的实现。
协作图可以说明类操作中用到的参数、局部变量以及操作中的永久链。
当实现一个行为时,消息编号对应了程序嵌套的调用结构和信号传递过程。
(1)游客浏览帖子的协作图
图8游客浏览帖子的协作图
(2)游客注册会员的协作图
图9游客注册会员的协作图
游客注册会员的协作图由注册模块和会员信息数据库相互协作。
(3)会员发帖回帖的协作图
图10会员发帖回帖的协作图
会员发帖回帖的协作图由登录注册模块、浏览帖子和发帖回帖模块三个对象相互协作。
(4)管理员管理会员的协作图
图11管理员管理会员的协作图
管理员管理会员的协作图由登录模块、会员管理模块、操作模块和数据库模块四个对象相互协作。
3.3类图
图12系统参与者相关类图
user类是游客、会员的总称,包含的属性有用户编号(userid)、用户名(username)、用户密码(password)、用户性别(usersex)、用户注册邮箱(usermail)等。
包含的方法有注册会员,设置用户名、性别、密码,改变密码等。
admin类是系统管理员类,包括的属性有管理员ID(adminid)、管理员账号(adminname)、管理员密码(adminpwd)。
包含的方法有获得用户的名字,用户的密码等。
图13系统其他的类图
bbs类表示论坛中发表的帖子类。
此类的属性有帖子编号(bbsid)、板块编号(boardid)、父贴编号(parentid)、跟帖数(child)、发帖人姓名(username)、文章的主题(bbstopic)、点击率(bbshits)。
包含的方法有增加、删除、更改帖子等操作。
bbsboard类表示板块信息的类。
它的属性主要有板块编号(boardid)、板块名称(boardname)、板块点击率(boardhits)、板块主题数(boardtopics)。
包含的方法有检查版主信息,删除、排列板块等。
3.4活动图
在本论坛系统中,系统的活动图分为前台和后台。
3.4.1系统前台的活动图
图14系统前台的活动图
由图可以看出,游客只能浏览帖子,其他活动对游客不开放。
只有注册为会员才拥有发帖回帖、编辑删除帖子等功能。
3.4.2系统后台的活动图
图15系统后台的活动图
由图可以看出,管理员对版面管理、风格管理、会员管理、普通管理等4大模块进行活动管理,每一个模块又包含若干小功能。
四、课程设计结果分析
开始我犹豫选择什么题目,最终决定做小型论坛系统,对于论坛我们经常见到,但是真正让我们去完成对它的创建则是一个很大的挑战。
我进行了需求分析,它需要什么样的功能和对应的模块,按照自己的实力选择了能够实现的功能。
经过几周的努力,终于完成了基于UML的小型论坛系统分析与建模。
UML是面向对象开发通用的图形化建模语言,它定义良好、易于表达、功能强大且普遍适用。
面向对象的分析主要在加强对问题空间和系统任务的理解、改进各方交流、与需求保持一致和支持软件重用等几个方面表现出很好的能力。
利用这一技术,本系统实现了一个论坛所需的基本功能,可以进行一些常用操作。
游客可以进行帖子浏览,注册用户可以实现发帖、回复、修改等功能,管理员可以进行帖子管理、用户管理、权限管理、版面管理、日常运行为维护等。
当然小型论坛系统也存在很多不足的地方,比如用户可使用功能不够多,在浏览时不能进行排序筛选,系统设计不够完善,安全性低等。
希望在今后的学习中,能够逐步的进行改进。
在这次课程设计中,关于UML的概念以前比较模糊的地方,在实际操作中,变得更加清楚了,对astah的UML功能运用的更加熟练。
使我对UML建模的思想有了更进一步的理解,在以后的学习中,还将不断的学习UML的理论知识。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 uml 小型 论坛 系统 建模
![提示](https://static.bdocx.com/images/bang_tan.gif)