基于SSH的BBS系统设计与实现

基于SSH的BBS系统设计与实现
基于SSH的BBS系统设计与实现

编号:

审定成绩:

重庆邮电大学

毕业设计(论文)

设计(论文)题目:基于SSH的BBS系统设计与实现

学院名称:软件学院

学生姓名:黄智强

专业:软件工程

班级:1310508

学号:08370508

指导教师:解绍词

答辩组负责人:

填表时间:2012年5月

重庆邮电大学教务处制

摘要

随着互联网的迅猛发展,人们的工作和生活越来越离不开网络。BBS已成为人们日益广泛使用,一种人与人之间交互的必备工具。并发量大、交互性强、信息含量高是BBS系统区别于一般网络应用的主要特点。如何提高BBS系统的响应速度,是众多研究人员面临的一项重要课题。

本系统采用基于J2EE平台的多层架构,通过运用SSH(Struts+ Spring+Hibernate)技术,建立一套可伸缩性高的系统开发架构。Struts框架的引入是为了将系统显示层和业务层进行分离,从而可改变系统页面中穿插功能代码的缺陷性。Spring框架的引入除了可以很好的为中间层服务以外,还能实现与上下层之间的兼容,达到各层相互独立的目的,从而可大大降低各层之间的耦合度。Hibernate框架用于完善Spring框架对JDBC的封装。

论文首先介绍了BBS系统的发展趋势和研究背景及意义,阐述了开发BBS系统的意义所在。然后介绍了Struts框架,Spring框架,Hibernate框架,MySQL数据库,应用服务器Tomcat以及开发平台MyEclipse等相关技术。在分析了BBS系统开发的理论基础后,研究了BBS系统的功能需求,并以此为系统设计原则完成了系统总体框架的搭建以及用户、帖子和后台管理等功能模块的详细设计,以E-R图的方式对系统数据库进行了概念设计,给出了功能模块设计的流程图和部分关键代码与系统页面效果。最后实现与测试系统,并提出了系统未来可能面临的问题,以及系统功能有待完善的改进方向。

【关键词】BBS Struts Spring Hibernate

ABSTRACT

With the rapid development of internet, people’s work and life more and more inseparable from the network. BBS has become an increasingly widespread use, an essential tool for interaction between people. Large amount of concurrent, interactive, high information content of the main features of the BBS system is different from the general network applications. How to improve the BBS the response speed of system and is one of many researchers face of an important topic.

In this system, based on the J2EE platform, multi-storey frame structure, through the use of technology ,spring technologies, hibernate technology, established a high scalability of the system development framework. The Struts framework was introduced in order to display the system layer and business layer separation, which can change the system pages interspersed with function code defects. The introduction of the Spring Framework In addition to the well for middle-tier services, but also compatible between the upper and lower layers independent of each other purposes, which can greatly reduce the degree of coupling between the layers. The Hibernate framework is used to improve the package of the Spring Framework JDBC.

This paper first describes the trends and research background and significance of the BBS system, explained the significance of the development of BBS systems. And then introduces the Struts framework, Spring framework, Hibernate framework, MySQL database, application server Tomcat, as well as the development platform MyEclipse and other related technologies. BBS system developed theoretical basis, Then research the system function requirements, and complete the overall framework design and the specific design of some typical functional modules, such as user, topic, system management, design concept of the system database map of the E-R, given the functional modular design of the flow chart and some key code and system front page. Finally, with the test system, and propose future problems that may occur, as well as system functions to be improved for perfect.

【Key words】BBS Struts Spring Hibernate

目录

第一章前言 (1)

第一节研究背景及意义 (1)

第二节发展趋势 (2)

第三节论文结构安排 (3)

第二章相关技术介绍 (4)

第一节SSH框架技术 (4)

一、Struts框架介绍 (4)

二、Spring框架介绍 (5)

三、Hibernate框架介绍 (6)

第二节其他相关技术 (7)

一、全文检索引擎 (7)

二、Java缓存框架EhCache (9)

第三章BBS系统需求 (10)

第一节BBS系统功能需求及用例描述 (10)

一、基本系统模型 (10)

二、主要功能组成 (10)

三、用户功能模块 (11)

四、帖子功能模块 (12)

五、后台管理功能模块 (13)

第二节BBS系统数据流程 (14)

第三节BBS系统可行性分析 (16)

一、社会可行性 (16)

二、技术可行性 (16)

第四节BBS系统运行环境分析 (17)

一、支持环境 (17)

二、开发环境 (17)

