BBS论坛系统UML建模讲课讲稿.docx
《BBS论坛系统UML建模讲课讲稿.docx》由会员分享,可在线阅读,更多相关《BBS论坛系统UML建模讲课讲稿.docx(28页珍藏版)》请在冰豆网上搜索。
BBS论坛系统UML建模讲课讲稿
根据调查资料分析:
大学生的消费购买能力还是有限的,为此DIY手工艺品的消费不能高,这才有广阔的市场。
小饰品店往往会给人零乱的感觉,采用开架陈列就会免掉这个麻烦。
“漂亮女生”像是个小超市,同一款商品色彩丰富地挂了几十个任你挑,拿上东西再到收银台付款。
这也符合女孩子精挑细选的天性,更保持了店堂长盛不衰的人气。
“碧芝”的成功归于他的唯一,这独一无二的物品就吸引了各种女性的眼光。
2、传统文化对大学生饰品消费的影响
(三)上海的文化对饰品市场的影响
(六)DIY手工艺品的“创作交流性”
PS:
消费者分析
如果顾客在消费中受到营业员的热情,主动而周到的服务,那就会有一种受到尊重的感觉,甚至会形成一种惠顾心理,经常会再次光顾,并为你介绍新的顾客群。
而且顾客的购买动机并非全是由需求而引起的,它会随环境心情而转变。
营销调研课题
新材料手工艺品。
目前,国际上传统的金银、仿金银制成饰品的销售在逐步下降,与此形成鲜明对比的是,数年以前兴起的崇尚然风格、追求个性的自制饰品--即根据自己的创意将各种材质的饰珠,用皮、布、金属等线材串出的品,正在各国的女性中大行其道。
软件建模与UML
实训报告
实训项目:
________________________
小组名称:
________________________
小组成员:
________________________
联系方式:
________________________
一、摘要
随着Internet技术的快速发展,人与人之间交流方式逐渐增多。
网络视频、网络聊天、博客已成为人们彼此沟通、交流信息的主要方式。
此外,为了方便人们在某一专业领域探讨问题和发表意见,Internet上还出现了在线论坛。
在论坛上,人们可以对某一领域提出自己遇到的问题,即发表某一主题,随后,论坛上的其他人会根据自己的学识、经验发表意见或提出问题的方法。
开发BBS论坛系统的目的是提供一个供用户交流的平台,为广大用户提供交流经验、探讨问题的网上社区。
因此,BBS论坛系统最基本的功能首先是发表主题,其次是其他人员根据主题发表自己的看法。
此外,为了记录主题的发表者和主题的回复者信息,系统还需要提供用户注册和登录的功能。
只有注册的用户登录后才能够发表和回复主题,浏览者(游客)只能浏览主题信息。
本论坛系统是基于是Struts1.2+SQLServer2000实现的,它具有使用方便、操作灵活、运行稳定、安全可靠等特点。
关键词 在线论坛,BBS,网上社区
二、BBS论坛系统的可行性分析
可行性分析是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。
可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。
2.1、技术可行性
技术上的可行性分析主要分析技术条件能否顺利完成开发工作,硬、软件能否满足开发者的需要等。
该BBS论坛管理系统采用了流行的JSP语言和当前新兴的Browser/Server(浏览器/服务器)模式进行开发。
三层的B/S体系结构具有许多传统Client/Server(客户机/服务器)体系结构不具备的优点,而且又紧密的结合了Internet/Intranet(国际互联网/企业内部互联网)技术,是技术发展的大势所趋,它把应用系统带入了一个崭新的发展时代。
数据库服务器选用SQLServer2000数据库,它能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。
它的灵活性、安全性和易用性为数据库编程提供了良好的条件。
因此,系统的软件开发平台已成熟可行。
硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台能满足此系统的需要。
2.2、经济可行性
主要是对项目的经济效益进行评估,本系统模拟的是提供一个供用户交流的平台,为广大用户提供交流经验、探讨问题的社区。
但实际只是用于个人的毕业设计,只是模拟,也不存在资金的流动,故在经济上是可行的。
2.3、社会可行性
随着Internet技术的快速发展,BBS论坛已成为人们彼此沟通、交流信息的主要方式。
在论坛上,人们可以对某一领域提出自己遇到的问题,随后,论坛上的其他人会根据自己的学识、经验发表意见或提出问题的方法。
BBS论坛接近了人们之间的距离,它早已成为人们网上生活的必备工具。
所以说BBS论坛对当今社会是相当重要的。
三、BBS论坛系统的需求分析
3.1、系统的目标设计
系统开发的总目标是提供一个供用户交流的平台,为广大用户提供交流经验、探讨问题的社区。
一般来说BBS论坛大致分为以下流程:
用户登陆进入论坛(一半为游客,有时候注册为会员),就某个话题(贴字的主题)展开讨论。
通过发帖功能发布新的话题;通过回帖功能回复已有的话题;通过搜索功能查找已有的话题。
管理员通过功能创建、编辑、删除论坛的板块;管理注册的用户;管理帖子。
3.2、系统的功能需求分析
(1)游客注册
提供新会员注册功能,包括提供录入信息的界面,检查注册信息的有效性,并将注册会员信息保存在对应数据库的数据表中。
(2)会员发帖回帖
提供会员发表文章,回复文章的功能,未注册用户不允许使用该功能
(3)浏览帖子
对注册会员和胃注册会员提供文章查询以及阅读的功能,即通过对应文章标题信息,查看查询详细内容及发表文章的超级链接
(4)会员管理
当网上论坛的回忆完成注册后,系统会在数据库中加入会员的资料。
包括会员名称,会员密码,会员Email等相关信息资料。
同时,按照会员的不同身份,将特殊会员设置为版主,使他具备删除被讨论区中对应文章等特殊操作的权利。
管理者可以依据数据库中注册的特殊身份登录到论坛后台对会员信息进行管理。
(5)板块(论坛分类)管理
根据不同的讨论内容,管理员将整个讨论区分为不同的区域,会员可以选择进入不同的讨论区,允许管理者对分类进行调整,同时提供不同讨论区中包括文章等的统计功能。
(6)贴子管理
管理员和版主都可以对会员发表的帖子进行提前、置顶和删除等操作。
系统总体功能模块图如下:
图一:
系统总体功能模块图
3.3、前台基本业务模块:
图二:
前台基本业务模块图
(1)注册会员
提供新会员注册功能,包括录入信息的节目,检查注册信息的有效性,并将注册会员信息存入对应数据库的数据表中。
(2)登录系统
提供会员登录论坛功能,要想针对谋篇帖子发言,或发表帖子,必须是登陆用户才可以操作。
由于论坛中某些操作只有会员才可以执行,所以必须先登录系统。
(3)浏览帖子
对注册会员和未注册会员提供文章查询以及阅读的功能,即提供对应文章标题信息,以及查看详细内容及回复文章的超链接
(4)会员发表帖子
会员可以针对某个感兴趣的活体发表自己独到的见解。
未注册用户无此项功能
(5)回复帖子
注册会员可以对某一话题展开讨论,发表意见,并给出回复。
3.4、后台管理模块
后台管理模块主要包括对整个BBS论云系统的设置管理,如下
图三:
后台管理模块图
(1)板块管理
根据不同的话题,管理员可以将每个话题分成不同的种类板块,然后对起进行管理。
管理员可以删除认为不必要的板块话题;管理员可以修改板块的主题,类型和数量等;管理员还可以添加新的板块
(2)帖子管理
管理员可以对会员发表的帖子进行管理。
管理员可以删除内容反动火不艰苦的帖子,可以指定帖子。
还可以设置精华帖,删除、提前帖子等操作
(3)会员管理
管理员可以对会员进行管理。
可以删除会员,收回他的会员号;修改会员的基本信息,修改会员的积分,排行等。
3.5、BBS论坛系统的流程图:
(1)前台流程图:
图四:
系统前台流程图
(2)后台流程图:
图五:
系统后台流程图
四、系统的UML建模设计
4.1、UML简介
UML是一种功能强大的、面向对象的可视化系统分析的建模语言,它采用一整套成熟
的建模技术,广泛地适用于各个应用领域。
它的各个模型可以帮助开发人员更好地理解业务
流程,建立更可靠、更完善的系统模型。
从而使用户和开发人员对问题的描述达到相同的理
解,以减少语义差异,保障分析的正确性。
4.2、该BBS论坛系统的用例分析
图六:
系统的用例图
从用例图中我们可以看出管理员、会员、游客之间对本系统所具有的用例。
管理员所包含的用例有:
(1)登录系统:
管理员可以通过登录该系统进行各项功能的操作
(2)管理论坛发帖:
包括帖子的增加、删除等
(3)版主管理:
可以对各板块版主的职务划定以及增、删、改等
(4)会员管理:
包括对会员的增加、删除、改变等
(5)BBS维护:
对整个BBS论坛系统功能、服务器稳定进行维护
会员包含的用例有:
(1)登录系统
(2)发帖:
发表自己个性的帖子
(3)查看发帖:
可以查看自己和其他会员发的帖子
(4)评论:
对帖子进行回复,发表自己的观点和看法
游客包含的用例图有:
(1)注册:
可以申请成为该论坛的会员
(2)查看发帖:
查看会员发表的帖子。
4.3、系统的顺序图
顺序图是显示对象之间交互的图,在该BBS论坛系统中,每个用例都可以建立一个时序图,将用例执行那个的各个参与的对象之间的消息传递过程表现出来。
主要含有以下几个重要的顺序图:
(1)会员发帖回帖的顺序图:
图七:
会员发帖回帖的顺序图
【说明】会员首先使用自己的账号和密码登录系统,登录模块将会把用户的的ID保存在系统的缓存中,并展现论坛的分类模块给会员。
会员此时可以按照兴趣进入不同的主题讨论区,查看主题文章,并发表新文章(需要ID检验)和回复新帖,还可以浏览其他类别的主题讨论区。
(2)论坛管理员管理会员的顺序图:
图八:
论坛管理员管理会员的顺序图
【说明】管理员在提交ID给会员管理模块后,可以对会员进行维护(添加、删除或修
改)。
管理员首先输入自己的账号和密码登录系统,此时会将管理员的ID保存在系统缓存
中并提交会员管理模块。
在操作会员的页面中,管理员会根据需要对每个会员进行增删等操
作,并将其信息提交给数据库。
数据库会对其进行相应的处理,并更新会员信息,至此管理
员管理会员操作成功。
(3)论坛管理员管理论坛分类的顺序图:
图九:
论坛管理员管理论坛分类的顺序图
【说明】管理员使用自己的账号和密码登录后,将管理员的ID保存在系统的缓存中并
提交给论坛类别管理模块。
在显示论坛类别管理的页面中,将显示处理类别的相关信息给管
理员,管理员在该页面中进行增删等操作后,提交操作的ID给数据库模块处理。
数据库模
块执行操作后更新结果,并提示更新成功。
最后提示处理成功信息给管理员。
(4)论坛管理员管理帖子的顺序图:
图十:
论坛管理员管理帖子的顺序图
【说明】管理员在帖子管理模块可以对会员发表的帖子进行维护(删除),还可以对帖子进行一些额外的智能操作,比如置顶帖子、设置精华帖子等。
更改完成后,都要经过数据库的处理,并更新数据,才能成功。
4.4、状态图
(1)帖子的状态图
图十一:
帖子的状态图
【说明】帖子最初的存在属性是会员发表的帖子和回复的帖子,当版主将帖子设置置顶、精华、热门标志后,这些帖子的状态就发生了改变。
当版主将帖子拖至垃圾箱后,则该帖子就成为被删除的帖子了,但是当版主在没有清空垃圾箱时,该帖子还是存在的,所以帖子也有删除这种状态。
(2)用户的状态图。
图十二:
版主的状态图
【说明】当用户首次进入BBS论坛系统时,他的身份是普通游客,但是当他注册成功后,就成为了普通会员,会员有申请成为版主的权利,当管理员批准并设为版主后,普通会员就成为版主了,版主同样有权利提出辞职,当管理员批准后,版主就成为普通会员了。
当会员/版主发出的请求没有得到回复时,会员和版主又是一种状态,因为当会员/版主的请求没有得到回应时,系统对这些发出请求的用户是有记录的。
和普通会员还是有区别的。
4.5、活动图
BBS论坛系统中可以建立的活动图细分下去很多,下面大体按前台和后台笼统地介绍该系统中的活动图。
(1)前台业务模块的活动图:
【说明】用户进入论坛,首先会员登录或新用户注册,显示论坛的分类,查阅论坛文章标题,点击阅读,读者可以对帖子进行回复,如果已注册会员,则回帖成功;否则提示用户注册会员。
图十三:
前台业务模块的活动图
(2)后台业务的活动图:
【说明】管理员登录管理系统,验证信息,正确进入系统,错误,退出系统。
进入系统后,有三个模块:
用户管理(可以控制会员和游客的使用权限)、分类管理(对帖子进行分类、板块划分等)、文章管理(可以对帖子进行置顶、删除、设为精华帖等操作)
图十四:
后台业务的活动图
4.6、系统中的类图
(1)参与者相关的类
系统中参与者有4个,分别是未注册用户、注册用户、版主和系统管理员。
其中把未注册用户、注册用户和版主归为使用者,所以该系统中和参与者相关的类的类图如下图所示:
图十五:
系统中和参与者相关的类的类图
i.bbsuser类是未注册用户、注册用户和版主的总陈,包含的属性有用户编号(userid)、用户姓名(username)、用户密码(userpassword)、用户性别(usersex)、用户籍贯(comefrom)、用户注册时间(dateandtime)等。
包含的方法有注册会员,设置用户名字、性别、密码,改变密码等。
ii.bbsadmin类是系统管理员类,包括的属性有管理员ID、管理员账号(adminname)、管理员密码(adminpwd)。
包含的方法有获得用户的名字,用户的密码等。
(2)系统中其他的类:
图十六:
系统中其他的类图
i.bbs类表示论坛中发表的帖子类。
此类的属性有帖子编号(bbsid)、板块编号(boardid)、父贴编号(parentid)、跟帖数(child)、发表人姓名(username)、发表人E-mail(usermail)、发表人IP地址(userip)、发表人表情(expression0、签名(usersign0、文章的主题(bbstopic)。
包含的方法有增加、删除、更改帖子等操作。
ii.bbscom类是设置分页显示的类。
属性包括分页数(pagesCurrent)、下一页(pagesNext)、最后一页(pagesLast)。
该类的功能主要是分页显示得到的数据列表。
包含的方法有向上、向下翻页,设置页码等。
iii.bbsboard类表示板块信息的类。
它的属性主要有板块编号(boardid)、板块名称(boardname)、板块中的版主称呼(boardmaster)、版主密码(masterpwd0、版主格言(masterword)、版主E-mail(masteremail)、板块点击率(boardhits)、板块主题数(boardtopics)。
包含的方法有检查版主信息,删除、排列板块等。
iv.bbsreg类是跟数据库连接相关的类。
属性有jdbc驱动(sDBDriver)、连接(conn)、结果集(rs)。
该类是专门为数据库设计的,其中有一个执行SQL”executeQuery()”的方法。
(3)各类之间的关系
类不是单独存在的,各个类之间的存在着一定得联系。
该BBS论坛系统中主要类之间的关系如下图所示:
图十七:
系统中主要类之间的关系图
【说明】一个板块可以发表很多帖子,所以板块和帖子之间是一对多的关系。
每个帖子都要用到分页显示的功能。
而且分页功能是一样的,所以帖子和分页是多对一的关系。
五、BBS系统的数据库建模
5.1、数据库设计分析
数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求).
(1)数据库是信息系统的核心和基础,把信息系统中大量的数据按一定的模型组织起来,提供存储、维护、检索数据的功能,使信息系统可以方便、及时、准确地从数据库中获得所需的信息。
(2)数据库是信息系统的各个部分能否紧密地结合在一起以及如何结合的关键所在。
(3)数据库设计是信息系统开发和建设的重要组成部分。
5.2、概念模型设计(E-R图)
数据模型是是数据特征的抽象,从抽象层次上描述了系统的静态特征、动态行为和约束条件,为数据库系统的信息表与操作提供一个抽象的框架。
描述了数据结构、数据操作及数据约束。
E-R模型的基本概念
ER图概念化地构建实体间关系的模型,这使得它们区别于数据库模型图。
ER图的理念是:
项目所有参与者能理解ER图。
ER图由不同实体类型、关系、特性和类型构成。
实体是诸如用户的实际对象,有时更抽象,但必须有业务意义。
特性用于描述实体,关系用于实体之间
(1)实体:
现实世界中的事物;
(2)属性:
事物的特性;
(3)联系:
现实世界中事物间的关系。
实体集的关系有一对一、一对多、多对多的联系。
本系统的ER图:
图十八:
系统E-R图
5.3、数据库表及关系建立
根据以上这些步骤就可以创建一个数据库,依次建立下列表结构.
1.用户基本资料表
2.用户详细信息表
3.论坛文章表
4.论坛版区表
5.论坛初始化信息表
(1).用户基本信息表和用户详细信息表是一对一的关系,一个用户只对应一个详细的信息表
(2).用户基本信息表和文章表是一对多的关系,即一个用户可以发表多篇文章和回复.
(3).论坛版区表和论坛文章表是一对多的关系,在一个论坛中可以含有多个文章和回复.
5.4、详细数据库结构设计
用户基本资料表中存放的是用户登陆时所需要或者记录用户的基本信息,包含比如登陆名,密码,最后登陆时间等.用户基本信息表的建立主要是记录用户最常用的一些信息。
表3.1leafbbs_userinfo
字段名
数据类型
长度
主键
索引
外键
可空
说明
ID
bigint
20
是
否
否
代理主键
UserName
Varchar
20
否
是
否
用户名
NickName
Varchar
60
否
否
否
昵称
Passwd
Varchar
40
否
否
否
密码
Email
varchar
255
否
否
否
电子邮件
Question
varchar
255
否
否
否
提示问题
Answer
varchar
255
否
否
否
提示答案
RegTime
datetime
否
否
否
注册时间
LoginTime
datetime
否
否
否
最后登陆时间
LoginIP
varchar
20
否
否
否
最后登陆IP
LoginTimes
int
11
否
否
否
登陆次数
StayTime
bigint
20
否
否
否
停留时间
SignDetail
text
否
否
是
用户签名
HavePic
tinyint
1
否
否
是
是否有头像
PicFileName
varchar
255
否
否
是
头像地址
TimeZone
varchar
20
否
否
是
地区
(2).用户详细信息表:
用户详细信息表中存放的是用户的身高,体重,联系方式等详细资料,建立此表的目的是把一些用户不经常用到的详细信息,单独存放到一张表中,可以节约系统的资源.
表3.2leafbbs_userdetai
字段
数据类
长度
主键
索引
外键
可空
说明
ID
bigint
20
是
是
否
代理主键
Height
varchar
20
否
否
是
身高
Weight
varchar
20
否
否
是
体重
FavourPeople
varchar
255
否
否
是
最喜欢的人
DreamJob
varchar
255
否
否
是
向往工作
FavourMusic
varchar
255
否
否
是
喜欢的音乐
FavourPlace
varchar
255
否
否
是
喜欢的地方
FavourMovie
varchar
255
否
否
是
喜欢的电影
HomePage
varchar
255
否
否
是
主页
OicqNo
varchar
255
否
否
是
QQ号码
IcqNo
varchar
255
否
否
是
ICQ号码
MSN
varchar
255
否
否
是
MSN号码
Sex
tinyint
1
否
否
是
性别
Brief
text
否
否
是
简介
(3).论坛文章表:
论坛文章表存放的是用户所发表的文章信息,也包括回复信息.而在数据库的设计中主要问题是鉴别帖子信息和回复信息.
表3.3leafbbs_forum
字段名
数据类型
长度
主键
索引
外键
可空
说明
ID
bigint
20
是
否
否
代理主键
ParentID
bigint
20
否
否
否
父帖ID
MainID
bigint
20
否
否
否
主帖ID
BoardID
bigint
20
否
否
否
版区ID
BoardName
varchar
60
否
否
否
版区名字
ReNum
int
11
否
否
否
回复数量
ClickNum
int
11
否
否
否
点击次数
UserID
bigint
20
否
否
否
发表者ID
UserName
varchar
20
否
否
否
发表者姓名
NickName
varchar
60
否
否
否
发表者昵称
Title
varchar
150
否
否
否
文章标题
Detail
text
否
否
否
文章内容
Sign
text
否
否
否
文章说明
ArtSize
int
11
否
否
否
文章字节数
postTime
bigint
20
否
否
否
发表时间
LastTime
bigint
20
否
否
否
最后回复时间
IPAddress
varchar
20
否
否
否
发表者IP
IsNew
tinyint
1
否
否
否
是否是新
IsHidden
tinyint
1
否
否
否
是否隐藏
IsTop
tinyint
1
否
否
否
是否置顶
IsLock
tinyint
1
否
否
否
是否被锁定
(4).论坛版区表:
论坛版区表是存放的是论坛中版块信息.而论坛也划分为父论坛和子论坛,区分他们也靠表中的某个字段来实现的.具体实际的设计如下.
表3.4leafbbs_board
字段名
数据类