收藏 分销(赏)

BBS论坛系统----UML建模.doc

上传人:人****来 文档编号:3069587 上传时间:2024-06-14 格式:DOC 页数:22 大小:264.54KB 下载积分:10 金币
下载 相关 举报
BBS论坛系统----UML建模.doc_第1页
第1页 / 共22页
BBS论坛系统----UML建模.doc_第2页
第2页 / 共22页


点击查看更多>>
资源描述
软件建模与UML 实训报告 实训项目:________________________ 小组名称:________________________ 小组成员:________________________ 联系方式:________________________ 目 录 一、摘要 1 二、BBS论坛系统的可行性分析 2 三、BBS论坛系统的需求分析 3 四、系统的UML建模设计 6 五、BBS系统的数据库建模 15 六、心得 20 一、摘要 随着Internet技术的快速发展,人与人之间交流方式逐渐增多。网络视频、网络聊天、博客已成为人们彼此沟通、交流信息的主要方式。此外,为了方便人们在某一专业领域探讨问题和发表意见,Internet上还出现了在线论坛。在论坛上,人们可以对某一领域提出自己遇到的问题,即发表某一主题,随后,论坛上的其他人会根据自己的学识、经验发表意见或提出问题的方法。 开发BBS论坛系统的目的是提供一个供用户交流的平台,为广大用户提供交流经验、探讨问题的网上社区。因此,BBS论坛系统最基本的功能首先是发表主题,其次是其他人员根据主题发表自己的看法。此外,为了记录主题的发表者和主题的回复者信息,系统还需要提供用户注册和登录的功能。只有注册的用户登录后才能够发表和回复主题,浏览者(游客)只能浏览主题信息。 本论坛系统是基于是Struts1.2+SQL Server 2000实现的,它具有使用方便、操作灵活、运行稳定、安全可靠等特点。 关键词 在线论坛,BBS,网上社区 二、BBS论坛系统的可行性分析 可行性分析是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。 2.1、技术可行性 技术上的可行性分析主要分析技术条件能否顺利完成开发工作,硬、软件能否满足开发者的需要等。该BBS论坛管理系统采用了流行的JSP语言和当前新兴的Browser/Server(浏览器/服务器)模式进行开发。三层的B/S体系结构具有许多传统Client/Server(客户机/服务器)体系结构不具备的优点,而且又紧密的结合了Internet/Intranet(国际互联网/企业内部互联网)技术,是技术发展的大势所趋,它把应用系统带入了一个崭新的发展时代。数据库服务器选用SQL Server 2000数据库,它能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。它的灵活性、安全性和易用性为数据库编程提供了良好的条件。因此,系统的软件开发平台已成熟可行。硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台能满足此系统的需要。 2.2、经济可行性 主要是对项目的经济效益进行评估,本系统模拟的是提供一个供用户交流的平台,为广大用户提供交流经验、探讨问题的社区。但实际只是用于个人的毕业设计,只是模拟,也不存在资金的流动,故在经济上是可行的。 2.3、社会可行性 随着Internet技术的快速发展,BBS论坛已成为人们彼此沟通、交流信息的主要方式。在论坛上,人们可以对某一领域提出自己遇到的问题,随后,论坛上的其他人会根据自己的学识、经验发表意见或提出问题的方法。BBS论坛接近了人们之间的距离,它早已成为人们网上生活的必备工具。所以说BBS论坛对当今社会是相当重要的。 三、BBS论坛系统的需求分析 3.1、系统的目标设计 系统开发的总目标是提供一个供用户交流的平台,为广大用户提供交流经验、探讨问题的社区。 一般来说BBS论坛大致分为以下流程:用户登陆进入论坛(一半为游客,有时候注册为会员),就某个话题(贴字的主题)展开讨论。通过发帖功能发布新的话题;通过回帖功能回复已有的话题;通过搜索功能查找已有的话题。管理员通过功能创建、编辑、删除论坛的板块;管理注册的用户;管理帖子。 3.2、 系统的功能需求分析 (1)游客注册 提供新会员注册功能,包括提供录入信息的界面,检查注册信息的有效性,并将注册会员信息保存在对应数据库的数据表中。 (2) 会员发帖回帖 提供会员发表文章,回复文章的功能,未注册用户不允许使用该功能 (3) 浏览帖子 对注册会员和胃注册会员提供文章查询以及阅读的功能,即通过对应文章标题信息,查看查询详细内容及发表文章的超级链接 (4) 会员管理 当网上论坛的回忆完成注册后,系统会在数据库中加入会员的资料。包括会员名称,会员密码,会员Email等相关信息资料。同时,按照会员的不同身份,将特殊会员设置为版主,使他具备删除被讨论区中对应文章等特殊操作的权利。管理者可以依据数据库中注册的特殊身份登录到论坛后台对会员信息进行管理。 (5) 板块(论坛分类)管理 根据不同的讨论内容,管理员将整个讨论区分为不同的区域,会员可以选择进入不同的讨论区,允许管理者对分类进行调整,同时提供不同讨论区中包括文章等的统计功能。 (6) 贴子管理 管理员和版主都可以对会员发表的帖子进行提前、置顶和删除等操作。 系统总体功能模块图如下: BBS论坛系统 后台模块 前台基本业务模块 游客注册 会员发帖回帖 浏览帖子 会员管理 帖子管理 板块管理 图一:系统总体功能模块图 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图: 用户 M 发表 N 帖子 详细资料 1 1 N 管理 管理员 1 N 添加 1 修改 论坛 图十八:系统E-R图 5.3、数据库表及关系建立 根据以上这些步骤就可以创建一个数据库,依次建立下列表结构. 1.用户基本资料表 2.用户详细信息表 3.论坛文章表 4.论坛版区表 5.论坛初始化信息表 (1).用户基本信息表 和用户详细信息表是一对一的关系,一个用户只对应一个详细的信息表 (2).用户基本信息表和文章表是一对多的关系,即一个用户可以发表多篇文章和回复. (3).论坛版区表和论坛文章表是一对多的关系,在一个论坛中可以含有多个文章和回复. 5.4、详细数据库结构设计 用户基本资料表中存放的是用户登陆时所需要或者记录用户的基本信息,包含比如登陆名,密码,最后登陆时间等.用户基本信息表的建立主要是记录用户最常用的一些信息。 表3.1 leafbbs_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.2 leafbbs_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.3 leafbbs_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.4 leafbbs_board 字段名 数据类型 长度 主键 索引 外键 可空 说明 ID bigint 20 是 否 否 代理主键 ParentID bigint 20 否 否 否 父版区ID ChildIDs varchar 255 否 否 否 子版区ID BoardName varchar 255 否 否 否 版区名字 Explains text 否 否 否 版区描述 BoardPic varchar 200 否 否 否 图片地址 Orders int 11 否 否 否 显示顺序 IsHidden tinyint 1 否 否 否 是否隐藏 PostNum int 11 否 否 否 文章数量 NeedPasswd tinyint 1 否 否 否 是否加密 Passwd varchar 100 否 否 是 密码 (5).论坛初始化信息表: 论坛初始化信息表是存放初始化信息和管理员的帐号密码等信息,初始化信息是在论坛在加载过程中读取的或者以后经常用的一些信息. 表3.5 leafbbs_config表 字段名 数据类型 长度 主键 索引 外键 可空 说明 ID varchar 50 是 否 否 初始化标题 ConfContext text 否 否 否 初始化信息 六、心得 经过了这么多天的努力,不仅在制作的过程中复习和了解了开发一个软件的过程,而且凝聚了我们团队,深刻地体味到了团队合作对于软件开发的重要性,受益匪浅。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服