第四章BBS系统设计 (18)

第一节BBS系统数据库设计 (18)

一、概念模型设计(E-R图) (18)

二、数据库表建立 (19)

第二节BBS系统功能设计 (21)

一、系统功能结构图 (21)

二、系统功能模块设计 (22)

第三节BBS系统界面设计 (23)

第四节BBS系统组件设计 (25)

第五章BBS系统实现 (26)

第一节系统类图设计 (26)

第二节系统框架实现 (29)

一、持久化层的建立 (29)

二、业务逻辑层的建立 (29)

三、表示层的建立 (30)

第三节用户功能模块实现 (30)

一、会员登录与注销 (30)

二、新用户注册 (31)

三、账户设置 (32)

第四节帖子功能模块实现 (33)

一、发表帖子 (33)

二、回复帖子 (34)

三、搜索帖子 (35)

第五节后台管理功能模块实现 (35)

一、版面管理 (36)

二、帖子管理 (36)

三、会员管理 (37)

四、角色管理 (37)

五、搜索管理 (38)

六、链接管理 (38)

第六节权限控制功能的实现 (38)

一、系统前台权限拦截的实现 (38)

二、系统后台权限拦截的实现 (39)

第七节测试方案及测试结果 (39)

一、测试方法 (39)

二、测试范围 (40)

三、测试用例 (40)

四、测试结果 (41)

第六章总结与展望 (43)

致谢 (45)

参考文献 (46)

附录 (47)

一、源程序 (47)

二、英文原文 (49)

三、英文翻译 (55)

第一章前言

第一节研究背景及意义

1978年在美国芝加哥开发出一套基于8080芯片的CBBS/Chicago(Computerized Bulletin Board System/Chicago),此乃最早的一套BBS系统。之后随着苹果机的问世,开发出基于苹果机的Bulletin Board System和大众信息系统(Peoples Message System)2种BBS系统。1981年IBM个人计算机诞生时,并没有自己的BBS系统。直到1982年,Buss Lane 才用Basic语言为IBM个人计算机编写了一个原型程序。其后经过几番增修,终于在1983年通过Capital PC User Group(CPCUG)的Communication Special Interest Group会员的努力,改写出了个人计算机系统的BBS。经Thomas Mach整理后,终于完成了个人计算机的第1版BBS系统——RBBS-PC。这套BBS系统的最大特色是其源程序全部公开,有利于日后的修改和维护,因此后来在开发其他的BBS系统时都以此为框架,所以RBBS-PC赢得了BBS鼻祖的美称。

BBS最早是用来公布股市价格等类信息的,当时BBS连文件传输的功能都没有,而且只能在上运行。早期的BBS与一般街头和校园内的公告板性质相同,只不过是通过来传播或获得消息而已。一直到开始普及之后,有些人尝试将苹果计算机上的BBS转移到个人计算机上,BBS才开始渐渐普及开来。近些年来,由于爱好者们的努力,BBS的功能得到了很大的扩充。目前,通过BBS系统可随时取得各种最新的信息;也可以通过BBS系统来和别人讨论计算机等等各种有趣的话题;还可以利用BBS系统来发布一些“征友”、“转让”、“招聘”及“应聘”等启事;更可以召集亲朋好友到聊天室内高谈阔论;各种专业论坛为那些专业人士提供了一个相互学习的平台,极大的丰富了网民的生活和娱乐。许多技术和娱乐网站都有论坛版块,网友在浏览网站时,有些不懂的问题或对网站有什么建议,网友可登陆论坛版块请教问题,提出自己的意见,因为是在网络上,网站的维护人员和论坛的版主及时的发现网友的提问和问题,并及时地回答他们。在线论坛还可以提高网站的访问量,增加网站的点击率,提高网站的广告效果,提高网站收益。

如今互联网上已经出现了各式各样的论坛系统,如国内的动网论坛,国外开源的Jive论坛等等。现在各个大学网站都有BBS论坛,在BBS上,同学与同学之间,老师之间可以非常轻松的进行交流,有网络的地方,不同的地区和国家的各种不同的人都可加入到BBS上进行交流。这也节省了大量的教育资源,和充分的利用教育资源。这些论坛系统的出现为各种论坛网站提供了系统级的支持,促进了网络的发展,丰富了互联网的内容。

在线论坛系统实用性很是强大,但是,现在的在线论坛系统多如牛毛,好坏不一,虽然已经得到一定程度的发展和完善,在实际应用中也起到了相当大的作用,但是目前的一些在线论坛还是存在一些问题有待得到解决。

