收藏 分享(赏)

网上论坛系统设计-计算机专科毕业论文.doc

上传人:dreamzhangning 文档编号:2688526 上传时间:2018-09-25 格式:DOC 页数:26 大小:688.50KB
下载 相关 举报
网上论坛系统设计-计算机专科毕业论文.doc_第1页
第1页 / 共26页
网上论坛系统设计-计算机专科毕业论文.doc_第2页
第2页 / 共26页
网上论坛系统设计-计算机专科毕业论文.doc_第3页
第3页 / 共26页
网上论坛系统设计-计算机专科毕业论文.doc_第4页
第4页 / 共26页
网上论坛系统设计-计算机专科毕业论文.doc_第5页
第5页 / 共26页
点击查看更多>>
资源描述

1、计算机专科毕业论文第 1 页大学计算机专业毕业设计网上论坛系统设计姓 名 学 科 专 业 指 导 教 师 学 号 日期:2008 年 5 月计算机专科毕业论文第 2 页目 录摘要- 4第一章 需求分析- 51.1 开发背景-51.2 ASP.NET 技术概述-51.3 项目目标- - 61.3.1 系统实现的功能- 61.3.2 系统设计的目标- 6第二章 系统分析- 102.1 系统逻辑模型概述- 102.2 用列图- 102.2.1 考试系统用例图- 102.2.2 网站论坛用例图-102.3 数据流程图- 102.3 考试系统数据流程图- 102.3.2 网站论坛数据流程图- 122.4

2、 实体关系图- 132.4.1 考试系统 ER 图- 132.4.2 网站论坛 ER 图- 15第三章 系统的总体设计-163.1 开发环境-163.2 用户界面需求-163.3 性能需求-163.3.1 系统的灵活性-163.3.2 系统的可扩展性-163.3.3 系统的安全性-163.4 系统的流程及结构图-173.4.1 注册用户流程图-173.4.2 非注册用户流程图-173.4.3 系统数据库设计-18第四章 系统实现-204.1 系统登录验证模块-204.1.1 系统登录-204.1.2 在线注册-214.2 信息修改模块-254.3 论坛类别管理模块-264.4 帖子管理-264

3、.5 会员管理模块-39第五章 系统测试-45计算机专科毕业论文第 3 页5.1 测试规程- 455.1.1 白盒测试技术- 455.1.2 黑盒测试技术- 455.2 系统步骤-455.3 测试小结- 48结束语 -52参考文献- 53计算机专科毕业论文第 4 页摘要(Abstract)本文讨论了“网站论坛”从需求到实现的过程。该论坛是在 ASP.NET 平台下开发的 Web 应用程序。系统为用户提发表帖子、查询帖子、会员注册、等功能。并为未注册用户提供查看及留言的功能。根据系统实现的功能,本网站大致分为以下几个模块:系统登录验证模块、会员注册模块、会员信息修改、后台管理模块。全文使用大量的

4、流程图和实际效果图,使读者能够清楚的了解整个系统的执行和运作过程。并循序渐进地讲解了整个系统的程序设计。此外,本文还探讨了在 ASP.NET 技术下系统安全的设想。本人在这个系统的设计过程中独立完成了从系统功能分析、系统结构设计、模块划分、程序编写、网页美化等全部工作。关键字:ASP.NET、 、ActiveX 组件、IIS、论坛、计算机专科毕业论文第 5 页第一章 需求分析1.1 开发背景网络技术日新月异,我们可以发现许多网页文件扩展名不再只是“.htm” ,还有“.php” 、 “.asp”等,这些都是采用动态网页技术制作出来的。早期的动态网页主要采用 CGI 技术,CGI 即 Commo

