网络技术专业毕业论文09165.doc
毕业设计说明书(计算机与软件学院)设计课题: 在线论坛 网上在线论坛摘 要近年来,随着互联网技术的发展与互联网信息市场的不断完善,网络的功能和网络信息内容发生了急剧的变化。网络已经成为人们学习生活不可或缺的一部分,在人们获取知识、了解社会方面更是扮演重要角色,尤其对在校大学生,这种角色更加明显。在这一形势下,网络论坛应运而生,它是人们在线交流的重要媒介,因此现在很多高校都设有校内论坛例如比较流行的BBS。这些论坛的形式各样,目的也各不相同,因此论坛的内容质量势必影响人们对事实的正确认知,正基于此原因,本文拟设计一个校内BBS论坛,宗旨是服务学生,目的是为大学生提供在线交流和发表意见的平台。本文依据数据库开发技术和网站开发的原理与技术,采用数据访问层,业务逻辑层和表示层的三层软件架构模式和工厂等软件设计模式,使用 ASP.NET与SQL Server开发了一个耦合度低、便于移植和管理、与具体的数据存储方式无关的软件系统。该系统实现了所有用户对文章的浏览、发表、回复、搜索与上传图片及文件,同时管理员用户拥有对文章的删除,用户的管理与版面的添加和修改的权限。 关键词: BBS论坛;Visual Studio 2008;ASP.NET; SQL Server 2005 目 录摘 要II目 录III引 言- 1 -第1章 绪 论- 2 -1.1 课题研究的背景- 2 -1.2 课题研究的目的与意义- 2 -1.3 课题研究的内容- 2 -1.4 课题研究的现状- 3 -第2章 系统开发平台及相关知识介绍- 4 -2.1 IIS(Internet Information Server)信息介绍- 4 -2.2 B/S模式介绍- 4 -2.3 ASP.NET技术介绍- 5 -2.5 数据库Microsoft SQL Server 2005介绍- 7 -第3章 系统需求分析- 8 -3.1 系统的初步调查- 8 -3.2 系统可行性分析- 8 -3.2.1 技术可行性分析- 8 -3.2.2 经济可行性分析- 8 -3.2.3 操作可行性分析- 8 -3.3 系统需求分析- 9 -3.3.1 功能需求- 9 -3.3.2 性能需求- 10 -3.4 系统数据分析- 10 -3.4.1 系统数据流图(DFD)- 10 -3.4.2 数据词典(DD)- 13 -第4章 系统设计- 15 -4.1 系统概要设计- 15 -4.1.1 系统的功能结构设计- 15 -4.1.2 系统数据库结构设计- 16 -4.1.3 数据库表设计- 17 -4.2 系统详细设计- 20 -4.2.1 前台模块设计- 20 -4.2.2后台管理模块设计- 21 -4.2.3数据库存储过程设计- 22 -第5章 系统实现- 24 -5.1 前台模块的实现- 24 -5.1.1 系统主界面- 24 -5.1.2注册- 24 -5.1.3 登录界面- 25 -5.1.4 浏览论坛信息- 25 -5.1.5查看帖子信息- 27 -5.1.6 发表帖子- 27 -5.1.7 回复帖子- 28 -5.2 后台管理模块的实现- 28 -5.2.1 登陆界面- 28 -5.2.3 对用户信息管理- 29 -第6章 系统测试与维护- 30 -6.1 测试概述- 30 -6.2 测试计划- 30 -6.2.1测试方案- 30 -6.2.2测试条目- 30 -6.3 测试执行- 31 -6.5 系统维护- 31 -结论与展望- 32 -致 谢- 33 -参考文献- 34 -附 录- 35 -主要参考文献的题录及摘要- 35 -附录 部分事件代码和主要源代码- 37 -插图清单图2- 1 B/S模式结构示意图- 4 -图3- 1网上在线论坛业务流程图- 11 -图3- 2网上在线论坛顶层数据流图- 11 -图3- 3网上在线论坛一层数据流图- 12 -图3- 4网上在线论坛二层数据流图- 13 -图4- 1 系统功能结构图- 15 -图4- 2系统中用户活动图- 16 -图4- 3框图的代表意义- 16 -图4- 4网上在线论坛系统总体E-R图- 17 -图4- 5进入论坛首页流程图- 21 -图4- 6用户进入论坛后进行相关操作流程图- 21 -图4- 7后台管理流程图- 22 -图5- 1系统主界面- 24 -图5- 2用户注册- 25 -图5- 3登录主界面- 25 -图5- 4登录后主界面- 26 -图5- 6帖子信息查看页面- 27 -图5- 7发表帖子- 28 -图5- 8回复帖子- 28 -图5- 11管理员登录- 29 -图5- 12管理员对用户信息管理- 30 -图5- 13论坛帖子管理页面- 30 -表格清单表3- 1 服务器配置需求表- 9 -表3- 2客户端配置需求表- 9 -表3- 3数据项表- 13 -表3- 4数据结构表- 13 -表3- 5数据流表- 13 -表3- 6数据存储表- 13 -表3- 7处理过程表- 14 -表4- 1用户管理表tb_users的表结构- 17 -表4- 2用户管理表tb_users中的记录- 18 -表4- 3图像表tb_tuxiang的表结构- 18 -表4- 4论坛帖子信息表tb_content的表结构- 19 -表4- 5论坛回复信息表tb_hf的表结构- 19 -表6- 1系统测试记录表- 33 -引 言Internet是目前世界上最大的计算机互联网络,它遍布全球,将世界各地各种规模的网络连接成一个整体。作为Internet上一种先进的,易于被人们所接受的信息检索手段,World Wide Web(简称WWW)发展十分迅速,成为目前世界上最大的信息资源宝库。据估计,目前Internet上已有上百万个Web站点,其内容范围跨越了教育科研、文化事业、金融、商业、新闻出版、娱乐、体育等各个领域,其用户群十分庞大,因此,建设一个好的Web站点对于一个机构的发展十分重要。近年来,随着网络用户要求的不断提高及计算机科学的迅速发展,特别是数据库技术在Internet中的广泛应用,Web站点向用户提供的服务将越来越丰富,越来越人性化。近年来,随着网络用户要求的不断提高及计算机科学的迅速发展,特别是数据库技术在Internet中的广泛应用,Web站点向用户提供的服务将越来越丰富,越来越人性化。而应用互联网实现信息讨论,已经成为一种常用的手段。论坛系统是互联网是的一种应用服务模式,通过这种服务,互联网用户可以在上面浏览到其他用户或网站发表的各种主题、文章、问题等具有各种表现形式的文字或图像内容,并且用户可以在上面针对某个具体的内容即时地发表自己的回答、看法、议论等,或者可以上传下载自己想要的资料。由于BBS的这种特点,使得全球的用户都可以随时随地地进行交流,从而真正的做到全球信息的交流。论坛具有多种表现形式,各网站可以按照自己的服务特点设计出适合自身的论坛形式,例如,各类论坛、在线问答、各种供求信息、网上订购等,都可以是论坛的表现形式。这次毕业设计经过分析,该系统采用基于B/S(浏览器/服务器)架构。主要实现技术是ASP.NET技术,数据库采用SQL Server 2005,此系统为网上在线论坛,对用户方便的进行网上交流具有一定的应用价值。第1章 绪 论1.1 课题研究的背景网上论坛系统,即BBS论坛,也称为社区,是各类网站中一个常见的功能模块,它为上网用户提供一个自由的讨论区。用户可以根据需要在论坛发表帖子,提出问题并表达自己的观点。与此同时,用户还可以在论坛中看到其他人发表的文章,并对其进行回复。随着互联网事业的蓬勃发展,论坛,这个具有强大实时交互功能,信息交流的平台,使人们不再像电视观众、电台听众、报纸杂志读者一样只是被动地观看、收听、阅读,而是可以积极而及时地参与讨论,在了解他人观点意见的同时也可以发表自己的看法。BBS由以前的BASIC、VB等汇编语言开发,直到现在的Internet BBS中用到的ASP.NET或者Java技术去访问SQL Server, Sybase或者Oracle数据库,BBS的开发技术一直都是与程序开发语言齐头并进。现在的Internet BBS一般都是采用ASP.NET开发工具去直接访问数据库,但如果多人同时访问一个页面或者回复一个话题,页面刷新会比较慢而且数据库更新也没有那么速度,因为服务器是直接与数据库交换数据,势必需要一段时间来刷新。而现在的Ajax, java等新兴技术和框架的出现,使得页面无刷新,访问数据更加迅速等的优点,无疑又会给我们的Internet BBS开发带来一股新的潮流。1.2 课题研究的目的与意义随着Internet的发展,Web技术日新月异,人们已经不再满足于静态HTML技术,更多的是要求动态、交互的网络技术。继通用网关接口(CGI)之后,微软推出的IIS+ASP.NET的解决方案作为一种典型的服务器端网页设计技术,被广泛应用在网上银行、电子商务、网上调查、网上查询、论坛、搜索引擎等各种互联网应用中。BBS作为一种新的生活方式、新的工作方式和新的学习方式已经被越来越多的人所接受,并且在改变传统的网络和社会结构。它使交流和沟通更有明确的选择和方向性;单一的思想和群体的智慧结合变得更加有效;个人出版变成人人都可以实现的梦想。BBS正在影响和改变着我们的生活。同时BBS也在教学领域得到了很好的利用,特别是教学论坛的应用,有助于教师更好地了解学习者的学习状况,学习要求及教学反馈意见,加强师生沟通,提高教学效果,同时促进由传授者向帮助者,支持者和促进者角色转化的实现,促进学习者自我学习和互助学习能力的不断提高。因此为了更好的让同学们学习数据库的基础知识需要设计数据库课程论坛。BBS是以网络作为载体,简易迅速便捷地发布自己的心得,及时有效轻松地与他人进行交流,再集丰富多彩的个性化展示于一体的综合性平台。展示丰富的个性化,对BBS功能的要求自然更高,新一代具有更多、更新、更全功能的BBS急需走进舞台。 1.3 课题研究的内容网上论坛系统采用WEB下的ASP.NET技术,数据库的设计工具为SQL Server 2005。网上论坛的设计主要包括系统前台设计和后台设计。前台设计主要包括用户注册、用户登录等。网上在线论坛设计的基本内容包括三大内容,如下所示。1) 游客功能对于只想浏览论坛中信息的访问者,系统允许他以游客身份进入系统而不需要注册。游客具有的功能非常有限,如下几种功能。查看已发表的帖子:该功能实现对论坛中信息的浏览。注册用户:游客可以使用该功能进行注册,注册成功后,便可成为一个普通用户。2) 普通用户功能为了方便普通用户发表、回复、修改个人资料,本系统提供了如下几种功能。查看已发表的帖子:该功能实现对论坛中信息的浏览。发表新帖子:普通用户进入论坛,发表新的帖子。回复文章:普通用户可以通过该功能对别人发表的话题进行回复。发消息:普通用户可以发信息给自己的好友,或者论坛上的其他会员。3) 管理员功能该模块只为管理员开放,管理员登录后可以对系统进行维护和管理。管理员操作权限包括:删除用户的资料、删除帖子、查看用户资料、编辑帖子、添加友情链接列表这几个部分。1.4 课题研究的现状论坛目前在互联网上得到非常广泛的应用,而且反应非常活跃。由于论坛可以使网上信息交流变得非常方便、广泛、及时,因而对于加深网站的服务深度、提高网站的知名度、拓展网站的交流范围、激活网站的人气都有不小的作用,并且可以建立单独的论坛网站。因此在互联网的服务中,论坛将是一个重要的内容。随着科学技术的迅猛发展,计算机已经得到了广泛的应用。几乎各行各业都有关于计算机的使用,这使得计算机已成为社会中普遍存在的事物。由于计算机的使用,网上在线论坛使得人们信息获取和交流上叶更便捷更快,这符合当前人们快节奏的生活方式。网上在线论坛就是能为人们的交流提供了一个快捷而方便的平台,所以开发一个网上在线论坛是符合当前人们的需求。第2章 系统开发平台及相关知识介绍2.1 IIS(Internet Information Server)信息介绍IIS(Internet Information Server,互联网信息服务)是一种Web(网页)服务组件,其中包括Web服务器、FTP服务器、NNTP服务器和SMTP服务器,分别用于网页浏览、文件传输、新闻服务和邮件发送等方面,它使得在网络(包括互联网和局域网)上发布信息成了一件很容易的事。IIS意味着你能发布网页,并且有ASP(Active Server Pages)、JAVA产生页面,有着一些扩展功能。IIS支持一些有趣的东西,象有编辑环境的界面、有全文检索功能的、有多媒体功能的。IIS的作用:在同一时间内允许多少IP访问网站,1个IIS等于一个访问IP,当一个网页被浏览,服务器就会和浏览者的浏览器建立链接,每个链接表示一个并发。当页面包含很多图片,图片并不是一个一个显示的,服务器会产生出多个链接同时发送文字和图片以提高浏览速度。如果页面中的图片越多那么服务器的并发链接数量就越多。当图片或页面被服务发送后服务器就关闭链接用于和其他请求者建立链接。每次并发几乎是瞬间完成一般在几个毫秒和几十毫秒之间。2.2 B/S模式介绍B/S(browser/server,简称B/S)模式,即浏览器/服务器模式,它是基于Intranet 的需求而出现并发展的。Intranet是应用TCP/IP协议建立的企事业单位内部专用网络,它采用诸如TCP/IP、HTTP、SMTP和HTML等Internet技术和标准,能为企事业单位内部交换信息提供服务。同时,它具有连接Internet 的功能和防止外界入侵的安全措施。另一方面,由于数据库具有强大的数据存储和管理能力,并且能够动态地进行数据输入和输出,如果把数据库应用于Intranet上,不仅可以实现大量信息的网上发布,而且能够为广大用户提供动态的信息查询和数据处理服务,进而加强企事业单位内部部门之间、上级部门与下级部门之间、企事业单位员工之间、企事业单位与客户之间以及企事业单位与企事业单位之间的信息交流,降低企事业单位的日常工作成本,提高企事业单位的经济效益。B/S模式,是一种从传统的二层C/S模式发展起来的新的网络结构模式,它通常采用3层结构:浏览器WEB服务器数据库服务器。图2- 1 B/S模式结构示意图在Intranet框架中,Browser/Server模型的处理方式如下:1用户打开计算机中的浏览器。2输入或自动启动主页的URL (Uniform Resource Locator),浏览器生成一个HTTP请求并把它发给指定的Internet服务器。3服务器发回主页的HTML (Hypertext Markup Language)页面。浏览器将其显示在屏幕上。4用户在主页面上进行操作(如:点击、键入等)。5浏览器生成相应的HTTP要求,发送给相应的服务器。6服务器收到请求后,查看本站点是否拥有这个文档。如果有,就将它放入响应信息中返回给浏览器。7浏览器收到响应,查看头文件的格式,判断能否直接显示。如果否,就调用对应的帮助应用程序或外挂程序处理显示。2.3 ASP.NET技术介绍ASP.NET是Microsoft.NET的一部分,作为战略产品,不仅是 Active Server Page (ASP) 的下一个版本;它还提供了一个统一的 Web 开发模型,其中包括开发人员生成企业级 Web 应用程序所需的各种服务。ASP.NET 的语法在很大程度上与 ASP 兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。可以通过在现有 ASP 应用程序中逐渐添加 ASP.NET 功能,随时增强 ASP 应用程序的功能。ASP.NET 是一个已编译的、基于 .NET 的环境,可以用任何与 .NET 兼容的语言(包括 Visual Basic .NET、C# 和 .NET)创作应用程序。另外,任何 ASP.NET 应用程序都可以使用整个 .NET Framework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。ASP.NET的技术优势主要体现在以下几个方面: 运行速度快ASP.NET是把基于通用语言的程序在服务器上运行。不像以前的ASP即时解释程序,而是将程序在服务器端首次运行时进行编译,这样的执行效果,当然比一条一条的解释强很多。一方面由于ASP.NET是编译执行,比ASP等一些解释执行的Web程序技术要高出一个等级。在虚拟路径的 bin目录下已经生成一装配件形式存在的动态链接库文件,这是编译好的2进制文件,是可以通过.NET 中间语言(IL)来执行的机器码。Web服务器执行页面时,直接调用动态链接库文件,而今在少数条件下会重新编译程序,即使这样速度也较ASP快。另一方面采用XML技术,由于XML文件是基于ASCII或Unicode编码的文本文件,读取、写入、执行速度明显要比一些数据库文件快(在数据量相对不太大的情况下)。这是本系统采用ASP.NET技术的原因之一。对于中小型系统来说,有相当的速度优势。 平台构建免费本系统在基本的服务器上,只需安装Microsoft .NET Framework即可运行。而这个.NET Framework是微软免费发布的,如果服务器操作系统是Windows Server 2003,则.NET Framework已经随系统默认安装了。相对于基于Oracle数据库的系统来说,无需任何高昂的软件费用即可使用。 扩展性好这是.NET 平台的优势。.NET技术能将几乎所有能见到的编程语言有机的组合到一起,同一个系统可能有好几种互不相干的语言编写,但运行效果和用一种语言编写的相同,无论是C+、C#,还是Pascal。.NET丰富的类库资源和可扩展性使得在本系统上可以方便的添加其他模块来实现更多的功能。 强大性和适应性因为ASP.NET是基于通用语言的编译运行程序,所以它的强大性和适应性,使它几乎可以运行在Web应用软件开发者的全部平台上。通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到ASP.NET的Web应用中。ASP.NET同时也是语言独立化的,所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写。现在已经支持的有C#,VB和Jscript。这样的多种程序语言协同工作的能力将保护您现在的基于COM+开发的程序,能够完整的移植向ASP.NET。 简单性和易学性ASP.NET可以运行一些很平常的任务,如表单的提交、客户端的身份验证,分布系统和网站配置变得非常简单。例如ASP.NET页面构架允许你建立你自己的用户分界面,使其不同于常见的VB-Like界面。另外,通用语言简化了开发,把代码结合成软件也变得简单易行。2.5 数据库Microsoft SQL Server 2005介绍Microsoft SQL Server 2005 是一个全面的数据库平台,使用集成的商业智能 (BI) 工具提供了企业级的数据管理。Microsoft SQL Server 2005 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。Microsoft SQL Server 2005 数据引擎是本企业数据管理解决方案的核心。此外 Microsoft SQL Server 2005 结合了分析、报表、集成和通知功能。这使您的企业可以构建和部署经济有效的 BI 解决方案,帮助您的团队通过记分卡、Dashboard、Web services 和移动设备将数据应用推向业务的各个领域。与 Microsoft Visual Studio、Microsoft Office System 以及新的开发工具包(包括 Business Intelligence Development Studio)的紧密集成使 Microsoft SQL Server 2005 与众不同。无论您是开发人员、数据库管理员、信息工作者还是决策者,Microsoft SQL Server 2005 都可以为您提供创新的解决方案,帮助您从数据中更多地获益。Microsoft SQL Server 2005在网站系统开发中有一下几点优点:Net框架主机:使用SQL Server 2005,开发人员通过使用相似的语言,例如微软的Visual C#.Net和微软的Visual Basic,将能够创立数据库对象。开发人员还将能够建立两个新的对象用户定义的类和集合。增强的安全性:SQL Server 2005中的新安全模式将用户和对象分开,提供fine-grain access存取、并允许对数据存取进行更大的控制。另外,所有系统表格将作为视图得到实施,对数据库系统对象进行了更大程度的控制。Transact-SQL的增强性能:SQL Server 2005为开发可升级的数据库应用软件,提供了新的语言功能。这些增强的性能包括处理错误、递归查询功能、关系运算符PIVOT,APPLY,ROW NUMBER和其他数据列排行功能,等等SQL服务中介:SQL服务中介将为大型、营业范围内的应用软件,提供一个分布式的、异步应用框架。Web服务:使用SQL Server 2005,开发人员将能够在数据库层开发Web服务,将SQL Server当做一个超文本传输协议(HTTP)侦听器,并且为网络服务中心应用软件提供一个新型的数据存取功能。全文搜索功能的增强:SQL Server 2005将支持丰富的全文应用软件。服务器的编目功能将得到增强,对编目的对象提供了更大的灵活性。查询性能和可升级性将大幅度得到改进,同时新的管理工具将为有关全文功能的运行,提供更深入的了解。第3章 系统需求分析3.1 系统的初步调查在网络技术逐渐渗入社会生活各个层面的今天,以前网站上的论坛管理系统要用户登陆以后才能进行相关访问及互动。而随着网络互联技术的进步,现在论坛系统只需打开网页就可进行留言。论坛的对象是很多的,各个层次都可以进行论坛访问,大至国家领导,小至一个普通干部,访问和留言从到指定用户进行表格到现在通过网络直接点击就可进行。论坛管理系统可解决游客访问及留言,致使现在几乎各个网站都有各种类型论坛管理系统,用户可选择自己的看法。所以我提出了本课题的研究。3.2 系统可行性分析3.2.1 技术可行性分析技术可行性是最难决断和最关键的问题。根据客户提出的系统功能、性能及实现系统的各项约束条件,从技术的角度研究系统实现的可行性。本系统采用的是.NET家族的ASP.NET技术和ADO.NET 技术。众所周知,.NET现在已经日趋成熟、稳定,被认为是计算机领域最有前途的技术之一。同时数据库采用的是SQL Server 2005,继SQL Server 2000之后的SQL Server 2005 更加可视化、稳定化,并且安全化。将ASP.NET,ADO.NET以及SQL Server 2005结合起来开发一套网上在线论坛,必定是可行并且高效的。所以本系统在技术上是绝对可行的。而且该系统对于操作环境的要求不高,现在普遍使用的计算机都可以上网浏览该论坛。3.2.2 经济可行性分析经济可行性研究主要进行成本效益分析,包括估计项目的开发成本,估算开发成本是否会高于项目预期的全部利润。看软件所能带来的经济效益与开发设计所需要的投资相比,是否相适宜,同时还要看此软件能否真正给用户带来足够的经济效益。我开发的这个论坛正是考虑班级交流的需要,班级同学可以在论坛上自由的交流,也可以查看到班级最新的消息,由此发现该系统在班级交流上会有很大的作用。这个论坛不要求经济成本,只需要一个简单而功能齐全的系统,不需要专门的开发人员,班级内部就可以开发出来。所以这个论坛的开发在经济上是完全可行的。开发此论坛是个人独立设计的,可以利用课余时间进行开发,这样也可提高个人的实际动手能力。综上所述,本系统具有经济可行性。3.2.3 操作可行性分析由于我们都是大学生,都是学计算机专业的,谁都会使用电脑,所以对操作电脑方面肯定是没有问题的,可以说是有过之无不及。而且基本上现在每个人都有电脑,上网的设备也具备了。同学们经常浏览网页,对网站并不陌生,所以进入网站、注册信息、登录网站都是没有问题的。买了电脑的都连接了网络,所以网络环境也配备好了。由此可见,开发此软件在操作上是可行的。当前可以提开发和系统使用的环境只要包括达到如下要求即可:1、 网站开发环境网站开发环境:Microsoft Visual Studio 2008 集成开发环境网站开发语言:ASP.NET+C#网站后台数据库:SQL Server 2005开发环境运行平台:Windows XP(SP2)/Windows 2000(SP4)/Windows Server 20032、可以提供给网站运行环境 服务器的配置请参照下表:【最低要求】表3- 1 服务器配置需求表名称最低配置推荐配置 CPU Pentium III 800P4 1.8硬盘20G 空余硬盘空间60G 空余硬盘空间 内存256M 或更高512M 或更高 网卡10/100M 10/100M 或更高操作系统Windows Server 2003 (SP4) + SQL Server2005Windows Server 2003 (SP4) + SQL Server2005 Web 服务组件IISIIS 客户端配置请参照下表: 表3- 2客户端配置需求表名称最低赔置推荐配置 CPUPentium II 450Pentium III 800 硬盘20G空余硬盘空间40G空余硬盘空间 内存128M256M3.3 系统需求分析在软件工程中,需求分析指的是在建立一个新的或改变一个现存的电脑系统时描写新系统的目的、范围和定义时所要做的所有的工作。需求分析主要有结构化分析方法(Structured Analysis简称SA)、面向数据结构的分析方法以及面向对象的分析方法等。本文采用的是结构化分析方法,该方法把研究对象看成一个系统,用分解和抽象这两个基本策略来控制系统的复杂性,它有三个要点:(1)分解和抽象;(2)图表描述;(3)模型转换。结构化系统分析常用的工具有:数据流程图(DFD)、数据字典(DD)、数据库存储结构规范化法;数据立即存取法;处理逻辑的表达方法(决策树、判定表、结构式语言) 12-13。3.3.1 功能需求网上在线论坛主要的功能是讨论各种语言的开发技术、技巧,并交流开发经验等,但是需要对技术栏目的文章浏览和发表文章功能加以限制,这样,论坛管理功能显得尤为重要。根据身份,会分配不同的权限。通过对一些典型的BBS系统的考察、分析,要求系统具有以下特点:Ø 拥有三大功能,包括游客功能、普通用户功能、管理员功能。Ø 要求系统具有良好的人机界面。Ø 功能强大,操作简单,可扩展性好,稳定性高。Ø 系统无操作系统限制,方便不同平台之间的移植。Ø 网站最大限度地实现易维护性和易操作性。Ø 网站运行稳定、安全可靠。3.3.2 性能需求1、安全性本系统对于数据的安全性有一定的要求,保证数据库的一致性、并发性、可移植性,且具有数据恢复的功能。具体说明如下:(1) 关系数据库本身一般都具有事务回卷等功能。在开发中后台选用中小型关系数据库,系统数据安全才具有保证的。(2) 考虑到管理员和用户的权限不同,管理员必须输入用户名和密码,才能对系统的数据行进修改。管理员有权力行使所有的管理功能,而普通用户只能进行一般的功能。游客只有浏览论坛中的信息和注册会员的功能。2、可维护性该系统采用的是B/S模式设计,B/S模式最大的好处是运行维护比较简便,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据。所以该系统的维护性较强,管理员可以根据实事情况的需求修改已有功能。3、运行的稳定性系统在正常的情况下,可以承载上百人的交互运作。本论坛面对的是班级群体,班级成员一般都比较少,大概不超过百人,所以对系统的稳定性要求不会很高。同时系统在服务器上可以长时间的运行,因为要求成本比较低,所以可以申请免费的域名,这样可以在任务时候开启系统。3.4 系统数据分析本论文以数据流图和数据字典的方式来描述该系统的逻辑功能。其中数据流图是对组织中信息运动的抽象,是信息逻辑系统模型的主要形式。这个模型不涉及硬件、软件、数据结构与文件组织,它与对系统的物理描述无关,只是用一种图形及与此相关的注释来表示系统的逻辑功能。数据字典(Data Dictionary 简称 DD)是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合,它是进行详细的数据收集和数据分析所获得的主要结果。其作用是在软件分析和设计的过程中给人提供关于数据的描述信息。它主要包括以下四个方面的内容:数据项、数据流、数据存储、数据处理。数据流图与数据字典共同构成系统的逻辑模型,没有数据字典数据流图就不严格,然而没有数据流图数据字典也难以发挥作用。只有数据流图对数据流图中每个元素的精确定义放在一起,才能共同构成系统的规格说明12-13。3.4.1 系统数据流图本系统的数据流图包括业务流程图、系统顶层数据流图、系统一层数据流图、系统二层数据流图。(1) 流程图如下:图3- 1网上在线论坛业务流程图(2) 网上在线论坛的顶层数据流图:图3- 2网上在线论坛顶层数据流图(3) 网上在线论坛的一层数据流图: 图3- 3网上在线论坛一层数据流图(4) 网上在线论坛的二层数据流图:图3- 4网上在线论坛二层数据流图3.4.2 数据词典(DD)数据流图表达了数据和处理的关系,数据字典则是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果。数据字典在数据库设计中占有很重要的地位。数据字典通常包括数据项、数据结构、数据流、数据存储和处理过程五个部分。其中数据项是数据的最小组成单位,若干个数据项组成一个数据结构,数据字典通过对数据项和数据结构的定义来描述数据流、数据存储的逻辑内容12-13。系统部分数据字典如下所示:1、数据项 表3- 3数据项表数据项名称:帖子编号含义说明:唯一标示每一个帖子别名:ID类型:Int长度:4取值范围:>=1与其他数据项之间的逻辑联系:主键2、数据结构表3- 4数据结构表数据结构名:友情链接表含义说明:游客浏览页面时链接到其他网站所需的链接组成:链接编号+链接用户民+衔接内容+添加时间3、数据流表3- 5数据流表名称:帖子信息说明:用户输入帖子内容,修改帖子内容数据来源:信息统计和存储,置顶数据流去向:将帖子标题、发表者、所属模块、所属类型内容都显示出来组成:帖子编号+发表的用户名+帖子的详细内容4、数据存储表3- 6数据存储表名称:帖子信息编号:1流入数据流:用户输入帖子内容,修改帖子内容流出数据流:信息统计和存储描述:将帖子标题、发表者、主题内容都显示出来组成:帖子编号+发表的用户名+主题+帖子内容5、处理过程表3- 7处理过程表处理过程名:帖子的删除处理过程:管理员对一些不文明或者违规的帖子进行删除操作,把这些帖子在数据库中的信息清理掉即可。流入数据流:删除管理员认为不文明或者违规的帖子流出数据流:有效的删除请求描述:删除数据库中帖子信息表中的内容第4章 系统设计系统设计是本系统开发的重要阶段,它直接影响到目标系统的质量,是整个开发工作的核心。系统设计的主要任务是:为网上论坛需求模型所规定的功能和性能要求,考虑系统实现环境,通过对系统分析模型的综合分析和细化,将整个系统合理的划分成各个功能模块,正确地处理模块之间和模块内部的联系以及和数据库的联系,定义各模块的内部结构,通过对模块的设计和模块之间关系的系统来实现整个系统的功能。系统设计包括系统概要设计和详细设计。4.1 系统概要设计4.1.1 系统的功能结构设计本系统基于ASP.NET原理,采用Microsoft Visual Studio 20058,Microsoft SQL Server 2005作为开发工具。该开发工具决定了本系统的安全性、稳定性,从而保证该系统的维护费用也相对较低。其最重要的功能就是实现了高效管理,改变了传统人工管理造成的信息发布及时性差,安全性低的状况。系统的结构设计是在系统开发总体任务的基础上完成的,按照系统的功能要求,并考虑程序编程的特点,对系统整个功能进行相关说明。网上论坛系统的包括了三大功能,包括游客功能、普通用户功能、管理员功能。各个功能模块之间的关系如图4-1所示:图4- 1 系统功能结构图用户进入论坛系统需要进行相关活动,下面以一个用户活动图来反应用户在系统中是一些动作。如图4-2所示:图4- 2系统中用户活动图4.1.2 系统数据库结构设计这一设计阶段是在需求分析的基础上,设计出能够满足用户需求的各种实体以及它们之间的关系,为后面的逻辑结构设计打下基础。通常,一个数据库系统都是为多个不同用户服务的。各个用户对数据的观点可能不一样,信息处理需求也可能不同。在设计数据库概念结构时,为了更好地模拟现实世界,一个有效的策略是“分而治之”,即先分别考虑各个用户的信息需求,形成局部概念结构,然后再综合成全局结构。在E-R方法中,局部概念结构又称为局部E-R模式,其图形表示称为E-R图,其联系方法分为三类:一对一(1:1),一对多(l:n),多对多(m:n)。本系统中涉及的实体主要包括:用户实体、帖子实体、消息实体、注册信息实体。网上在线论坛系统的E-R图如下图4-3和图4-4所示:实体属性联系图4- 3框图的代表意义4- 4网上在线论坛系统总体E-R图4.1.3 数据库表设计在数据库bbs中创建用户表Users,结构表如图4-1所示,其中包括用户ID、登录名、用户密码