论坛系统是用来架设论坛以供人们访问的,论坛发展的好坏其一是依赖于论坛本身的内容和管理员管理、宣传的能力。现在各种在线论坛多如牛毛,用户需要什么类型的论坛来获取知识或者娱乐等,这都是很重要的,要追求市场。这也是开发论坛的成败之一。还有就是管理员管理帖子审核的问题,用户所发布的帖子是否符合该论坛的要求,是否是恶意捣乱,这帖子审核可全是管理员管理能力的体现。再则是管理员对论坛宣传,怎么样把这个论坛广而告之,这也要靠管理员,可见,管理员对一个论坛的发展有多么重要。

第二节发展趋势

根据中国互联网络信息中心(CNNIC)今年发布的《第28次中国互联网络发展状况统计报告》显示,BBS目前仍然是中国互联网排名前列的应用[1]。截至2011年6月,BBS论坛覆盖人群达到14405万,在网民中仍然有29.7%的使用率,虽然相较上次统计,使用率下降了2.8%,但并没有出现使用者大量流失、“BBS已死”的迹象。

尽管很多人不太看好BBS的发展前景,但不可否认,BBS本身也在进行突破,不断完善。在新一代BBS论坛——豆瓣小组和百度贴吧中,所有的注册用户都可以建立新的小组或者贴吧,即使某个小组或贴吧很长时间都没有人发言,但其内容始终存在,人气低的论坛并不一定没有价值,不会因此而被关闭。

此外,面对微博、社交网站的冲击,国内比较有影响力的BBS也都在“社交网络化”,加入社交元素,比如百度贴吧就推出了个人专属空间“i贴吧”,用户可以相互关注。与此同时,微博也推出了微群、轻博客等类似BBS的产品,希望通过主题讨论和汇聚精华内容来增加用户“粘性”。事实上,强调内容和关注社交并不矛盾,各大网站和相关应用也都在试图利用新的媒体技术融合这两种功能。

媒介融合是未来的发展趋势。“由于使用习惯等因素,很多用户还会继续使用BBS,而且随着BBS的升级完善以及微群等应用的发展,未来可能会出现融合BBS 和微博特性的新的媒介应用。”谢耘耕预测说,“在新媒体领域,不同媒体形态‘并存、融合、互补、创新’都是正常的。”

Web2.0的时代已经到来,Web2.0与传统的万维网之间最主要的区别就是用户和用户、产品供应商和企业之间更大的协作。Web1.0时代,论坛社区基本满足网民信

息生活的需求,Web2.0时代论坛社区呈现出巨大的商业价值。当社区用户数量达到引爆点后,社区流量将开始飞快成长,远远大于web1.0网站的流量增长速度。伴随着web2.0时代的到来,BBS有了新的技术和应用发展[2]:

①BBS论坛系统将朝着即时性方面发展。现在动态网站出现一门新技术Ajax。在ajax之前,页面的部分数据需要更新时必须刷新整个页面。而使用Ajax技术的网站,不需要刷新页面就可以更新数据,这就使Web站点看起来是即时响应的。将来可以把Ajax技术运用到BBS系统当中,使论坛成员在不用刷新页面时就可以看到别人刚刚发的帖子。

②BBS论坛系统也将朝着图形化方向发展。图形虚拟社区可以非常具体和形象化的模拟整个现实社区的生活,并且具备无限的可扩充性。在论坛中你甚至可以找到和现实生活完全对应的建筑。通过一根网线就可以把远在天南海北的朋友聚到一起。试想,你可以通过外形的不同来区分不同社区的朋友而不是通过ID。你甚至可以通过外形的不同来猜测对方的性格,这些都是传统虚拟社区所不具备的特点。

第三节论文结构安排

本文以Web为中心架构,对基于SSH的BBS系统开发进行研究,论文结构安排如下:

第一章首先介绍研究背景及意义,然后简要介绍BBS系统的发展趋势。

第二章介绍了本系统开发运用的一些技术。

第三章运用功能分析法的研究方法对BBS系统从功能、数据流程、可行性、运行环境进行需求分析。

第四章是对BBS系统的数据库、功能进行了详细设计。分析了主要界面设计和相关组件设计。

第五章对BBS系统的具体实现进行了介绍。并对该系统进行了测试。

第六章对本系统开发进行了总结与展望。

最后感谢在此过程中给我支持和帮助的人。

第二章相关技术介绍

第一节SSH框架技术

一、Struts框架介绍