5、n Gateway Interface(公用网关接口)。您可以使用不同的程序编写适合的 CGI 程序,如 Visual Basic、Delphi 或C/C等。虽然 CGI 技术已经发展成熟而且功能强大,但由于编程困难、效率低下、修改复杂,所以有逐渐被新技术取代的趋势。网络技术的发展,给人们的生活带来极大的方面,尤其是在交流方面。本文所讨论的网上论坛就是一种网络交流系统。随着网络的不断发展,目前,论坛已经作为一个很重要的交流方式,正以惊人的速度成长着。无论是企业网站还是学校、政府内部管理电子化、网络化,论坛都在不断的应用。并且成为最重要的交流工具。 1.2 ASP.NET 技术的概述ASP.NE

6、T 不仅仅是 Active Server Page (ASP) 的下一个版本;它还提供了一个统一的 Web 开发模型,其中包括开发人员生成企业级 Web 应用程序所需的各种服务。ASP.NET 的语法在很大程度上与 ASP 兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。可以通过在现有 ASP 应用程序中逐渐添加 ASP.NET 功能,随时增强 ASP 应用程序的功能。ASP.NET 是一个已编译的、基于 .NET 的环境,可以用任何与 .NET 兼容的语言(包括 Visual Basic .NET、C# 和 JScript .NET.)创作

7、应用程序。另外,任何 ASP.NET 应用程序都可以使用整个 .NET Framework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。ASP.NET 可以无缝地与 WYSIWYG HTML 编辑器和其他编程工具(包括 Microsoft Visual Studio .NET)一起工作。这不仅使得 Web 开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到 Web 页的 GUI 和完全集成的调试支持。当创建 ASP.NET 应用程序时,开发人员可以使用 Web 窗体或 XML Web services,或

8、以他们认为合适的任何方式进行组合。每个功能都能得到同一结计算机专科毕业论文第 6 页构的支持,使您能够使用身份验证方案,缓存经常使用的数据,或者对应用程序的配置进行自定义,这里只是列出几种可能性而已。ASP.NET 提供一种简单的模型,该模型使 Web 开发人员能够编写在应用程序级运行的逻辑。开发人员可以在 Global.asax 文本文件中或在作为程序集部署的已编译类中编写这种代码。这种逻辑可以包括应用程序级事件,但开发人员可以轻松地扩展这种模型,以适应他们的 Web 应用程序的需要。ASP.NET 提供易用的应用程序和会话状态功能,它们对于 ASP 开发人员来说是熟悉的,且容易与所有其他

9、.NET Framework API 兼容。ASP.NET 利用 .NET Framework 和公共语言运行库中的性能增强功能。另外,它还可以提供相对于 ASP 和其他 Web 开发平台来说显著的性能改进。所有 ASP.NET 代码都是编译的,而不是解释的,这就允许对本机代码采用早期绑定,强类型处理,以及实时 (JIT) 编译,这里只列举几个优点而已。ASP.NET 还可方便地分解,即开发人员可以移除那些与他们开发的应用程序不相关的模块(例如,会话模块) 。ASP.NET 还提供丰富的缓存服务(包括内置服务和缓存 API 两种) 。ASP.NET 还提供性能计数器,开发人员和系统管理员可以监

10、视这些性能计数器,以测试新的应用程序和搜集有关现有应用程序的度量标准。1.3 项目目标1.3.1 系统实现的功能网上论坛系统为用户提供了会员注册、会员登陆、会员发帖、回复留言、信息修改、密码修改、后台管理等功能模块。根据系统设计所要实现的功能,大致可以将论坛划分为如下若干个模块:1系统登陆验证模块:主要用于验证网站浏览者的身份,以便确定浏览者的响应权限。2会员注册模块:主要是增加会员,享受论坛会员所拥有的权力。3添加好友:成为会员后,可以添加和自己志同道合的网友成为自己的朋友。4发帖功能模块:论坛必备功能,是会员交流的渠道。5信息修改:会员本人登陆后,可以修改自己注册时填写的基本信息。6后台管

11、理:论坛后台管理主要功能有论坛类别管理,论坛管理,帖子管理,会员管理等几大模块。这些都是论坛管理必须的。132 系统设计的目标实现用户需求的所有功能。系统具有较好的性能,方便用户操作,并便于日后的维护和扩充。掌握并使用 ASP.NET 技术实现系统设计。掌握其它网页设计软件的使用方法。计算机专科毕业论文第 7 页第二章 系统分析2.1 系统逻辑模型概述软件工程技术中,用于系统分析的建模的方法有很多种、最常用的包括用例图(USE CASE) 、数据流图(DFD) 、和实体关系图(ERD)三种方式。以下就对网站的两个 B/S 子系统进行建模分析。2.2 用列图在面向对象分析的方法中通常使用 USE

12、 CASE 来获取软件的需求。USE CASE通过描述“系统”和“活动者”之间来描述系统的行为。通过分解系统目标,USE CASE 描述活动者为了实现这些目标而执行的所有步骤。USE CASE 方法最主要的优点,在于它是用户导向的,用户可以根据自己所对应的 USE CASE 来不断细化自己的需求。系统分析的第一步就是指出系统能被用来做什么,谁将去使用它。它们分别就是用例和角色。所有的用例必须始于角色,而且有些用例也结束于角色。角色是位于系统外部的人或其他系统。2.2.1 考试系统用例图考试系统的角色定为系统管理员、浏览用户、注册用户。系统管理员是软件系统的用户;而浏览用户和注册用户则是来浏览试

13、题、测试试题的用户。当然偶尔,系统管理员也可能是一个浏览客户。考试系统用例包括试题的发布,试题的测验,试题答案的核对,管理用户等等。2.2.2 网站论坛用例图网站论坛的角色定为注册用户,系统管理员、公司内部注册用户和非注册用户。注册用户、系统管理员,公司内部注册用户是软件系统的正式用户,可以根据各自的级别实现各项功能。非注册用户只可以浏览论坛的主题内容,不能参与讨论; 网站论坛的用例包括阅读帖子、帖子回复,删除帖子、增删版块、用户注册、删除用户等等。2.3 数据流程图(DFD)DFD 图是组织中信息运动的抽象,是信息系统逻辑功能模型的主要形式,它是用一种图形及与此相关的注解来表示系统的逻辑功能

14、,即所开发的系统在管理和处理方面要做什么,图中没有任何具体的物理元素,只是描述信息在系统中的流动和处理情况,在设计数据流图时,只要考虑系统必须完成的基本逻辑功能,而不需要考虑如何实现这些功能。DFD 使用四种基本元素来描述系统的行为、过程、实体、数据流和数据存储。DFD 方法直观易懂,使用者可以方便地得到系统的逻辑模型和物理模型。经过对体网站的两大子系统的分析,划分好系统的边界,认识系统中数据的来计算机专科毕业论文第 8 页源与去向,确定外部实体,确定数据的流入和流出,形成了相关的数据流图。2.3.1 考试系统数据流程图根据对网站子系统之一的“考试系统”的分析,得到数据流图如图 1 所示:Cl

15、ass NameAttributesP1用户信息检测P6修改用户信息P2答疑中心P3考试中心P4学习中心P5管理考卷P7等级评定用户处理进程数据流外部实体D2 考卷D1 用户信息ID Description数据存储P8新用户注册图 1 考试系统数据流图计算机专科毕业论文第 9 页2.3.2 网站论坛数据流程图根据对网站子系统之一的“论坛系统”的分析,得到数据流图如图 2 所示:P1用 户 登 陆 检 测 P3浏 览 主 题 列 表 P6发 表 主 题P5阅 读 主 题P6帖 子 回 复 P7投 票 P8编 辑 帖 子P4注 册 用 户 修 改 个 人 信 息P2用 户 登 陆 检 测 用 户D

16、1用 户 信 息D2D3主 题 信 息帖 子 信 息Clas NmeAtributesID外 部 实 体数 据 流处 理 进 程escripton数 据 存 储图 2 网站论坛数据流图计算机专科毕业论文第 10 页2.4 实体关系图(ERD)ERD 方法用于描述系统实体间的对应关系,系统分析阶段使用 ERD 描述系统中实体的逻辑关系,在设计阶段则使用 ERD 描述物理表之间的关系户。ERD 只关注系统中数据间的关系,而缺乏对系统功能的描述。现在笔者将 ERD 与 DFD 两种方法相结合,则可以更准确地描述系统。2.4.1 考试系统 ER 图用户资料试卷级别ID姓名类型描述 下一级 ID密码性别

17、学习ID资料存储路径选取分数ID试卷存储路径1MM N计算机专科毕业论文第 11 页图 3 考试系统 ER 图E-R 图转换为关系模型时得到以下关系: 用户表:ID、密码、姓名、性别、类型、级别说明:用户 ID 为主键;类型包括老师、学生、游客、管理员四类用户;级别为外键,针对学生类型,包括初中英语、高中英语、四级英语、六级英语、八级英语、商务英语、GRE 英语和 TOFEL 英语六类。 资料表:ID、级别、资料存储路径说明:资料表 ID 为主键;级别设置同上;具体资料以文件形式存储在硬盘上,资料存储路径指向该文件。 试卷表:ID、级别、试卷存储路径说明:试卷表 ID 为主键;级别设置同上;具

18、体试卷以文件形式存储在硬盘上,试卷存储路径指向该文件。 学习表:用户 ID、资料 ID说明:本表存储每次用户每次学习的记录。 选取(试卷)表:用户 ID、试卷 ID、分数说明:本表存储每次用户选取一份试卷的记录,并记录这份试卷的分数(初始为 O) 。 级别表:ID、描述、下一级说明:级别 ID 为主键。计算机专科毕业论文第 12 页2.4.2 网站论坛 ER 图 用 户 主 题发 表 包 含 包 含注 册 时 间用 户 IDEmail用 户 名 用 户 ID主 题 名 称所 属 主 版主 题 帖 子 数帖 子 主 版ID标 题 所 属 主 题 ID回 帖 ID主 版 显 示 顺序 主 版 名

19、称 主 题 数 量ID1:M实 体 关 系 连 通 词属 性1MM11图 4 网站论坛 ER 图上图是笔者对网站论坛的核心部分的实体关系描述,但不代表网站论坛的实体关系图,由于论坛的关系模型主要采用的是“凌云论坛”的原本结构,其总共涉及多达 40 个实体,鉴于水平有限,不在此展开描述。计算机专科毕业论文第 13 页第三章 系统的总体设计3.1 开发环境本系统是在微软的 ASP.NET 平台下开发的 Web 应用程序。使用WINDOWS2000 作为操作平台。其 WEB 服务器使用 Microsoft 的 Internet Information Server 5.0 ,开发工具使用 VS200

20、5+Sql2000;网页设计使用Dreamweaver 8.0.3.2 用户界面需求考虑到网民对计算机的使用可能不是很熟悉,必须要使界面简洁、便于操作。3.3 性能需求3.3.1 系统的灵活性友好、方便的操作界面。系统功能的快捷、有效。系统接受请求后,能够立即向请求者发送响应消息。有关大数据量的计算或操作,要求算法设计合理,系统计算快捷。3.3.2 系统的可扩展性系统的可扩展性主要体现在建立稳固的技术平台,可以方便地增加或扩展系统功能,不用改变系统的总体结构。因为在系统设计初期不可能包括所有所需的功能,这就要求系统应当具有自我发展的能力和很强的容纳能力,当出现要扩展后继的高级功能时能够顺利进行

21、。3.3.3 系统的安全性因为一切操作都在网上进行,而且发表的信息有可能不符合国家政策法规,所以不可避免的要考虑系统的安全性。主要措施是严格控制系统的访问权限,具体如下:此系统有一套权限控制,用户的身份分为版主、普通会员。不同身份的用户所拥有的权限是不同的,因此所能进行的操作也是不同的。管理员具有最高权限。计算机专科毕业论文第 14 页3.4 系统的流程及结构图3.4.1 注册用户流程图:3.4.2 非注册用户流程图进入站点登陆,注册,系统验证权限等注册用户首页发表帖子添加好友查看帖子信息修改游客身份登录普通游客首页论坛页面网上登陆论坛信息网上注册页面进入站点计算机专科毕业论文第 15 页3.

22、4.3 系统数据库设计根据系统分析的数据库 E-R 图,进行数据库表设计,命名数据库为 forums.mdb。数据库表明分别是 Topics、SMS、Reply、Members、FriendInfor、Forums 等。 帖子信息表(Topics)字段名称 字段说明 类型与长度 Null 主键或外键ID 用户编号 自动编号(长整型) not null 主键password 密码 文本(10) not nullname 姓名 文本(50) not nullgender 性别 文本(2)userType 类型 数字(整型) not nulluserLevel 级别 数字(整型) not null

23、外键 短信表(SMS)字段名称 字段说明 类型与长度 Null 主键或外键ID 资料编号 自动编号(长整型) not null 主键materialLevel 级别 数字(整型) not null 外键path 资料存储路径 文本(100) 回复表(Reply)字段名称 字段说明 类型与长度 Null 主键或外键ID 试卷编号 自动编号(长整型) not null 主键paperLevel 级别 数字(整型) not null 外键path 试卷存储路径 文本(100) 会员信息表(Members)字段名称 字段说明 类型与长度 Null 主键或外键userID 用户编号 数字(长整型) no

24、t null 外键materialID 资料编号 数字(长整型) not null 外键 好友信息表(FriendInfor )字段名称 字段说明 类型与长度 Null 主键或外键计算机专科毕业论文第 16 页userID 用户编号 数字(长整型) not null 外键paperID 试卷编号 数字(长整型) not null 外键score 分数 数字(单精度) 论坛表(Forums)字段名称 字段说明 类型与长度 Null 主键或外键ID 级别编号 数字(整型) not null 主键describe 描述 文本(100) not nullnextLevel 下一级 数字(整型) not

25、 null 外键 类目信息表(Category)字段名称 字段说明 类型与长度 Null 主键或外键userID 用户编号 数字(长整型) not null 外键paperID 试卷编号 数字(长整型) not null 外键score 分数 数字(单精度) 管理员表(Admin)字段名称 字段说明 类型与长度 Null 主键或外键ID 级别编号 数字(整型) not null 主键describe 描述 文本(100) not nullnextLevel 下一级 数字(整型) not null 外键计算机专科毕业论文第 17 页第四章 系统实现4.1 系统登录验证模块4.1.1 系统登录网站

26、中的用户登录及注册功能是第一个结合 ASP.NET 技术应用的范例,通过用户身份的确认来判断该用户的使用权限,从而引导用户进入相应的网页。以下是该程序相应的流程图:是否开始是否输入姓名密码是 否打开数据库验证用户名密码返回,重新输入姓名与密码密码是否正确进入会员首页 结束登陆论坛页面效果图:计算机专科毕业论文第 18 页4.1.2 在线注册网站论坛中会员注册功能就是添加会员,其基本流程就是首先用户填写基本信息,然后提交,在提交数据之前,代码会检验数据的合法性,如果通过验证,这提交到数据库中保存。会员注册页面如图:4.2 信息修改模块信息修改模块的功能主要是方便用户修改自己的信息、密码。功能界面

27、如图:计算机专科毕业论文第 19 页系统代码实现如下:在页面加载时先帮定数据。/bind data string sql = “Select * from Members Where MemberName=“ + Session“User“.ToString() + “;SqlDataReader dr = Run.RunDataRead(sql);if (dr.Read()this.Hd1.Value = dr“MemberID“.ToString();this.TxtUser.Text = dr“MemberName“.ToString();string sex = dr“Sex“.ToS

28、tring();if (sex = “男“)this.RadBtnman.Checked = true;elseRadBtngril.Checked = true;/赋值this.Txtemail.Text = dr“Email“.ToString();dr.Close();dr.Dispose();修改完成,单击修改按钮则执行修改操作,代码为:/修改if (Page.IsValid)string pwd = this.Txtpwd.Text.Trim();string sex;string Sql;if (this.RadBtnman.Checked)计算机专科毕业论文第 20 页sex =

29、 “男“;elsesex = “女“;if (pwd = “ | pwd = null)Sql = “Update Members set MemberName=“ + this.TxtUser.Text.Trim() + “,Sex=“ + sex + “,“;Sql += “Email=“ + this.Txtemail.Text.Trim() + “ Where MemberID=“+this.Hd1.Value;elsepwd = EncryptFuntion.Encrypt.EncryptPwd(pwd,“MD5“);Sql = “Update Members set MemberN

30、ame=“ + this.TxtUser.Text.Trim() + “,Sex=“ + sex + “,“;Sql += “Email=“ + this.Txtemail.Text.Trim() + “,MeberPwd=“ + pwd + “ Where MemberID=“+this.Hd1.Value;/Response.Write(Sql);/Response.End();if (Run.RunSql(Sql)Response.Write(“alert(信息修改成功!);history.back();“);Response.End();elseResponse.Write(“aler

31、t(信息修改失败!);history.back();“);Response.End(); 4.3 论坛类别管理模块论坛类别管理主要是设置论坛类别信息,属于基础数据设置,论坛分类,每个类目下面有若干个子论坛,论坛类别管理界面如图:计算机专科毕业论文第 21 页实现代码如下:在页面加载时首先邦定数据,代码为:string sql = “Select * from Category“;DataSet ds = Run.RunDataSet(sql);this.GridView1.DataSource = ds;this.GridView1.DataBind();当要执行删除操作时的代码为:if (e

32、.CommandName = “Del“)string id = e.CommandArgument.ToString();string DelStr = “Delete From Category Where CategoryID=“+Convert.ToInt32(id);if (Run.RunSql(DelStr)Response.Redirect(“Category.aspx“);elseResponse.Write(“alert(删除失败!);history.back();“);Response.End();4.4 帖子管理论坛帖子管理主要是管理会员发的各种帖子信息,对过时或没用的数

33、据删除,维护论坛的信息合法。管理界面如图:实现代码为:首先在页面加载时邦定要显示的数据,邦定数据代码为:string Str = “Select * from Topics Where TopicsID=“+Convert.ToInt32(id);string mid=null;string UpdateSql;SqlDataReader dr = Run.RunDataRead(Str);if (dr.Read()计算机专科毕业论文第 22 页mid = dr“mAuthing“.ToString(); dr.Close();dr.Dispose();修改代码:if (e.CommandNa

34、me = “Del“)string id = e.CommandArgument.ToString();string DSql = “Delete From Topics Where TopicsID=“+Convert.ToInt32(id);if (Run.RunSql(DSql)Response.Redirect(“Topics.aspx“);elseResponse.Write(“alert(删除失败!);history.back();“);Response.End();4.5 会员管理模块会员管理的功能非常重要,它是管理论坛中的所有会员,可以根据情况对违反网站管理的会员进行屏蔽、删除

35、等操作,维护网站的正常运转。实现页面如图:实现代码参考源程序。计算机专科毕业论文第 23 页第五章 系统测试5.1 测试规程在 WEB 开发过程中,基于 WEB 系统的测试、确认和验收是一项重要而富有挑战的工作。基于 WEB 的系统测试与传统的软件测试不同,它不但需要检查和验证是否按照设计的要求运行,而且还要测试系统在不同用户的浏览器端的显示是否合适。重要的是,还要从最终用户的角度进行安全性和可用性测试。然而,Internet 和 Web 媒体的不可预见性使测试基于 Web 的系统变得困难,因此,我们必须为测试和评估复杂的基于 Web 的系统研究新的方法和技术。5.1.1 白盒测试技术白盒测试

36、也称结构测试或逻辑驱动测试,它是知道产品内部工作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行,按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确工作,而不顾它的功能,白盒测试的主要方法有逻辑驱动、基路测试等、主要用于软件验证。5.1.2 黑盒测试技术黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测计算机专科毕业论文第 24 页试来检测每个功能都正常使用,在测试时,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。黑盒测试方法主要有等价类划分、边值分析、因-果图、错误推测等,主要用于软件确认测试。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报