BBS系统设计与实现.doc_第1页
BBS系统设计与实现.doc_第2页
BBS系统设计与实现.doc_第3页
BBS系统设计与实现.doc_第4页
BBS系统设计与实现.doc_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘 要当今社会是一个信息飞速发达的社会,人们通过互联网络可以进行信息的交流。论坛就是一种Internet网上开发信息服务系统,通过论坛用户可以方便的实现信息的交换和文件的共享。本文研究并实现了基于B/S模式的BBS论坛系统,在结合动态服务网页(JSP)和Mysql数据库之下开发了这个快捷、界面友好的简易系统,该系统采用目前流行的MVC三层架构。本文从BBS系统的课题背景、可行性分析、需求分析、总体设计、详细设计和软件测试等方面详细阐述了整个系统的开发过程。开发校园BBS论坛系统的目的是给师生提供一个交流的平台,为广大用户提供交流经验、探讨问题的网上社区,因此,BBS论坛系统的基本功能首先是发表主题,其次是其他人员根据主题发表自己的看法。此外,为了记录主题的发表者和主题的回复者信息,系统还需要提供用户注册和登陆的功能。只有注册的用户登陆后才能够发表和回复主题,浏览者(游客)只能够浏览论坛。该论坛功能较齐全,能够满足老师与学生之间、学生与学生之间的交流。本论坛系统是基于MyEclipse8.5和Mysql数据库结合实现的,它具有使用方便、操作灵活、运行稳定、安全可靠等特点。关键词 互联网;Mysql;B/S;BBSAbstractThe society is a rapidly developed information society, people through the Internet can carry on the exchange of information. The forum is a Internet development of the Internet information service system, the user can conveniently realize the information exchange and file sharing. The research and Implementation Based on B/S mode BBS forum system, in combination with dynamic service webpage ( JSP ) and Mysql database developed this fast, friendly interface and simple system, the system adopts present popular MVC three layer architecture.This article from the BBS system background, feasibility analysis, demand analysis, overall design, detailed design and software testing, gives a detailed description of the system development process. The development of campus BBS forum system is designed for teachers and students to provide a platform for the exchange, for the majority of users to provide the exchange of experience, discuss the issue of online community, therefore, the forum of BBS basic function of the system is first published theme, followed by other researchers published according to the theme of his own views. In addition, in order to record the theme and the theme of the respondents published information, system also needs to provide user registration and landing function. Only registered users can publish after landing and returning to the theme, the browsing ( visitors ) can only browse the forum. This forum function is complete, can meet the needs of teachers and students, between students and students exchange.The system is based on MyEclipse8.5 and Mysql database integration realization, it is easy to use, flexible operation, stable operation, safety and reliability.Key words Internet Mysql B/S BBS 目 录摘 要IAbstractII第1章 绪论11.1 课题背景11.2 目的和意义21.3 系统设计思想21.4 系统开发环境31.4.1 B/S结构的数据库访问模式31.4.2 MyEclipse简介41.4.3 MySQL数据库简介41.5 论文的工作内容及论文的结构5第2章 可行性分析72.1 经济可行性72.2 技术可行性72.3 社会可行性72.4 业务流程图82.5 本章小结9第3章 需求分析103.1 业务描述103.2 华德计算机系BBS的需求分析113.2.1 数据流图113.2.2 数据字典123.3 本章小结18第4章 总体设计194.1 系统模块总体设计194.2 数据库设计204.2.1 数据库设计概述214.2.2 数据分析214.3 数据库的详细设计224.3.1 数据库的E-R图的设计224.3.2 数据表的设计254.4 本章小结26第5章 详细设计275.1 系统运行平台设置275.2 华德计算机系BBS主界面设计275.3 用户注册与登录网站设计与实现285.3.1 用户登录的设计与实现285.3.2 用户注册的设计与实现295.4 系统的设计与实现315.4.1 BBS前台系统主界面设计315.4.2 BBS后台管理主界面设计335.5 本章小结34第6章 软件测试356.1 测试的基本概念356.2 测试的环境和目的356.2.1 测试的环境356.2.2 测试的目的366.3 单元测试366.4 集成测试386.5 本章小结39结论40致谢41参考文献42附录1 译文43附录2 英文参考资料45第1章 绪论1.1 课题背景随着Internet的飞速发展,网络的不断普及,因特网的发展给人们带来了极大的方便,BBS最早是用来公布股市价格等类信息的,当时BBS连文件传输的功能都没有,而且只能在苹果计算机上运行。早期的BBS与一般街头和校园内的公告板性质相同,只不过是通过电脑来传播或获得消息而已。一直到个人计算机开始普及之后,有些人尝试将苹果计算机上的BBS转移到个人计算机上,BBS才开始渐渐普及开来。近些年来,由于爱好者们的努力,BBS的功能得到了很大的扩充。校园BBS具有的一些共同的基本功能,如:登陆注册、发表帖子、回复帖子、资料查询等。使同学之间可以借助BBS突破以往的封闭观念,让你足不出户也能认识新同学。如果是相对大型多线的校园BBS站,还可以彼此通过线上会议室讨论问题 。这些都是身为一个处于资讯爆炸的你我所不可或缺的帮手 ,有效地缩短人与人之间的距离,尤其是国际网路,更会令你有天涯若比邻的感觉!除了尽情地吸收别人发出的光亮 ,也可以尽情地展现自己的才华,慷慨地与人分享经验随着计算机技术、网络技术的不断发展和普及,正是基于这种现状,我们开发了这套校园BBS论坛系统,该系统充分发挥了计算机技术、网络技术的强大功能,最直接最充分地显示信息,从整体上改善了信息交流的管理,提高了信息的传播速度,实现了信息管理的网络化、自动化。本文讨论的是一个简易的校园BBS网站,它具有BBS网站应该具有的所有功能,包括用户注册、用户登录、发表文章、阅读文章、回复别人的文章等,所有操作都可以由用户在客户端浏览器中完成,而服务器中的JAVA程序会按用户的要求来完成对数据库的操作,并将结果传给Web服务器,再由Web服务器处理成HTML文件后发送到客户端浏览器。由于时间仓促,加之水平有限,不当之处在所难免,望各位老师批评指正。1.2 目的和意义BBS的中文翻译是“电子公告板”,校园BBS的目的便是能使师生及时参与到论坛信息的交流过程中来;校园BBS可以是学子们获取专业信息、解决学习问题的重要途径。由于大学课程学习的特殊性,强调学生自主的学习性,除了在课堂上请教老师、同学外,基本没有集体讨论的时间。而在BBS上,学子们可以提出问题,共同商量和讨论,还可以向其他老师,学姐学长们请教。同时老师们可以利用BBS提供更多的学习信息;校园BBS也是大学生情感交流的重要场所。大学生们随着年龄的增长,能够结交到的知心朋友越来越少,加上学业和竞争的压力,迫切需要一个倾吐、交流的空间,BBS正好给我们提供了这样一个平台,由于大家的年龄、学识、经验都具有同质性,因此彼此之间的交流更容易理解,BBS使得大学生的情感交流更加透明和坦诚。同时BBS还有丰富课外生活,向校外宣传我校等作用。而本人在此论坛的设计与开发过程中,能够起到技术知识和技能的综合运用与巩固,并且掌握到从开题报告到网站功能实现的系统思维与技能,为将来的工作起到一个很好的铺垫作用。1.3 系统设计思想一个好的校园BBS系统,首先应该满足安全性和可靠性,是能很好的供同学老师之间进行交流的平台,并提供友好的操作界面,强大的容错能力,因此需要正确的设计指导思想,选择可靠、合适的操作系统和开发环境,通过计算机技术和网络技术的完美结合,实现安全、可靠、友好的校园BBS系统。1. 实用性通过校园BBS论坛的方式,校方可以在论坛上发布各项通知,可以让同学能够及时准确的了解校园动态,同时通过交流平台能够展示每一个同学的风采,发布个人对一些事物的看法,增强个人与个人之间,团体与团体之间,个人与团体之间的交流,在Internet上实现信息的传递,提高办事效率。2. 先进性本网站采用现在很流行的B/S开发模式,采用Structs框架进行开发,与MySQL数据库高性能组合,完全可以满足上述功能的需求3. 可靠性一个实用的系统必须是可靠的,本系统通过合理而先进的网络设计以及软、硬件的优化选型,可保证系统数据传输和交互的正确性。4. 易用性软件界面简易,流程合理,结构清晰,满足用户视觉使用习惯。易使用和维护等,将实施成本降到了最低。对软件使用与实施具重要意义。5. 采用标准技术本系统的所有设计遵循国际上现行的标准进行,以提高系统的开放性。6. 跨平台性由于本系统采用Java语言开发,所以本系统在先天上就具备了跨平台特性。因此可以运行在任何环境下,包括:Windows、Linux和Unix等主流操作系统。7. 可扩展性及灵活性系统的设计以方便未来业务的扩展和系统扩充为目标,系统要求能够方便的升级,充分保护系统的投资。1.4 系统开发环境开发环境:Windows XP Tomcat 6.0 JDK1.6硬件实现:自己的电脑开发语言:Java语言数据库:MySQL开发工具:MyEclipse 8.5预期成果:一个可扩展的基于MVC模式的校园BBS论坛1.4.1 B/S结构的数据库访问模式B/S(Browser/Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这样的结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端来实现现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握,成本也比较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,用 不同的接入方式(比如LAN,WAN,Internet/Intranet等)访问和操作共同的数据库;它能有效的保护数据平台和管理访问权,服务器数据库也很安 全。特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便,快捷,高效。B/S架构软件的优势与劣势:1. 维护和升级方式简单。2. 成本降低,选择更多。3. 应用服务器运行数据负荷较重1.4.2 MyEclipse简介MyEclipse,是一个十分优秀的用于开发Java,J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。MyEclipse企业级工作平台(MyEclipse Enterprise Workbench,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,SQL,Hibernate。 对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。 简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的JavaEE集成开发环境,支持代码编写、配置、测试以及除错,MyEclipse6.0以前版本需先安装Eclipse。MyEclipse6.0以后版本安装时不需安装Eclipse。 1.4.3 MySQL数据库简介MySQL是一个精巧的SQL数据库管理系统,虽然它不是开放源代码的产品,但在某些情况下你可以自由使用。由于它的强大功能、灵活性、丰富的应用编程接口(API)以及精巧的系统结构,受到了广大自由软件爱好者甚至是商业软件用户的青睐,特别是与Apache和PHP/PERL结合,为建立基于数据库的动态网站提供了强大动力。MySQL是一个真正的多用户、多线程SQL数据库服务器。SQL(结构化查询语言)是世界上最流行的和标准化的数据库语言。MySQL是以一个客户机/服务器结构的实现,它由一个服务器守护程序mysqld和很多不同的客户程序和库组成。 MySQL 主要目标是快速、健壮和易用。最初是因为我们需要这样一个SQL服务器,它能处理与任何可不昂贵硬件平台上提供数据库的厂家在一个数量级上的大型数据库,但速度更快,MySQL就开发出来。自1996年以来,我们一直都在使用MySQL,其环境有超过 40 个数据库,包含 10,000个表,其中500多个表超过7百万行,这大约有100 个吉字节(GB)的关键应用数据。 MySQL数据库的主要功能只在组织和管理很庞大或复杂的信息和基于WEB的库存查询请求不仅仅为客户提供信息,而且还可以为您自己使用数据库可以提供如下功能: 1减少记录编档的时间 2减小记录检索时间 3灵活的查找序列 4灵活的输出格式 5多个用户同时访问记录1.5 论文的工作内容及论文的结构本次毕业设计的主要工作内容为华德学院计算机系BBS的设计与实现。作者首先对系统进行了可行性研究、需求分析和总体设计。按照用户的需求分析,将系统分成两大模块:系统前台和后台管理。接着,在前一步工作的基础之上,又对各个模块细分为若干个模块,并分别进行了编码实现。最后将系统各个模块整合,测试系统各部分整合后的功能、稳定性等。本文共6章,按如下方式组织: 第1章介绍了华德学院计算机系BBS系统的背景、目的和意义以及系统的设计思想和开发环境。第2章对华德学院计算机系BBS系统的可行性进行了多方面的分析与研究,分析开发该系统的技术难点与开发环境的要求。第3章对华德学院计算机系BBS系统进行了需求分析,主要根据论坛的需要来详细地分析本系统的需求情况,并从数据流图和数据字典分析出系统部分的逻辑模型。第4章对系统进行了总体设计,系统地描述了本系统的设计思想以及设计思路,并对数据库进行了详细设计。第5章介绍了系统的运行平台设置,并给出了系统各个模块的功能及其实现方式。第6章介绍了多种测试方法及步骤,并对华德学院计算机系BBS系统进行了测试。第2章 可行性分析系统可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决,并通过需求分析,把软件功能和性能的总体概念描述为具体的软件需求规格说明,进而建立软件开发的基础,因此做好可行性研究和需求分析是开发出好系统的前提。2.1 经济可行性主要是对项目的经济效益进行评估,本系统模拟的是提供一个供华德计算机系同学交流的平台,为广大同学提供交流经验、探讨问题的社区。但实际只是用于个人的毕业设计,只是模拟,也不存在资金的流动,故在经济上是可行的。2.2 技术可行性根据该系统目标来衡量所需的技术是否具备,一般可从硬件和软件的性能要求、环境条件、操作人员水平和数量等方面去考虑和分析。考虑到系统实施的可行性,在软件方面选择了如今较流行的Java来进行网站前台设计,使用MySQL实现后台数据库的存储。在硬件方面,则选择空间较大,只要是奔腾系列及以上的计算机,内存在2G以上,硬盘在320GB以上,都可以满足系统的开发需要,当然硬件的配置越高,系统的开发与运行会更流畅。考虑到如今的家用或商用电脑硬件的整体配置水平,系统在硬件方面是可行的。在软件方面,MyEclipse提供了强大的控件功能,所以应用起来非常方便,技术方面比较成熟,而MySQL更是一个非常完善的数据库,在安全性、可用性、可靠性方面都是可以信赖的,因此在技术方面是可行的。2.3 社会可行性随着Internet技术的快速发展,BBS论坛已成为人们彼此沟通、交流信息的主要方式。在论坛上,人们可以对某一领域提出自己遇到的问题,随后,论坛上的其他人会根据自己的学识、经验发表意见或提出问题的方法。校园BBS论坛缩短了同学与同学之间、同学与老师之间的距离,可以通过这个平台及时获得校园的各项通知,也可以进行学习以及情感的沟通,所以说一个好的BBS平台对于学校是必不可少的。2.4 业务流程图对于一个校园BBS系统,其主要分为系统前台和后台管理两大模块,前台用户登录后可浏览论坛主页面,进入各个版面后可浏览主题、发表主题、回复主题等功能;管理员登陆后可进行后台管理,主要包括用户管理、栏目管理、主题管理回复管理等。华德计算机系BBS的业务流程图,如图2-1所示。图2-1 华德计算机系BBS业务流程图2.5 本章小结综上所述,本系统的开发无论在技术方面还是运行方面都是可行的,目前,流行的领先技术完全能满足本系统在技术方面的要求。在本章同时对系统的需求进行了详细分析和论述,对系统的需求也更加明确,因此,可以在此基础上开展总体设计工作。第3章 需求分析需求分析阶段的工作结果是开发软件的重要基础,大量统计数字表明,软件系统15%的错误起源于错误的需求。为了提高软件的质量,确保软件开发成功,降低软件的开发成本,一旦对目标系统提出一组要求之后,必须严格验证这些需求的正确性。一般来说,应从下面四个方面进行验证:1. 一致性:所有需求必须是一致的,任何一条需求不能和其他需求互相矛盾。2. 完整性:需求必须是完整的,规格说明书应该包括用户需要的每一个功能或性能。3. 现实性:指定的需求应该是现有的硬件技术和软件技术基础上可以实现的。对硬件技术的进步可以做些预测,对软件技术的进步很难做些预测,只能从现有的技术水平出发判断需求的现实性。4. 有效性:必须证明需求是正确有效的,确保能解决用户面对的问题。在需求分析阶段,我们要确定系统必须做什么。在这一阶段,我们要以可行性分析阶段的要求对目标系统提出更加完整、清晰的具体要求。3.1 业务描述通过对网上论坛的调研和查阅资料分析,初步认为此系统的开发主要包括两大部分系统前台以及后台管理。系统前台:系统前台模块提供给所有用户使用,用户包括注册用户和普通游客,二者所拥有的功能不同。普通游客只能浏览论坛首页,而注册用户则可发表主题、浏览主题、发表主题已经回复主题等操作。后台管理后台管理主要由管理员使用,可对论坛中相关信息进行管理、维护,普通用户无权使用。后台管理主要包括用户管理、栏目管理、主题管理、恢复管理、管理员注销等功能模块。3.2 华德计算机系BBS的需求分析随着网络的全球化普及、信息时代的到来,校园中上网人数日益聚增,几乎达到每人都有自己的电脑。如果能够足不出户便能了解校园的最新动态是最好不过了,校园BBS这时候就发挥了他的作用,学生会以及各社团可以通过校园BBS来发布他的招聘信息或者活动通知,校内领导也可以通过BBS传达最新的通知,而且也可以通过BBS这个平台来进行学习交流,增进学生与学生或者学生与老师之间的感情,更可以通过BBS来发布各种学习资料,让同学们能够共同进步。互联网的广泛运用,BBS也是对校外宣传的一种手段,高中生家长可以通过这个平台来加深对学校的了解,从而达到招收优秀学生的目的。3.2.1 数据流图数据流图(Data Flow Diagram,简称DFD)是新系统逻辑模型的主要组成部分,它可以反映出新系统的主要功能、系统与外部环境间输入输出、系统内部的处理、数据传送、数据存储等情况。它的绘制依据是现行系统流程图,数据流图是管理信息系统的总体设计图。其中数据处理指对数据的逻辑处理功能,也就是对数据的变换功能。数据流是指处理功能输入或输出,用一个水平箭头或垂直箭头表示。数据存储是数据保存的地方。数据源去向表示数据的来源或数据的流向。数据流图是描述数据处理过程的工具。重要性在于它是表示系统逻辑模型常用工具,图中不存在任何具体物理元素,只表示信息在系统中流动和处理情况。数据流图是逻辑系统的图形化表示,因此,它是系统分析员与用户进行的极好工具。华德计算机系BBS数据流图顶层图,如图3-1所示。图3-1 系统数据流图顶层图3.2.2 数据字典数据字典是有关数据的集合。数据字典的作用是在软件分析和设计的过程中给人提供关于数据描述信息,数据字典与数据流图的关系是紧密相联的。在软件分析和设计过程中为有关人员提供关于数据描述信息的查询,以保持数据的一致性。数据字典也是进行数据库开发的重要基础。设计阶段,如果在字典中追加使用数据的程序模块等信息,则有助于估计改变一个数据所产生的影响。本系统的数据字典描述主要包括数据项的定义和数据流的定义。1数据项的定义系统顶层数据项定义如图表3-1所示。表3-1 数据项定义编号名称别名类型长度S01-01USERNAME用户名Varchar220S01-02PASSWORD密码Varchar220S01-03NAME真实姓名Varchar220S01-04SEX性别Varchar22S01-05AGE年龄Varchar22S01-06QUANXIAN用户级别Varchar250S01-07OICQOICQVarchar220S01-08SIGNATURE个人主页Varchar220S01-09GRZY个人签名Varchar2100续表3-1S01-10GRADE年级Varchar26S01-11ADDRESS联系地址number8S01-12TX头像Varchar2100S01-13MANAGER版主Varchar210S01-14CREATETIME创建时间Varchar25S01-15FORUNAME论坛名Varchar210S01-16TITLE回复主题标题Varchar210S01-17CONTENT回复主题内容Varchar2300S01-18AUTHOR回复主题作者Varchar2100S01-19SUBMITTIME回复主题时间DateS01-20TOPICID主题编号Varchar220S01-21TOPICNAME主题名称Varchar250S01-22XQ回复主题心情Varchar220S01-23SUBMITTIME主题提交时间DateS01-24ID主题编号Varchar220S01-25CONTENT主题内容Varchar2500S01-26AUTHOR主题作者Varchar250S01-27RQ人气Varchar220S01-28FORUMID论坛编号Varchar230S01-29TITLE主题标题Varchar260S01-30FORUMNAME论坛名称Varchar21002数据流定义数据流编号:D1-01数据流名称:要注册的信息数据流来源:用户输入数据流去向:P1-01数据流组成:S01-01+S01-02+S01-03+S01-04+S01-05+S01-06+S01-07+ S01-08+S01-09+S01-10+S01-11+S01-12数据流编号:D1-02数据流名称:要注册的信息数据流来源:P1数据流去向:F1-01数据流组成:S01-01+S01-02+S01-03+S01-04+S01-05+S01-06+S01-07+ S01-08+S01-09+S01-10+S01-11+S01-12数据流编号:D1-03数据流名称:登陆信息数据流来源:用户输入数据流去向:P1-02数据流组成:S01-01+S01-02数据流编号:D1-04数据流名称:用户信息数据流来源:P1-02数据流去向:F1-01数据流组成:S01-01+S01-02数据流编号:D1-05数据流名称:要回复数据流来源:P5数据流去向:P1-02数据流组成:S01-16+S01-17+S01-18+S01-19+S01-20+S01-21+S01-22数据流编号:D1-06数据流名称:回帖信息数据流来源:P1-03数据流去向:F1-02数据流组成:S01-16+S01-17+S01-18+S01-19+S01-20+S01-21+S01-22数据流编号:D1-07数据流名称:要浏览信息数据流来源:P1-02数据流去向:P1-04数据流组成:S01-09+ S01-10+ S01-11+ S01-12+ S01-13+ S01-14数据流编号:D1-08数据流名称:浏览回复信息数据流来源:P1-04数据流去向:F1-02数据流组成:S01-16+S01-17+S01-18+S01-19+S01-20+S01-21+S01-22数据流编号:D1-09数据流名称:浏览栏目信息数据流来源:P1-04数据流去向:F1-04数据流组成:S01-16+S01-17+S01-18+S01-19+S01-20+S01-21+S01-22数据流编号:D1-10数据流名称:浏览主题信息数据流来源:P1-04数据流去向:F1-04数据流组成:S01-16+S01-17+S01-18+S01-19+S01-20+S01-21+S01-22数据流编号:D1-11数据流名称:主题发布信息数据流来源:P1-02数据流去向:P1-05数据流组成:S01-24+S01-25+S01-26+S01-27+S01-28+S01-29+S01-30数据流编号:D1-12数据流名称:发布信息数据流来源:P1-05数据流去向:F1-04数据流组成:S01-24+S01-25+S01-26+S01-27+S01-28+S01-29+S01-30数据流编号:D1-13数据流名称:登陆信息数据流来源:管理员数据流去向:P1-06数据流组成:S01-01+S01-02+S01-03+S01-04+S01-05+S01-06+S01-07+ S01-08+S01-09+S01-10+S01-11+S01-12数据流编号:D1-14数据流名称:用户信息数据流来源:P1-06数据流去向:F1-01数据流组成:S01-01+S01-02+S01-03+S01-04+S01-05+S01-06+S01-07+ S01-08+S01-09+S01-10+S01-11+S01-12数据流编号:D1-15数据流名称:管理信息数据流来源:P1-06数据流去向:P1-07数据流组成:S01-01+S01-02+S01-03+S01-04+S01-05+S01-06+S01-07+ S01-08+S01-09+S01-10+S01-11+S01-12数据流编号:D1-16数据流名称:用户管理数据流来源:P1-07数据流去向:F1-01数据流组成:S01-01数据流编号:D1-17数据流名称:回复管理数据流来源:P1-07数据流去向:F1-02数据流组成:S01-15数据流编号:D1-18数据流名称:栏目管理数据流来源:P1-07数据流去向:F1-03数据流组成:S01-20数据流编号:D1-11数据流名称:主题管理数据流来源:P1-07数据流去向:F1-03数据流组成:S01-283. 数据存储数据存储编号:F1-01数据存储名称:用户表数据存储简述:用来存储用户的各种信息。数据存储编号:F1-02数据存储名称:回复表数据存储简述:用来暂时存储用户所回复的信息。数据存储编号:F1-03数据存储名称:栏目表数据存储简述:用来存储论坛分类的信息。数据存储编号:F1-04数据存储名称:主题表数据存储简述:用来存储论坛回复主题的信息。4. 处理逻辑处理逻辑编号:P1-01处理逻辑名称:用户注册简述:用户输入相应信息后即可注册成功。处理逻辑编号:P1-02处理逻辑名称:登陆简述:输入用户名和密码即可登陆成功。处理逻辑编号:P1-03处理逻辑名称:回复简述:可以对相应主题的内容发表自己的看法即回复。处理逻辑编号:P1-04处理逻辑名称:浏览简述:浏览论坛内容,如浏览主题、浏览回复、浏览栏目列表。处理逻辑编号:P1-05处理逻辑名称:发布简述:可以在栏目下发表自己的主题。处理逻辑编号:P1-06处理逻辑名称:管理员登陆简述:管理员登陆,跳到和用户登陆不同的管理页面。处理逻辑编号:P1-07处理逻辑名称:管理简述:管理员可以根据其权限进行相应的管理。3.3 本章小结综上所述,本系统的开发无论在技术方面还是运行方面都是可行的,目前,流行的领先技术完全能满足本系统在技术方面的要求。在本章同时对系统的需求进行了详细分析和论述,对系统的需求也更加明确,因此,可以在此基础上开展总体设计工作。第4章 总体设计4.1 系统模块总体设计通过层次方框图来表示网站中各模块之间的关系。层次方框图是用树形结构的一系列多层次的矩形框描绘数据的层次结构。树形结构的顶层是一个单独的矩形框,它代表完整的数据结构,下面的各层矩形框代表各个数据的子集,最底层的各个矩形框代表组成这个数据的实际数据元素(不能再分割的元素)。随着结构的精细化,层次图对数据结构也描绘得越来越详细,这种模式非常适合于总体设计阶段的需要。从对顶层信息的分类开始,沿着图中每条路径反复细化,直到确定了数据结构的全部细节为止。本系统一共分为两大子系统,每个子系统之间虽然在表面上是相互独立的,但是在对数据库的访问上是紧密相连的,每个子系统访问的是同一个数据库,只是所访问的表不同而已。每个子系统中的模块功能都是按照在调研中搜集的资料进行编排制作的。依据上述功能的分析,系统在两大子系统的基础上主要分为两大个模块:系统前台:主要面向用户进行操作;主要功能: 用户注册、用户登录、论坛浏览(显示论坛名称,显示论坛创建时间)、主题浏览(原文浏览、回复文章浏览、作者相关信息浏览、回复文章作者相关信息浏览)、发表主题(发表新主题、回复主题)、安全退出;后台系统:主要由管理员进行各种管理;主要功能:后台管理:管理员登录、用户管理(查询用户,编辑用户,删除用户)、栏目管理(更新版主,新增论坛,删除栏目)、主题管理(主题查询,主题删除)、回复管理(回复文章查询,回复文章删除)、管理员注销。该系统功能模块图,如图4-1所示。图4-1 系统功能模块图4.2 数据库设计通过结合本系统的功能及所选开发工具和数据库系统的特点,对系统数据库进行设计,建立一个具有良好的数据组织结构的数据库,应遵循的原则有:1. 可能减少数据冗余和重复。2. 结构设计和操作设计相结合。3. 数据结构具有相对的稳定性。由于数据库中所保存的数据是系统中非常重要的资源,所以在数据库设计时一定要注意数据结构的安全性、完整性,并发控制与恢复。该系统采用MySQL作为后台数据库去存储所有与系统关的数据,通过对整个校园论坛系统的运行过程和数据流程分析,设计出实际的数据库实体,以及他们之间的关系,为后边的数据库逻辑结构设计打基础。论坛系统信息的储存一般是在文件或者数据库中,相比之下数据库要简单高效,能对论坛进行更好的控制,也能对资料提供一些严正和保护。所以目前流行的论坛都是使用的数据库系统。4.2.1 数据库设计概述根据系统的需求分析和数据库的需求分析,同时根据相关部分的数据流程图,对系统数据库进行概念结构设计。根据数据关系模型和数据库关系模式的范式,我们创建了网上服装商城系统数据表,本系统共有4个数据表,分别是:用户表(tb_user),论坛表(tb_forum),主题表(tb_topic),回复表(tb_response)。4.2.2 数据分析数据分析过程同数据库的逻辑结构和物理结构密切相关,需要确定、编制、组织、筛选应用程序所使用的信息。它以一种能够分析和分类的方式来捕获用户的所有信息,这使得某一模型可以直接转化成数据库结构。我们使用一种信息建模技术,这种技术是通过实体、关系、属性三种基本对象来定义信息。实体是需要维护和使用的相关特性的集合体;属性是实体的特性或特征;关系是实体之间的联系,关系为实体记录(实例)之间的联系和交互作用方式建立了模型。要确定实体和关系的性质,用户必须确定单个实体和他们相关的属性。为每个对象定义一个完整的与商业相关的描述以及他单独使用的要求,这也包括确定此实体是否使用应用程序的永久需求,每种关系的基本定义使用了商业定义和与关系相连接的需求。在为实体确定相关的属性过程中,也需要确定此实体的主键和索引,并且要确定在每个实体中怎样组织这些属性,确定属性的数据类型和它是否为空值。在高层次的描述过程中,还可以确定所有扩展属性信息,包括长度、格式、编辑风格、校验规则和初始值。单独实体的属性被组织起来,用户就能够开始以某一种组织方式来给实体分类。用户必须通过关系,来为实体分组的方式确定分类模式,这是抽象化的初始层,或者说是通过隐藏模糊的信息来提高对分析的理解,通过将数据分类成组,就产生了相关分组的不同类型,这样更加易于观察和分析。4.3 数据库的详细设计数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求).数据库和设计概述1. 数据库是信息系统的核心和基础,把信息系统中大量的数据按一定的模型组织起来,提供存储、维护、检索数据的功能,使信息系统可以方便、及时、准确地从数据库中获得所需的信息。2. 数据库是信息系统的各个部分能否紧密地结合在一起以及如何结合的关键所在。3. 数据库设计是信息系统开发和建设的重要组成部分。4.3.1 数据库的E-R图的设计数据模型是是数据特征的抽象,从抽象层次上描述了系统的静态特征、动态行为和约束条件,为数据库系统的信息表与操作提供一个抽象的框架。描述了数据结构、数据操作及数据约束。E-R模型的基本概念 E-R图概念化地构建实体间关系的模型,这使得它们区别于数据库模型图。E-R图的理念是:项目所有参与者能理解E-R图。E-R图由不同实体类型、关系、特性和类型构成。实体是诸如用户的实际对象,有时更抽象,但必须有业务意义。特性用于描述实体,关系用于实体之间1. 实体:现实世界中的事物; 2. 属性:事物的特性; 3. 联系:现实世界中事物间的关系。实体集的关系有一对一、一对多、多对多的联系。根据以上对系统所做的分析能够确定,每个功能模块可以抽象出一个或多个实体对象,例如用户、论坛、主题、回复主题等实体对象。这些实体对象彼此联系,并且最终被创建成数据表结构。1. 用户实体对象用户实体包括用户编号、用户名、用户签名、用户头像、用户等级等用户相关属性,用户的E-R图为:图4-2 用户实体E-R图2. 论坛实体对象论坛实体对象包括论坛编号、论坛名称等属性,论坛的E-R图为:图4-3 论坛实体E-R图3. 主题实体对象主题实体包含主题编号、主题标题、主题内容、主题作者、发表时间、论坛编号、论坛名称、人气等相关属性,主题的E-R图为:图4-4 主题实体E-R图4. 回复主题实体对象回复主题实体对象包括回复主题编号、回复主题标题、回复主题内容、回复主题作者、回复主题时间、主题编号、主题名称、回复作者心情等属性,主题的E-R图为:图4-5 主题实体E-R图E-R模型的“联系”用于刻画实体之间的关联。一种完整的方式是对局部结构中任意两个实体类型,依据需求分析的结果,考察局部结构中任意两个实体类型之间是否存在联系。若有联系,进一步确定是1:n,m:n,还是1:1等。还要考察一个实体类型内部是否存在联系,两个实体类型之间是否存在联系,多个实体类型之间是否存在联系等等。数据库E-R图如图4-6所示。图4-6 数据库E-R图图4-6所示的数据库模型描述了整个BBS系统的数据结构,包括用户、论坛、主题、主题回复等实体,这4个实体之间没有直接关联关系,这就意味着开发过程比较简单。4.3.2 数据表的设计由于数据库中所保存的数据是系统中非常重要的资源,所以在数据库设计时一定要注意数据结构的安全性、完整性,并发控制与恢复。因此,本系统中的数据库采用MySQL数据库实现,共包括4个数据表,其结构描述如下。表名:tb_forum数据来源:论坛表表结构如表4-1所示。表4-1 tb_forum (论坛表)序号英文名中文名类型长度1id论坛编号Inteter112forumname论坛姓名Varchar2203manager版主Varchar21004createtime论坛创建时间timestamp19表名:tb_user数据来源:用户表表结构如表4-2所示。表4-2 tb_user (用户表)序号英文名中文名类型长度1id用户IDInteter82username用户名Varchar2203password密码Varchar2104realname姓名Varchar2205sex性别Varchar246age年龄Varchar247email电子邮件Varchar22008oicqOICQVarchar289grade用户级别Varchar25010grzy个人主页Varchar25011signature用户签名Varchar230012tx头像Varchar230表名:tb_response数据来源:回复主题表表结构如表4-3所示。表4-3 tb_response (回复

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论