Struts 是一组相互协作的类、servlet 和JSP 标记,它们组成一个可重用的MVC 2 设计。这个定义表示Struts 是一个框架,而不是一个库,但Struts 也包含了丰富的标记库和独立于该框架工作的实用程序类[3]。Struts 的概览如图2.1所示:

图2.1 Struts 概览

ActionServlet (Controller)、ActionForm (Form State) 和Action (Model Wrapper) 之间的最简关系如图2.2所示:

图2.2 Command 与 Model之间的关系的 UML 图

在这个软件开发的新时代,一切都变得很快。在不到 5 年的时间内,我已经目睹了从cgi/perl 到ISAPI/NSAPI、再到使用VB 的ASP、一直到现在的Java 和

J2EE 的变迁。Sun 正在尽力将新的变化反映到JSP/servlet 体系结构中,正如他们对Java 语言和API 所作的更改一样。

Struts 使用标记和MVC 解决了某些重大问题。这个方法有助于提高代码的可重用性和灵活性。通过将问题划分为更小的组件,当技术空间或问题空间中出现变化时,您就有更多的机会重用代码。此外,Struts 使网页设计人员和Java 开发人员能将精力集中于自己最擅长的方面。但是,在强健性增强的同时,也意味着复杂性的增加。Struts 比简单的单个JSP 网页要复杂得多,但对于更大的系统而言,Struts 实际上有助于管理复杂性。另外,我并不想编写自己的MVC 实现,而只想了解一个这样的实现。不管您是否会使用Struts,回顾这个Struts 框架(对不起,应该是库)都会使您对JSP 文件和Servlet 的特性、以及如何将它们组合起来用于您的下一个Web 项目有更好的了解。正像翼间支柱是机翼结构中不可缺少的一部分一样,Struts 也可能成为您下一个Web 项目的不可缺少的一部分。

二、Spring框架介绍

Spring 是一个开源框架,是为了解决企业应用程序开发复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同时为J2EE 应用程序开发提供集成的框架。Spring 框架是一个分层架构,由7 个定义良好的模块组成。Spring 模块构建在核心容器之上,核心容器定义了创建、配置和管理Bean 的方式[4],其实Spring 就是面向Bean 的编程(BOP,Bean Oriented Programming),Bean 在Spring 中才是真正的主角。Spring框架的7个模块如图2.3所示:

图2.3 Spring 框架的7个模块

组成Spring 框架的每个模块(或组件)都可以单独存在,或者与其他一个或多个模块联合实现。每个模块的功能如下:

①核心容器:核心容器提供Spring 框架的基本功能。核心容器的主要组件是BeanFactory,它是工厂模式的实现。BeanFactory 使用控制反转(IOC)模式将应用程序的配置和依赖性规范与实际的应用程序代码分开。

②Spring 上下文:Spring 上下文是一个配置文件,向Spring 框架提供上下文信息。Spring 上下文包括企业服务,例如JNDI、EJB、电子邮件、国际化、校验和调度功能。

③Spring AOP:通过配置管理特性,Spring AOP 模块直接将面向方面的编程功能集成到了Spring 框架中。所以,可以很容易地使Spring 框架管理的任何对象支持AOP。Spring AOP 模块为基于Spring 的应用程序中的对象提供了事务管理服务。通过使用Spring AOP,不用依赖EJB 组件,就可以将声明性事务管理集成到应用程序中。

④Spring DAO:JDBC DAO 抽象层提供了有意义的异常层次结构,可用该结构来管理异常处理和不同数据库供应商抛出的错误消息。异常层次结构简化了错误处理,并且极大地降低了需要编写的异常代码数量(例如打开和关闭连接)。Spring DAO 的面向JDBC 的异常遵从通用的DAO 异常层次结构。

⑤Spring ORM:Spring 框架插入了若干个ORM 框架,从而提供了ORM 的对象关系工具,其中包括JDO、Hibernate 和iBatis SQL Map。所有这些都遵从Spring 的通用事务和DAO 异常层次结构。

⑥Spring Web 模块:Web 上下文模块建立在应用程序上下文模块之上,为基于Web 的应用程序提供了上下文。所以,Spring 框架支持与Jakarta Struts 的集成。Web 模块还简化了处理多部分请求以及将请求参数绑定到域对象的工作。

⑦Spring MVC 框架:MVC 框架是一个全功能的构建Web 应用程序的MVC 实现。通过策略接口,MVC 框架变成为高度可配置的,MVC 容纳了大量视图技术,其中包括JSP、Velocity、Tiles、iText 和POI。

