毕业论文---汽车论坛的设计与实现论.doc_第1页
毕业论文---汽车论坛的设计与实现论.doc_第2页
毕业论文---汽车论坛的设计与实现论.doc_第3页
毕业论文---汽车论坛的设计与实现论.doc_第4页
毕业论文---汽车论坛的设计与实现论.doc_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

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

文档简介

PINGDINGSHAN UNIVERSITY 毕业论文(设计)题 目: 汽车论坛的设计与实现 院(系): 软件学院 专业年级: 软件工程 2009级 姓 名: xxx 学 号: 指导教师: 2012年12月12日原 创 性 声 明本人郑重声明:本人所呈交的毕业论文,是在指导老师的指导下独立进行研究所取得的成果。毕业论文中凡引用他人已经发表或未发表的成果、数据、观点等,均已明确注明出处。除文中已经注明引用的内容外,不包含任何其他个人或集体已经发表或撰写过的科研成果。对本文的研究成果做出重要贡献的个人和集体,均已在文中以明确方式标明。本声明的法律责任由本人承担。论文作者签名: 日 期: 关于毕业论文使用授权的声明本人在指导老师指导下所完成的论文及相关的资料(包括图纸、试验记录、原始数据、实物照片、图片、录音带、设计手稿等),知识产权归属平顶山学院。本人完全了解平顶山学院有关保存、使用毕业论文的规定,同意学校保存或向国家有关部门或机构送交论文的纸质版和电子版,允许论文被查阅和借阅;本人授权平顶山学院可以将本毕业论文的全部或部分内容编入有关数据库进行检索,可以采用任何复制手段保存和汇编本毕业论文。如果发表相关成果,一定征得指导教师同意,且第一署名单位为平顶山学院。本人离校后使用毕业论文或与该论文直接相关的学术论文或成果时,第一署名单位仍然为平顶山学院。论文作者签名: 日 期: 指导老师签名: 日 期: 平顶山学院本科毕业设计汽车论坛的设计与实现摘 要随着网络技术的发展,通过网络交流的方式也随之增多。为了方便人们在某一专业领域探讨问题和发表意见,网络上出现了面对不同领域的在线论坛。汽车论坛正是在这样的背景下产生的,能为用户提供准确及时的汽车信息交流平台。本系统选择MyEclipse为开发平台,B/S为开发模式,JAVA为开发语言,JSP为前台页面开发技术。同时系统使用MySQL创建后台数据库,利用JDBC实现对数据库的操作。系统中设计并实现三种用户角色:普通用户、管理员和版主。所有角色通过账号登录论坛,不同的角色拥有不同的功能权限。普通用户主要可以在线看帖,发帖和回帖。管理员负责汽车论坛系统的数据更新维护,版块、帖子及用户信息的管理。版主主要辅助管理员对系统版块及帖子进行管理。系统实现了预期的功能,经测试,并能正常运行。论文阐述了汽车论坛系统的背景、研究现状及意义,介绍了系统开发所使用的环境、工具以及开发语言,并对相关的开发技术进行了阐述。按照软件开发生命周期论述了需求分析、概要设计、系统详细设计与实现的过程。具体论述了开发模式、数据库的实现、系统的设计目标和各功能模块的实现。关键词:汽车论坛, B/S模式, JSP, MySQLDesign and Implementation of Car Forum AbstractWith the development of network technology, a way to communicate through the network also increases. Appear on the network in order to facilitate the people to explore issues and express their views in a professional field, the face of the different areas of the online forum. Car Forum in this context, which is able to provide users with accurate and timely the car information exchange platform.The system choose MyEclipse as a development model for the development platform, B/S, JAVA development language, JSP for the front page development technology. At the same time the system created using MySQL back-end database, the JDBC database operations. The system was designed and implemented in three user roles: administrator, moderators and ordinary users. All roles Forum account login, different roles have different functions permission. Ordinary users can watch online posts, posting and replies. The administrator responsible for automotive forum system data update and maintain pages, posts and user information management. Moderator assistant administrator management system forum and posts. System to achieve the desired functionality has been tested and can operate normally.The paper described the background of the Car Forum system, research status and significance, system development environment, tools, and the development of language, and development technology. Discusses the needs analysis, outline design, detailed design of the system and the realization of the process according to the software development life cycle. Specifically discusses the development model, the realization of the database, the design goals of the system as well as the realization of the various functional modules.Keywords: Car Forum, B/S Model, JSP, MySQL平顶山学院本科毕业设计目 录1 绪 论11.1 课题的背景及意义11.2 研究现状11.3 论文的结构安排21.4 小结22 相关技术和工具介绍32.1 开发模式32.2 统一建模语言32.3页面开发技术42.3.1 JSP42.3.2 Ajax52.3.3 jQuery52.3.4 Json62.3.5 CSS62.4 开发工具62.4.1 MySQL数据库62.4.2 Web服务器72.4.3 MyEclipse编程工具72.5 小结83 需求分析93.1 系统概述93.2 业务流程及设计目标93.3 功能需求103.4 数据流程分析143.5 性能需求153.6 小结164 系统概要设计174.1 系统总体设计174.2 系统功能设计174.3 数据库设计和实现184.3.1 数据库需求分析184.3.2 数据库概念结构设计204.3.3 数据库逻辑结构设计224.3.4 数据库实现224.4 小结245 系统详细设计与实现255.1 系统类和接口的设计255.1.1 类的设计255.1.2 接口的设计275.2 系统功能模块设计与实现275.2.1 用户注册模块275.2.2 用户登录模块295.2.3 个人信息模块305.2.4 发帖模块315.2.5 回帖模块335.2.6 用户管理模块345.2.7 版块管理模块355.2.8 帖子管理模块365.3 小结386 测试396.1 测试意义396.2 测试环境396.3 性能测试406.4 功能测试406.5 测试结果426.6 小结427 结束语437.1 总结437.2 展望43附 录45参考文献49致 谢501 绪 论1汽车论坛系统的实现,有利于人们在汽车领域进行交流。下面就汽车论坛系统的背景、意义、研究现状和论文的结构安排做详细介绍。1.1 课题的背景及意义人类正在进入一个信息化的时代。这个时代是以计算机的发展为基础,以互联网为主要工具和手段,在政治、经济和传播等诸多方面日益展现出与过往一切世代皆不同的面貌。目前中国的网民人数已逾4亿,并且该数字还在一直上升。为了更好地满足不同网民的需求,网络上出现了方便人们在某一专业领域探讨问题和发表意见的在线论坛。在论坛上人们可以对该领域提出自己的问题,随后论坛上的其他用户会根据自己的学识、经验发表意见或提供该问题的解决方法。不难看出,国内的论坛将向着个性化和专业化的方向发展。同时,随着经济的飞速发展,汽车也已成为人们出门必不可少的交通工具,但是了解汽车相关的专业性信息却局限在当面询问4S店员或车主、网页浏览查询等方式上,虽然也能获取一些信息,但耗费了大量的人力物力,且信息面较窄,评价较为主观导致信息不准确。因此,为广大汽车爱好者开发一个论坛系统,提供在线交流的平台,是符合现实需求和时代潮流的的。汽车论坛系统,旨在为用户提供安全便捷的汽车信息交流平台,用户可以通过注册、登录本系统进行发帖、回帖、搜索和查看相关车型的参数配置等操作,实现用户与用户之间在网络上讨论学习。从而使用户更方便快捷地理解相关车型的最新报价和掌握不同车型的实际使用状况。1.2 研究现状最初,汽车论坛像大多数论坛一样只是用来发布公共信息和讨论问题的在线交流平台。后来,论坛用户需求越来越多,汽车论坛的功能也越来越丰富,不仅仅可以发表文字,更多地可以使用多媒体。因此,内容丰富的汽车论坛越来越受到广大用户的好评。目前网络上存在的汽车之家论坛、易车网论坛和爱卡汽车论坛等都有相对比较完善的功能和丰富的内容,且也很受广大用户的喜爱。经过比较可以发现汽车之家论坛专业性强一点,易车网论坛互动性、多元化一点,爱卡汽车论坛主要供车友聚在一起沟通。1.3 论文的结构安排任何软件要从问题定义开始,经过开发、使用和维护,直到最后被淘汰的整个过程来完成软件生命周期1。汽车论坛网站的设计和实现课题的工作将主要分以下几个章节来进行:第一章 绪论,主要介绍课题的背景以及本文的框架;第二章 开发关键技术和工具,重点介绍系统开发的几种关键技术和工具;第三章 需求分析,主要对本系统进行了功能分析和包括软件配置、硬件配置和网络配置的配置分析;第四章 系统概要设计,重点介绍了本系统的数据分析和数据字典、数据概念结构设计和数据库逻辑结构设计;第五章 系统详细设计与实现,详细介绍了本系统各个模块的设计和实现过程;第六章 系统测试,主要介绍了测试的原则、分类以及本系统的测试用例;第七章 总结本系统的功能及结构,展望系统的前景和下一步的设计目标。1.4 小结本章首先介绍了课题的背景及意义,明解了研究该系统的重要性。接着介绍了系统的外研究现状。最后介绍了研究内容,对自己所研究的内容进行了进一步的分析,同时还得出了整个系统基本构架。2 相关技术和工具介绍为了成功实现汽车论坛系统,选用成熟的技术和便捷的开发工具有助于项目的实施。下面就汽车论坛系统开发过程应用到的相关模式、技术、方法和开发工具等方面进行介绍。2.1 开发模式B/S模式是一种以Web技术为基础的新型网络管理信息系统平台模式,B/S结构把传统两层C/S模式中的服务器部分分解为Web服务器和数据库服务器,从而构成一个三层结构的客户服务器体系。它的工作原理是:客户端通过一个通用的浏览器向Web服务器发出数据处理请求,Web服务器将启动相应的进程来响应浏览器的请求,如果发现在客户端的请求中包括数据存取,那么Web服务器将向数据库服务器发出处理数据的请求,数据库服务器接收并做处理,把结果传回给Web服务器,最后由Web服务器动态生成嵌入处理结果的超文本标记语言(Hypertext Markup Language,HTML)代码返回给客户机浏览器2。B/S模式的优点主要有:首先,B/S模式适用范围广,一般只要有操作系统和浏览器就行,与操作系统平台关系最;其次,系统维护简单。B/S模式程序的开发和维护等工作都集中在服务器端;当需要升级时,只需要更新服务器端的软件,而不必更换客户端软件,实现系统的无缝升级,减少了工作量,降低了系统维护与升级的成本;最后,B/S模式不需对用户进行专门培训,用户只需会使用浏览器就可以正常使用系统。2.2 统一建模语言统一建模语言(Unified Modeling Language,UML)被对象管理组织(Object Management Architecture ,OMG)采纳为标准建模语言,成为业界的标准。UML作为一种定义良好、易于表达、功能强大且普遍适用的建模语言,融入了软件工程领域的新思想、新方法和新技术,成为面向对象技术学习中不可缺少的一部分。UML的作用不仅在于支持面向对象的分析与设计,还支持从需求分析开始的软件开发的全过程3。UML作为一种建模语言,在项目开发过程中的作用,总结起来主要有以下几个方面:1.UML作为一种建模语言,为用户提供了一种易用的、具有可视化建模能力的语言,能够使用户使用该语言进行系统的开发工作,并且能够进行有意义的建模互换;2.UML为面向对象建模语言的核心概念提供了可扩展性和规约机制;3.支持高级的开发概念;4.集成了优秀的开发实践成果和经验。2.3页面开发技术在当今企业级应用解决方案中,Java Web凭借其强劲的开源社区呈现出一份欣欣向荣的景象,为我们提供稳健的企业级应用的同时节省了不少成本。Java Web,是用Java技术来解决相关web互联网领域的技术总和。web包括:web服务器和web客户端两部分。Java在客户端的应用有java applet不过现在使用的很少,Java在服务器端的应用非常的丰富,比如Servlet,JSP和第三方框架等等。Java技术对Web领域的发展注入了强大的动力4。2.3.1 JSPJSP即Java Server Pages,它是由Sun Micro System公司于1999年6月推出的新一代开发语言,是基于Java Servlet以及整个Java体系的Web开发技术。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。JSP(JavaServer Pages)是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来5。JSP的优点:1.JSP是跨平台的,可以在Windows系列、Linux、UNIX等操作系统上运行;2.JSP是由Sun公司倡导、多家公司参与一起建立的一种动态网页技术标准,获得了大多数厂商的支持;3.只需将JSP编译一次成为Servlet文件,当有相同的客户请求时,JSP服务器将产生一个该Servlet文件的一个线程来响应,而不是重新编译JSP文件,这样就大大提高了Web服务器端的响应速度;4.有多样化和功能强大的开发工具来支持。如JBuilder,Eclipse,Ultraedit,Dreamweaver等。2.3.2 AjaxAjax是指一种创建交互式网页应用的网页开发技术,Ajax的核心是JavaScript对象XmlHttpRequest。该对象在Internet Explorer 5中首次引入,它是一种支持异步请求的技术。简而言之,XmlHttpRequest使您可以使用JavaScript向服务器提出请求并处理响应,而不阻塞用户。Ajax 不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的 Web 应用程序的技术。通过 AJAX,JavaScript 可使用 JavaScript的 XMLHttpRequest 对象来直接与服务器进行通信。通过这个对象,您的 JavaScript 可在不重载页面的情况与 Web 服务器交换数据。AJAX 在浏览器与 Web 服务器之间使用异步数据传输(HTTP 请求),这样就可使网页从服务器请求少量的信息,而不是整个页面。AJAX 可使因特网应用程序更小、更快,更友好。AJAX 是一种独立于 Web 服务器软件的浏览器技术。AJAX 基于下列 Web 标准: JavaScript XML HTML CSS 在 AJAX 中使用的 Web 标准已被良好定义,并被所有的主流浏览器支持。AJAX 应用程序独立于浏览器和平台。Web 应用程序较桌面应用程序有诸多优势;它们能够涉及广大的用户,它们更易安装及维护,也更易开发6。2.3.3 jQueryjQuery是继prototype之后又一个优秀的Javascrpt框架。它是轻量级的js库(压缩后只有21k) ,它兼容CSS3,还兼容各种浏览器 (IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+)。jQuery使用户能更方便地处理HTML documents、events、实现动画效果,并且方便地为网站提供AJAX交互。jQuery还有一个比较大的优势是,它的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件可供选择。jQuery能够使用户的html页保持代码和html内容分离,也就是说,不用再在html里面插入一堆js来调用命令了,只需定义id即可。其核心理念是write less,do more。值得强调的是,jQuery是免费、开源的,使用MIT许可协议。jQuery的语法设计可以使开发者更加便捷,例如操作文档对象、选择DOM元素、制作动画效果、事件处理、使用Ajax以及其他功能。除此以外,jQuery提供API让开发者编写插件。其模块化的使用方式使开发者可以很轻松的开发出功能强大的静态或动态网页7。2.3.4 JsonJson(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一个子集。 Json采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C+, C#, Java, JavaScript, Perl, Python等)。这些特性使Json成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成。 其优势在于方便于传输,较少冗余的字符。方便转换,有很多的Json Api提供了Json字符串转成对象、对象转换成Json串的方法。易于阅读,Json代码的良好结构,可以很直观地了解存的是什么内容8。2.3.5 CSS级联样式表(Cascading Style Sheet)简称“CSS”,通常又称为“风格样式表(Style Sheet)”,它是用来进行网页风格设计的。比如,如果想让链接字未点击时是蓝色的,当鼠标移上去后字变成红色的且有下划线,这就是一种风格。通过设立样式表,可以统一地控制HTML中各标志的显示属性。级联样式表可以使人更能有效地控制网页外观。使用级联样式表,可以扩充精确指定网页元素位置,外观以及创建特殊效果的能力。CSS主要的作用就是美化网页,具体概括如下:1.结构与样式分离的方式,便于后期维护与改版;2.样式定义精确到像素的级别;3.可以用多套样式,使网页有任意样式切换的效果;4.降低服务器的成本。2.4 开发工具2.4.1 MySQL数据库SQL是英文Structured Query Language的缩写,意思为结构化查询语言。SQL语言的主要功能就是同各种数据库建立联系,进行沟通。按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据库管理系统的标准语言。SQL语句可以用来执行各种各样的操作。MySQL是一个开源的小型关系型数据库管理系统,与其它关系型数据库相比具有以下优点:体积较小、速度快、跨平台、支持多线程、优化的SQL查询算法、为多种编程语言提供了API等,这些优点使得Mysql与Java结合起来使用更容易上手,操作更加方便,安全性和跨平台性得到了更好应用9。考虑到汽车论坛系统网站数据库重量级较小,适合采用MySQL数据库进行部署开发。2.4.2 Web服务器本论坛拟发布在Tomcat服务器上。Tomcat是在SUN的JSWDK的基础上发展起来的一个优秀的JSP服务器,是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。Tomcat服务器不但支持Servlet,而且还提供了Web服务器的基本功能,以及处理HTML页面。作为一个开放源码的软件,Tomcat有着自己独特的优势,可以和目前大部分的主流服务器一起工作,而且有着相当高的运行效率。可以将Tomcat和Apache集成起来,对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行Tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。让Apache处理静态HTML,而Tomcat处理JSP和Servlet。使用Tomcat的用户也很多,资料丰富,交流方便10。2.4.3 MyEclipse编程工具MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML、Struts、JSP、CSS、Javascript、Spring、SQL和Hibernate。同时MyEclipse 是一个十分优秀的用于开发Java、J2EE的 Eclipse 插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。MyEclipse目前支持Java Servlet、AJAX、JSP、JSF、Struts、Spring、Hibernate、EJB3和JDBC数据库链接工具等多项功能。可以说MyEclipse几乎囊括了目前所有主流开源产品的专属Eclipse开发工具。2.5 小结本章主要介绍了项目中用到的一些技术以及开发工具。包括Ajax、Json和jQuery等页面开发技术,为项目的编写提供了技术支持。然后介绍开发系统的各种开发工具,有MyEclipse、Tomcat和MyQL,为搭建好开发系统的环境打下了坚实的基础,使读者对系统的运行平台和开发环境有所基本了解,更好的运用系统。3 需求分析需求分析是系统实现的基础,为了理清汽车论坛系统的各项需求,首先从系统概述、业务流程和设计目标对汽车论坛系统进行抽象,然后从中抽取关键角色及系统功能,最后总结出系统的功能需求和数据流程。3.1 系统概述 本系统是汽车论坛系统的开发与实现。系统采用B/S模式,分为服务器端和客户端。其需求主要包括:用户的注册、登录、对个人信息的查看、修改、发帖和回帖;版主的注册、登录、对个人信息的查看、修改、发帖、回帖、管理板块和管理贴子;管理员的登录、对个人信息的查看、修改、发帖、回帖、管理板块、管理贴子和管理所有用户的信息。系统有三种不同身份的用户使用,包括普通用户、版主和管理员。他们有相同的需求也有不同的需求。相同的是他们都必须登录才能进行各自的功能操作。普通用户可以浏览网站,可以查看帖子,发贴回帖,对自己的信息可以查看修改。版主相比普通用户多出了管理板块和管理贴子的功能。管理员相比版主拥有管理用户的功能,可以删除用户和修改用户的权限。后台用户主要是管理员对系统资源的管理操作。在客户端采用JSP页面展示,在服务器端用设计。便于用户使用和产品升级。前台用户根据不同的权限进行操作,管理员进行统一管理。数据库采用的MySQL数据管理软件管理数据。3.2 业务流程及设计目标 本小节主要阐述系统业务的流程以及系统的设计目标。业务流程是为达到特定的价值目标而由不同的人分别共同完成的一系列活动。活动之间不仅有严格的先后顺序限定,而且活动的内容、方式和责任等也都必须有明确的安排和界定,以使不同活动在不同岗位角色之间进行转手交接成为可能。活动与活动之间在时间和空间上的转移可以有较大的跨度。系统分为三类用户,它们分别是普通用户、版主和管理员。不同角色的用户操作权限不同。1.管理员的主要业务流程:(1) 不需要注册,只需要通过登录进入论坛;(2)管理用户的流程:管理员可以登录系统后,查看、修改和删除用户信息的方式管理用户;(3)管理版块的的流程:查看所有版块信息,可以修改版块;(4)管理贴子的流程:通过帖子主题和内容的方式进行查看、删除和置顶帖子。2.版主的主要业务流程:版主通过注册首先成为论坛的普通用户,当管理员将其角色修改为版主后,登录进入论坛。(1)管理版块的的流程:查看所有版块信息,可以修改版块;(2)管理贴子的流程:通过帖子主题和内容的方式进行查看、删除和置顶帖子。 3.普通用户的主要业务流程:通过注册成为论坛用户,登录进入论坛,可以查看、修改个人信息、发帖和回帖。系统的设计目标:本系统是汽车论坛网站,主要完成三类用户的相关操作内容。为用户主要提供注册、登录、发帖和回帖的功能,并且未注册时可以浏览整个论坛资源。为版主提供管理板块和帖子,为管理员提供管理整个论坛的功能。3.3 功能需求功能需求定义一个软件系统或组件的功能,是一个系统需提供的功能及服务。若依照需求工程的定义,功能需求会列出系统的特定结果,而非功能性需求会列出系统的一些整体特性(如成本及可靠度)。功能需求也是对功能分析得到的各主要功能模块再进行详细的分析,得出这些模块具体的需求,从而使整个论坛的功能更加完善,以满足用户的所有需要10。根据系统业务流程和设计目标进行分析概括出系统角色说明如表3-1所示。表3-1 角色及说明表角色说明普通用户通过账号密码登录论坛,可以对个人信息进行查看和修改,可以浏览论坛资源,可以对自己感兴趣的版块或帖子进行发帖、回帖版主除具有普通户用的所有功能外,还拥有管理板块和管理贴子的功能管理员与版主相比多出管理用户的功能模块及整个系统的管理通过此表,可以清晰的得出不同用户角色所具有的操作。具体说来,就是要分清系统中的角色,并且要理清每个角色可以进行的所有功能。通过对系统进行分析,汽车论坛系统分为三个角色:普通用户、版主和管理员。功能需求可以是计算、技术细节、数据处理或其他说明系统希望达成功能的内容。若依照需求工程的定义,功能需求会列出系统的特定结果,而非功能性需求会列出系统的一些整体特性(如成本及可靠度)。在此需求分析阶段,通过与不同人群沟通交流,分析了汽车论坛系统要满足的需求,并确认满足这些要求可以使用的方法。最终得出用户的相应需求如表3-2所示。表3-2 用户基本功能需求表 基本功能需求相关要求注册系统必须能实现用户的注册,且注册时能够检测该用户名是否已被注册登录用户登录时,须输入用户名和密码,且正确才能登录该系统发帖用户可以发表自获得有关车的新消息回帖用户对感兴趣的帖子回帖修改个人信息用户可以修改处用户名外的其他个人信息对上述相关用户需求表进行分析,可得出该系统的用例图如图3-1、3-2所示。 图3-1汽车论坛网站普通用户的用例图其中发帖模块用例描述如表3-3所示。表3-3发帖用例描述 用例编号301用例名称发表帖子用例概述描述用户的功能范围已登录的用户主要参与者普通用户次要参与者系统项目相关人利益说明项目相关人利益普通用户使用者前置条件用户进入论坛首页后置条件用户成功打开发帖页面成功保证当前系统正常运行基本事件流步骤活动1用户选择喜欢的版块2用户填写想发表的帖子内容进行发帖规则与约束网络通畅,操作符合权限且正确回帖模块用例描述如表3-4所示。表3-4回帖用例描述用例编号302用例名称回复帖子用例概述描述用户的功能主要参与者普通用户次要参与者系统项目相关人利益说明项目相关人利益普通用户使用者前置条件用户进入网站首页面后置条件用户选择版块及主题进入回帖页面成功保证当前系统正常运行基本事件流步骤活动1在首页选择版块,进入帖子列表页面2在帖子列表页面选择主题3在回帖页面填写回帖内容进行回帖规则与约束网络通畅,操作符合权限且正确图3-2汽车论坛网站版主和管理员的用例图其中管理贴子模块用例描述如表3-5所示。表3-5管理贴子用例描述 用例编号303用例名称管理贴子用例概述描述版主和管理员的功能范围已登录的管理员和版主主要参与者版主和管理员次要参与者系统项目相关人利益说明项目相关人利益版主和管理员使用者前置条件管理员和版主进入相应的论坛首页后置条件管理员和版主成功打开管理贴子的页面成功保证当前系统正常运行续表3-5基本事件流步骤活动1管理员、版主选择对帖子进行的管理2管理员、版主选择对帖子进行的具体的操作规则与约束网络通畅,操作符合权限且正确管理用户模块用例描述如表3-6所示。表3-6管理用户用例描述 用例编号304用例名称管理用户用例概述描述管理员的功能范围已登录的管理员主要参与者管理员次要参与者系统项目相关人利益说明项目相关人利益管理员使用者前置条件管理员进入相应的论坛首页后置条件管理员和版主成功打开管理用户的页面成功保证当前系统正常运行基本事件流步骤活动1管理员选择需要对用户进行的管理2管理员选择对帖子进行的具体操作规则与约束网络通畅,操作符合权限且正确3.4 数据流程分析汽车论坛系统是为了提供给广大爱车用户提供网上交流的平台,所以论坛的数据流程是以用户为中心进行的。数据流图是一种能全面地描述信息系统逻辑模型的主要工具,它可以用少数几种符号综合地反映出信息在系统中的流动、处理和存储情况。数据流图共有四种成分:数据源点或终点、数据处理、数据存储和数据流。由汽车论坛系统的业务流程及功能需求总结出其数据流程图主要成分如下:数据源点为用户;数据存储包括用户信息、版块信息、帖子信息和回帖信息;数据出炉有查看帖子主题、查看帖子、回复帖子、查看用户和修改用户信息;数据终点仍为用户。汽车论坛的数据流图如图3-3所示。图3-3 汽车论坛数据流图3.5 性能需求软件系统在性能方面的要求是系统所必须遵循的一些约束和准则。本着用户至上的原则,汽车论坛系统需具备以下几个性能需求:1.实用性:系统规划方案选择追求实用性。切合汽车论坛用户的实际需求,实现汽车论坛系统,能够为爱车之人提供一个方便的交流平台;2.扩展性:系统平台要有良好的兼容性和可以移植性。基于JAVA的汽车论坛系统具有面上对象、与平台无关、安全和动态等特点;3.可维护性:系统要易于维护和扩充。界面的修改与代码无关,而业务逻辑的改变同样不影响到界面;4.整体性:整个系统应遵循总体的开发规范和接口标准,同时要考虑和现有部分应用系统的接口,以保证系统结构的完整性和信息实体的一致;5.安全性:系统的安全性要稳定可靠;6.实现友好界面:系统应该界面美观、简单易用。为了有效地完成项目提交,提交项目操作应该在有限时间内完成。3.6 小结本章首先对系统进行了概述,然后对系统进行了需求分析,通过对系统的功能需求和性能需求进行分析以及数据分析,了解了系统要实现的所有功能,以及性能需求和相关的数据需求,为系统的开发奠定基础。4 系统概要设计概要设计的主要任务是完成系统的总体设计和数据库设计。数据库设计是整个系统设计中的关键,一个好的数据库结构是应用系统的基础。数据库是为应用服务的,好的数据库设计应该首先能满足应用系统的业务需求,保证数据的准确性和一致性,提高软件实用性和良好的扩展性。下面就系统总体设计、系统功能设计、数据库的设计和实现进行详细介绍。4.1 系统总体设计系统用户分为三类角色:普通用户、版主和管理员。其中除去管理员是管理后台外,其他都属于前台用户,前台用户需要注册。前台用户要完成的功能有:注册、登录、发帖、回帖、查看和修改个人信息。后台用户要完成的工作有:用户管理、版块管理和帖子管理。系统含有的功能包括前台用户注册登录、在成为普通用户的基础上,成为版主。对于普通用户,可以修改自己的个人信息、对不同版块、帖子进行发帖、回帖。对于系统的后台用户是实现的功能有用户管理、版块管理、帖子管理等功能。以下仅对系统的主要功能进行描述:注册登录的主要功能是使得用户过的使用系统的资格,拥有这个权限才可进行相关的操作;发帖主要功能是用户可以浏览不同版块,在自己有兴趣的板块下发帖;回帖主要功能是用户可以查看各个板块的所有帖子,对自己有兴趣的帖子回复;修改个人信息的主要功能是使用户有修改自己信息的权限,使得用户可以随时更改自己的信息;版块管理的主要功能是对板块的相关信息修改;帖子管理的主要功能是对发表的帖子查阅,删除不正当言论的帖子;用户管理的主要功能是对用户的信息的管理。4.2 系统功能设计通过系统需求分析,可以将系统分为四个模块:用户模块、版块模块、帖子模块、回帖模块。系统的功能结构图如图4-1所示。图4-1 系统功能结构图用户模块包括用户的注册、登录、用户个人信息的修改、用户权限修改和用户信息的删除;版块模块主要包括版块信息的修改;帖子模块包括浏览帖子、发表帖子和删除帖子;回帖模块包括查看回帖、发表回帖和删除回帖。4.3 数据库设计和实现本小节主要从数据库概念结构设计和逻辑结构设计的角度,阐述数据库的设计和实现。数据库是整个项目设计中的关键,一个好的数据库能有效的管理后台中的数据,提高软件的实用性。数据库的设计与实现主要包括五个方面的内容:数据库需求分析,概念结构设计,逻辑结构设计,数据库实施和运行维护12。该项目主要实现注册、登录、发帖、回帖和修改个人信息等基本功能,对请求进行处理时,需要数据库的支持和数据库的管理。4.3.1 数据库需求分析数据库需求分析简单说就是分析用户的要求。需求分析是数据库设计的起点,数据库需求分析的结果是否准确反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用。根据项目的功能需求,系统应包含三类角色,其中一类角色为系统普通用户、版主、管理员。考虑到每类角色的权限不同及一些属性不能为空,所以针对用户信息的保存系统需要设计一个表:用于记录用户的基本信息及用户类型。用户信息表(编号,用户名,密码,邮箱、注册日期、个人头像、昵称、用户类型、个性签名)。用户信息数据字典如表4-1所示。表4-1 用户信息数据字典名字:用户别名:无描述:记录用户个人信息的信息表定义:用户信息=编号+用户名+密码+邮箱+注册日期+个人头像+昵称+用户类型+个性签名对于论坛版块更新时的内容需要记录其相关信息,如版块名和版块描述等,可以设计一个版块信息表保存这些信息。版块信息表(编号,版块名,版块描述)。版块信息表数据字典如表4-2所示。表4-2版块信息数据字典名字:版块信息别名:无描述:记录版块的相关信息定义:发帖信息= 编号+版块名+版块描述对于发帖的内容需要记录其相关信息,如发帖人、发帖日期和发帖主题等,可以设计一个发帖信息表保存这些信息。发帖信息表(编号,对应发帖人编号,对应版块编号,发帖主题,发帖内容,发帖日期)。发帖信息表数据字典如表4-3所示。表4-3发帖信息数据字典名字:发帖信息别名:无描述:记录发帖的相关信息定义:发帖信息= 编号+对应发帖人编号+对应版块编号+发帖主题+发帖内容+发帖日期对于回帖帖的内容需要记录其相关信息,如回帖人、回帖日期、回帖时间等,可以设计一个回帖信息表保存这些信息。回帖信息表(编号,对应回帖人编号,对应帖子编号,回帖内容、回帖日期)。回帖信息表数据字典如表4-4所示。表4-4回帖信息数据字典名字:回帖信息别名:无描述:记录用户回复帖子的行管的信息定义:歌单信息= 编号+对应回帖人编号+对应帖子编号+回帖内容+回帖日期4.3.2 数据库概念结构设计将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计。它是整个数据库设计的关键。同时概念结构是各种数据模型的共同基础,它比数据模型更独立于机器、更抽象,从而更加稳定。概念结构的主要特点包括:能真实、充分地反映现实世界、易于理解、已与更改、易于像其他区关系模型转换。该阶段的任务是将需求分析得到的用户需求抽象为信息结构,是整个数据库设计的关键。概念模型是对信息世界的建模,所以概念模型应该能够方便、准确地表示出信息世界的常用概念。概念模型的表示方法很多,在这里采用实体-联系方法。该方法用E-R图来描述现实世界的概念模型。这些模型在功能上、完整性和一致性约束及数据库的可扩展性等方面均应满足用户的各种要求。本系统中的实体包括:用户(管理员、版主、普通用户)信息实体、版块信息实体、帖子信息实体、回帖信息实体。用户信息实体型图如图4-2所示。图4-2 用户信息实体及属性版块信息实体型图如图4-3所示。图4-3版块信息实体及属性帖子信息实体型图如图4-4所示。图4-4 帖子信息实体及属性回帖信息实体型图如图4-5所示。图4-5 回帖信息实体及属性根据以上信息得到系统的总体E-R图如图4-6所示。图4-6系统E-R图由以上E-R图可以看出,各个实体之间的关系。用户拥有用户ID、用户名、密码、Email、注册时间、昵称、个性签名、个人头像和表示自己权限的级别,该类别有三类,分别是普通用户、版主和管理员。版块包括版块ID、版块名和板块的描述。帖子包括帖子ID、发帖主题、发帖内容、发帖时间和相应的版块ID号及用户的ID号。回帖包括回帖ID、回帖时间、回帖内容和相应的帖子ID及用户ID。他们之间的关系:管理员可以管理多个版主和用户,可以管理多个版块信息,可以管理多个帖子信息。一个版主可以管理多个板块和帖子,一个版块可以包含多个帖子,一个用户可以发表多个帖子,一个帖子可以对应多个回帖。4.3.3 数据库逻辑结构设计数据库逻辑结构设计的任务就是把概念结构阶段设计好的基本E-R图转换为与所选用DBMS产品所支持的数据模型相符合的逻辑结构。目前DBMS产品一般支持关系、网状、层次三种模型中的一种。由于新设计的数据库应用系统大都采用支持关系数据模型的RDBMS,所以下面主要介绍E-R图上关系模型的转换。从而完成逻辑结构设计,为数据库实现做准备。依据数据库概念结构设计,由E-R图4-6转换为的关系模型如下:用户信息表(编号,用户名,密码,邮箱、注册日期、个人头像、昵称、用户类型、个性签名);版块信息表(编号,版块名,版块描述);发帖信息表(编号,对应发帖人编号,对应版块编号,发帖主题,发帖内容,发帖日期);回帖信息表(编号,对应回帖人编号,对应帖子编号,回帖内容、回帖日期)。4.3.4 数据库实现依据数据库概念结构设计和逻辑结构设计的结果,得出数据库的部分实现如下:1.用户信息表Users(id,username,password,email,registerdate,avatar,membertitle,usertype,signature)该表存储用户的信息,其中id属性是用户id,唯一标识用户。用户信息表如图4-7所示。图4-7用户信息表图2.版块信息表Forums(id,title,description)该表存储版块更新时的信息,其中id属性是版块id,唯一标识版块。版块信息表如图4-8所示。图4-8版块信息表图3.帖子表Threas(id,

温馨提示

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

评论

0/150

提交评论