三、Hibernate框架介绍

Hibernate 是Java 平台上的一种全功能的、开放源代码OR 映射框架。Hibernate 在许多方面类似于EJB CMP CMR (容器管理的持久性/ 容器管理的关系)和JDO(Java Data Objects)。与JDO 不同,Hibernate 完全着眼于关系数据库的OR 映射,并且包括比大多数商业产品更多的功能。大多数EJB CMP CMR 解决方案使用代码生成实现持久性代码,而JDO 使用字节码修饰。与之相反,Hibernate 使用反射和运行时字节码生成,使它对于最终用户几乎是透明的。

Hibernate 可以模拟继承(有几种方式)、关联(一对一或者一对多、containment 和aggregation)和composition[3]。Hibernate 提供了一种称为Hibernate Query Language (HQL)的查询语言,它类似于JDO 的JDOQL 和EJB 的EJB QL,尽管它更接近于前者。但是Hibernate 没有就此止步:它还可以进行直接的SQL 查询和/ 或使用Object criteria很容易地在运行时构成查询条件。在本文的例子中我将只使用HQL。与EJB CMP CMR 不同,Hibernate 像JDO 一样可以在J2EE 容器内部或者外部工作,这可以让那些进行TDD 和敏捷开发的人受益。

Hibernate 中提供了两级Cache,第一级别的缓存是Session级别的缓存,它是属于事务范围的缓存。这一级别的缓存由Hibernate管理的,一般情况下无需进行干预;第二级别的缓存是SessionFactory级别的缓存,它是属于进程范围或群集范围的缓存。这一级别的缓存可以进行配置和更改,并且可以动态加载和卸载。Hibernate 还为查询结果提供了一个查询缓存,它依赖于第二级缓存。

第二节其他相关技术

一、全文检索引擎

1、lucene简介

Lucene 是一个基于Java 的全文信息检索工具包,它不是一个完整的搜索应用程序,而是为你的应用程序提供索引和搜索功能。Lucene 目前是Apache Jakarta 家族中的一个开源项目。也是目前最为流行的基于Java 开源全文检索工具包。

目前已经有很多应用程序的搜索功能是基于Lucene 的,比如Eclipse 的帮助系统的搜索功能[3]。Lucene 能够为文本类型的数据建立索引,所以你只要能把你要索引的数据格式转化的文本的,Lucene 就能对你的文档进行索引和搜索。比如你要对一些HTML 文档,PDF 文档进行索引的话你就首先需要把HTML 文档和PDF 文档转化成文本格式的,然后将转化后的内容交给Lucene 进行索引,然后把创建好的索引文件保存到磁盘或者内存中,最后根据用户输入的查询条件在索引文件上进行查询。不指定要索引的文档的格式也使Lucene 能够几乎适用于所有的搜索应用程序。搜索应用程序和Lucene 之间的关系,反映了利用Lucene 构建搜索应用程序的流程,如图2.4所示:

图2.4 搜索应用程序和Lucene 之间的关系

2、索引和搜索

索引是现代搜索引擎的核心,建立索引的过程就是把源数据处理成非常方便查询的索引文件的过程。为什么索引这么重要呢,试想你现在要在大量的文档中搜索含有某个关键词的文档,那么如果不建立索引的话你就需要把这些文档顺序的读入内存,然后检查这个文章中是不是含有要查找的关键词,这样的话就会耗费非常多的时间,想想搜索引擎可是在毫秒级的时间内查找出要搜索的结果的。这就是由于建立了索引的原因,你可以把索引想象成这样一种数据结构,他能够使你快速的随机访问存储在索引中的关键词,进而找到该关键词所关联的文档。Lucene 采用的是一种称为反向索引(inverted index)的机制。反向索引就是说我们维护了一个词/ 短语表,对于这个表中的每个词/ 短语,都有一个链表描述了有哪些文档包含了这个词/ 短语。这样在用户输入查询条件的时候,就能非常快的得到搜索结果。我们将在本系列文章的第二部分详细介绍Lucene 的索引机制,由于Lucene 提供了简单易用的API,所以即使读者刚开始对全文本进行索引的机制并不太了解,也可以非

常容易的使用Lucene 对你的文档实现索引。

对文档建立好索引后,就可以在这些索引上面进行搜索了。搜索引擎首先会对搜索的关键词进行解析,然后再在建立好的索引上面进行查找,最终返回和用户输入的关键词相关联的文档

二、Java缓存框架EhCache

EhCache是Hibernate的二级缓存技术之一,可以把查询出来的数据存储在内存或者磁盘,节省下次同样查询语句再次查询数据库,大幅减轻数据库压力;

当用Hibernate的方式修改表数据(save,update,delete等等),这时EhCache会自动把缓存中关于此表的所有缓存全部删除掉(这样能达到同步)。但对于数据经常修改的表来说,可能就失去缓存的意义了(不能减轻数据库压力);

EhCache一般要使用在比较少执行write操作的表(包括update,insert,delete 等),两台机子中的缓存是不能实时同步的。

第三章 BBS 系统需求

第一节 BBS 系统功能需求及用例描述

一、基本系统模型

首先要确定这个论坛的主要功能。论坛是给大家提供的一个信息发布和互动的一个平台,所以这个论坛的基本功能可以分为三个部分,首先是话题的产生,也就是发帖功能,论坛一定要给大家表达自己看法并与人讨论的空间,所以发帖是论坛的主要功能。其次是回帖功能,大家互相讨论就一定要回帖。最后是浏览帖子,发了帖子会有人看。主要功能就是发帖→浏览帖子→回帖三大功能循环的进行,BBS 系统的基本关系功能图如图3.1所示:

图3.1 BBS 系统的基本关系功能图

二、主要功能组成

本系统是网上交流的BBS 系统,根据用户的需要和实际的管理条件,应由用户功能实现,帖子功能实现和后台管理等几个模块所构成,用户可以对一些数据进行查找和修改,并且注册的用户可以对帖子进行特定的操作,而管理员可以对用户和帖子进行相关的管理,BBS 系统主要功能的用例图如图3.2所示:

图3.2 BBS系统主要功能的用例图

三、用户功能模块

当用户进入网站首页时,会有一个登录窗口,已经注册的会员用户可以在这个窗口中登录。没有登录的用户只能查看主题,不能发表主题或评论。登录之后,用户就可以发表主题或回复;查看或修改自己个人信息,包括修改用户头像,可以选择自己喜欢的图片作为自己的头像。

没有注册的用户可以在登录窗口中点击注册超链接进入新用户注册页面,输入用户名、密码、及安全邮箱,即可注册成为会员,系统用户功能的用例图如图3.3所示:

图3.3 BBS系统用户功能的用例图

四、帖子功能模块

系统有版块,帖子和回复,其中版块是对帖子的分类,回复是在帖子下发表的,是用户对帖子的评论。当用户进入首页时会显示论坛的所有版块及每个版块下的主题数,帖子总数,最后发表主题的用户、时间。进入版块之后显示该版块下的主题及该主题下的回复数,点击数,最后发表评论的用户及时间。点击帖子标题进入帖子页面,该页面有帖子内容,发表该帖子的用户的用户名、注册时间,该主题下的回复及发表回复的用户的个人信息。

已登录用户可以在版块下发表帖子,在帖子下发表回复,还可以按关键字对帖子复进行搜索,并支持模糊查询。匿名用户只能查看帖子内容,对帖子进行搜索,但不能发表主题,不能发表回复,BBS系统帖子功能的用例图如图3.4所示:

图3.4 BBS系统帖子功能的用例图

五、后台管理功能模块

管理员作为一个特殊的用户,除了拥有普通用户拥有的功能外,后台管理功能主要分为版面管理、帖子管理、会员管理、角色管理、搜索管理、链接管理,BBS 系统后台管理功能的用例图如图3.5所示:

图3.5 BBS系统后台管理的用例图

第二节 BBS 系统数据流程

本系统是为了提供给广大用户一个网上交流的平台,所以论坛的流程是以用户为中心进行的.数据流程图是描述系统数据流程的工具,它将数据独立抽象出来,通过图形方式描述信息的来龙去脉和实际流程。

为了描述复杂的软件系统的信息流向和加工,可采用分层的DFD 来描述,分层DFD 有顶层,中间层、底层之分:

①顶层。决定系统的范围,决定输入输出数据流,它说明系统的边界,把整个系统的功能抽象为一个加工,顶层DFD 只有一张。

②中间层。顶层之下是若干中间层,某一中间层既是它上一层加工的分解结果,又是它下一层若干加工的抽象,即它又可进一步分解。

③底层。若一张DFD 的加工不能进一步分解,这张DFD 就是底层的了。底层DFD 的加工是由基本加工构成的,所谓基本加工是指不能再进行分解的加工。

BBS 系统的用户模块流程图如图3.6所示:

图3.6 用户模块流程图

N Y

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