完整版基于AJAX的信息发布与反馈系统的设计毕业设计Word文档下载推荐.docx
《完整版基于AJAX的信息发布与反馈系统的设计毕业设计Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《完整版基于AJAX的信息发布与反馈系统的设计毕业设计Word文档下载推荐.docx(53页珍藏版)》请在冰点文库上搜索。
信息发布是通过传媒介质传播一些具有一定价值和意义的信息,使人们可以及时获得信息内容。
信息反馈是人们在看到信息内容后,发表的一些看法或见解,并把自己的看法或见解反馈给信息发布人的一个过程。
本课题所研究的信息发布是指学生向管理员或教师提出建议和系部发布一些调查表信息;
信息反馈是指管理员或教师回复建议并对学生填写的调查表信息进行统计和总结。
本课题设计一个信息发布与反馈系统,系统以ASP.NET和SQLServer2005为开发平台,服务器端代码选用C#语言编写,所有的代码都能在VS2008环境中运行通过,且功能已全部实现。
通过该系统,同学们可以很方便地对系里的教学工作提出各种意见,管理员和教师可以对同学们提出的意见进行分类,对其中有价值的信息做出及时的回复。
系统还具有发布调查表的功能,并把调查结果实时地用数据形式表达出来。
本系统以方便实用为出发点,充分考虑实际应用的需求,实现了建议的提出和回复,调查表的发布和反馈信息统计等功能,基本可以满足系部管理工作的需求。
在本系统开发中应用Ajax技术实现页面的无刷新技术,使本系统更加高效地响应用户的各种操作请求。
本文按照软件工程所要求的软件开发过程,循序渐进地介绍了信息发布与反馈系统的设计思路、设计方法和实现技术。
论文包括五章,具体内容如下:
第一章概述,介绍了本系统开发的背景和设计目标以及使用的相关工具和技术。
第二章需求分析,通过具体的调查对系统所要实现的功能和系统数据库进行分析。
第三章总体设计,根据需求分析的结果确定设计原则,完善功能模块结构,完成数据库设计。
第四章详细设计,具体介绍本系统中数据库的链接,主要功能的实现和页面的设计。
第五章测试,对系统进行测试,验证系统的正确性。
第1章概述
1.1系统开发背景
随着高校规模的不断扩大,高校已成为一个巨大的信息集聚地。
为了实现信息及时高效的传达,方便教师和学生之间的交流,让学生参与到学校各个方面的建设中去,实现和谐校园,对于学校和系部来说,及时获取学生的意见和建议是非常必要的,本课题就是为此目的而开发的一个用于我系信息发布与反馈的系统。
目前,在我国以及国外的各大高校都有不同形式的、具有一定的信息发布和反馈功能的系统。
许多院校通过学校网站实现信息发布,很少院校具有功能全面的信息反馈系统,因此不能很好地获取和回复学生的建议或意见。
其中,值得推荐的是中国农业大学主页中的“校长信箱”功能,它具有强大的建议查询功能,而且可以及时公开的显示建议内容和管理员的回复结果,学生可以根据管理员回复的内容对其进行满意度投票,以提高管理员的工作效率[1]。
在各校的信息发布系统中,能够发布调查表的系统目前也有一些,但有的系统仅拥有简单的类似“投票”的功能,对于被调查对象的身份难以辨识;
还有的系统通用性较差。
总之,缺乏功能强大,能够动态编辑和发布各种调查表的系统,因此使调查表的发布和维护很不方便[2]。
就我系而言,系部网站也有“书记信箱”功能,学生可以通过这里向系里提出一些建议或意见,但其收件人比较单一,且功能比较简单。
对于调查表功能来说,我系网站没有这项功能。
为了完善系部网站功能,方便师生交流,提高系部工作效率,我设计了一个适用与我系的基于AJAX的信息发布与反馈系统。
1.2系统设计目标
设计开发一个基于Web的信息发布与反馈系统,能够收集我系学生对教学、学生纪律管理等方面的意见和建议,能够针对意见和建议回复反馈信息,能够编辑、发布系里拟定的调查表,能够对调查结果、学生意见进行归类统计。
本系统主要实现以下10项功能:
(1)用户登录与权限管理:
用户分为管理员、教师、学生三种身份,用户登录后只能转到相应的页面进行操作。
(2)发表建议:
学生可以向管理员和教师提出建议。
(3)回复建议:
管理员和教师可以对建议进行回复。
(4)修改密码:
学生和老师可以修改自己的密码。
(5)建议管理:
管理员根据类别和关键词查看、监督信息、删除不良信息,修改建议类别,并可以提取信息的关键词,进行信息的归类。
(6)用户管理:
管理员可以增加、删除、修改、查看教师和学生的信息。
管理员分为高级管理员和普通管理员,高级管理员可以添加、删除、修改、查看普通管理员的信息。
(7)类别管理:
类别用于对建议意见进行归类。
管理员可以查看、增加、修改、删除类别。
(8)关键字管理:
管理员可以增加、删除、修改、查看建议信息的关键字,也可以根据关键字查找相应的建议信息。
(9)调查表管理:
管理员可以增加、修改、发布调查表,学生可填写调查表。
(10)调查统计:
显示所有建议的数量,根据建议的类别显示不同类别建议的数量。
显示学生填写调查表的结果。
本系统设计的目标是:
运行在Web环境下,充分体现我系管理工作的特点,功能完整,界面友好,操作方便,统计功能完善,统计结果简洁明了,此外,能够快速响应用户的操作请求。
1.3开发与运行环境
本系统开发环境:
选用的操作系统为WindowsXPProfessional,程序开发环境为MicrosoftVisualStudio2008ASP.NET,数据库开发工具为MicrosoftSQLSERVER2005EXPRESS。
系统运行环境:
NETFramework3.5,IE6.0或者以上版本,MicrosoftSQLSERVER2005。
1.4开发技术
该系统采用B/S架构,在.NET平台下采用ASP.NET3.5、MicrosoftSQLServer2005进行开发,其中网页的制作主要运用了ASP.NETAjax组件实现页面的无刷新。
1.4.1B/S架构
B/S架构即Browser/Server(浏览器/服务器模式)(如图1-1所示),是WEB兴起后的一种软件结构模式。
这种模式下,统一了客户端,将WEB浏览器作为客户端最主要的应用软件,将系统的主要功能集中到WEB服务器上实现,这样,简化了系统的开发、维护和使用[3]。
B/S结构最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。
只要有一台能上网的电脑就能使用,客户端零维护。
系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。
图1-1B/S架构模型
1.4.2ASP.NET
ASP即ActiveServerPages(动态服务器页面),是微软公司的一项技术,是一种使嵌入网页中的脚本可由因特网服务器执行的服务器端脚本技术,是运行于IIS之中的程序。
ASP.NET作为ASP的下一个版本,既继承了ASP原有的优点,而且是一种建立在通用语言上的程序构架,能被用于建立强大的Web应用程序。
ASP.NET是language-independent(语言独立化的),所以,开发者可以选择一种最适合自己的语言来编写程序,或者把程序用很多种语言来写。
ASP.NET一般分为两种开发语言,VB.NET和C#,C#相对比较常用,在本系统中就使用了C#语言来完成代码的编写[4]。
1.4.3AJAX技术
Ajax(AsynchronousJavaScriptandXML)技术是一种创建交互式网页应用的网页开发技术,是综合异步通信、JavaScript以及XML等多种网络技术的新的编程方式。
从用户看到得实际效果来看,也可以形象地称之为无页面刷新技术[5]。
图1-2传统的Web应用程序与使用Ajax技术的应用程序对比图
Ajax的最大优点就是能在不更新整个页面的前提下维护数据。
这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息,因此结合运用Ajax实现页面的无刷新技术(局部刷新),可以使本系统更加高效地响应用户的各种操作请求。
传统的Web应用程序与使用Ajax技术的应用程序的对比如图1-2所示。
ASP.NET为实现AJAX提供了支持,ASP.NETAJAX提供了如下功能:
●
服务器端允许ASP.NETWeb页面响应部分页面的回送操作。
ASP.NET服务器控件便于实现Ajax功能。
HTTP处理程序允许ASP.NETWeb服务在部分页面的回送操作中,使用JavaScriptObjectNotation(JSON)串行化功能与客户端代码通信。
网站模板可用于创建支持ASP.NETAJAX的Web应用程序。
客户端的JavaScript库对JavaScript语法进行了许多改进,还提供了许多代码,来简化Ajax功能的实现。
第2章需求分析
2.1功能需求分析
信息系统的开发目标必须以满足用户需求为前提,而在系统开发的第一阶段,用户的需求往往是不完整的、不明确的,需要开发者协助用户对需求做进一步的理解乃至创造并归纳出较为详细的需求说明。
一个相对完整、准确的需求分析会为整个信息系统开发带来良好的开端,也会尽可能地避免在开发过程中走弯路。
因此,花费足够的时间进行详细的用户需求分析是非常必要的。
本系统功能需求的分析利用UML(UnifiedModelingLanguage)统一建模语言进行了用例建模设计。
2.1.1角色划分
用例建模设计之前。
首先要对系统进行分析,确定系统用户,按照系统用户划分相应的角色,为不同的角色赋予不同的功能,即各类角色在系统中所承担的职责。
本系统的角色包括了三类:
学生、教师、管理员。
下面分析这些角色的具体功能并画出相应的用例图。
2.1.2详细用例图
1.学生角色的主要功能
包括提出建议、收件箱管理、修改密码、填写调查表等。
学生用例图如图2-1所示。
图2-1学生用例图
2.教师角色的主要功能
包括回复建议、修改密码等,教师用例图如图2-2所示。
图2-2教师用例图
3.管理员角色的主要功能
管理员拥有最大权限,具有各种管理功能,包括用户管理、建议管理、调查表管理、建议信息统计、调查表信息统计等。
管理员用例图如图2-3所示。
图2-3管理员用例图
2.2数据库需求分析
数据库是信息系统的核心,它具有对信息进行收集、组织、存储、加工、抽取和传播等功能。
数据库设计是信息发布与反馈系统实现的重要环节,其设计的好坏直接关系到系统设计的成败。
数据库设计的第一步是做好数据需求分析,一个好的数据库应该充分适应系统的功能要求[6]。
根据系统角色的划分和要实现的功能,总结该系统的数据对象主要包括如下几种:
●学生信息,包括:
学号、学生姓名、所在班级、专业、登陆密码等。
●教师信息,包括:
教工号、教师姓名、登陆密码等。
●管理员信息,包括:
管理员账号、管理员姓名、级别、登陆密码等。
●建议信息,包括:
建议编号、标题、类别、发件人、收件人、建议内容、建议时间、建议状态等。
●类别信息,包括:
类别编号、类别名称等。
●关键字信息,包括:
关键字编号、所属类别、关键字名称等。
●调查表信息,包括:
调查表编号、调查表主题、发表时间、截止时间、发表人等。
●题目信息,包括:
编号、题号、题目类别、题目内容、出题时间、调查表号等。
●题目选项信息,包括:
选项号、选项内容、题号、调查表号。
第3章总体设计
3.1系统架构
本系统的设计思想完全采用面向对象的编程模式来实现。
由上到下系统一共分为3个层次,即页面表示层、数据业务逻辑层和数据访问层,系统的三层架构如图3-1所示。
页面表示层主要完成了向用户展现数据,为用户提供数据录入的界面。
通过页面表示层,用户可以完成日常的增加、删除、修改和查询等操作。
数据业务层起到了承上启下的作用,对于页面表示层来说,数据业务层可以理解为数据操作的服务,当用户请求的时候,页面表示层通过调用相应的数据业务层方法,来完成对数据的操作。
而对于数据访问层来说,数据业务层是动作的发起者,由它直接与数据访问层通讯,最终数据库的数据提交返回给页面表示层。
数据访问层位于最下层,主要完成数据的操作、与数据库的数据源直接进行交互、完成数据的直接操作[7]。
图3-1系统的三层架构图
3.2功能模块结构
根据需求分析,本系统需要为三类用户:
管理员、教师和学生,提供不同的功能集合,因此可以将系统功能模块划分为三大模块:
(1)管理员模块:
包括用户管理、收件箱管理、建议管理、类别管理、关键字管理、调查表管理、题目管理、建议信息统计和调查表信息统计等子模块。
(2)教师模块:
包括收件箱管理、修改密码等子模块
(3)学生模块:
包括写建议、收件箱管理、填写调查表、修改密码等子模块。
系统各模块之间的关系如图3-2所示。
图3-2系统模块结构图
3.3数据库设计
3.3.1数据库概念结构设计
图3-3数据库整体E-R图
根据前面的数据需求分析可确定的数据实体有:
教师信息实体、学生信息实体、建议信息实体、调查表信息等实体。
数据库E-R图及各个实体E-R图列举如下。
(1)数据库整体E-R图,如图3-3所示。
(2)教师实体,如图3-4所示。
图3-4教师实体
(3)学生实体,如图3-5所示。
图3-5学生实体
(4)管理员实体,如图3-6所示。
图3-6管理员实体
(5)建议信息实体,如图3-7所示。
图3-7建议实体
(6)类别实体,如图3-8所示。
图3-8类别实体
(7)关键字实体,如图3-9所示。
图3-9关键字实体
(8)调查表实体,如图3-10所示。
图3-10调查表实体
图3-11题目实体
图3-12选项实体
(9)题目实体,如图3-11所示。
(10)选项实体,如图3-12所示。
3.3.2数据库逻辑结构设计
由E-R图导出一组关系模式如下:
(1)教师(编号,姓名,密码)
主键:
编号。
(2)学生(学号,姓名,班级,专业,密码)
学号。
(3)管理员(账号,姓名,密码,级别)
账号。
(4)建议(建议编号,标题,类别名称,写件人,收件人,时间,建议内容,建议状态)
建议编号。
外键:
类别名称。
(5)回复(回复编号,标题,类别名称,写件人,收件人,时间,回复内容,回复状态)
回复编号。
(6)类别(类别编号,类别名称)
类别编号。
(7)关键字(关键字编号,类别名称,关键字名称)
(8)调查表(调查表编号,主题,开始日期,截止日期,发表人)
调查表编号。
(9)题目(题目编号,题号,题目类型,题目内容,出题时间,调查表编号)
题目编号。
(10)选项(选项编号,选项内容,题目编号,调查表编号)
选项编号。
题目编号,调查表编号。
(11)调查表回复(答题编号,答案,题目编号,调查表编号,学号)
答题编号。
题目编号,调查表编号,学号。
3.3.3数据库表设计
在SQLSERVER2005中建立数据库“Information”,数据文件Information.mdf,日志文件Information_log.ldf。
1.表结构
(1)学生基本信息表,如表3-1所示。
表3-1学生基本信息表student
字段名称
数据类型
可否为空
字段描述
sno
Varchar(10)
NotNull
学号(主键)
sname
Varchar(20)
学生姓名
pwd
密码
clss
所在班级
subject
所属专业
(2)教师信息表,如表3-2所示。
表3-2教师基本信息表teacher
tno
教师编号(主键)
tname
教师姓名
(3)管理员信息表,如表3-3所示。
表3-3管理员基本信息表admin
ano
管理员账号(主键)
aname
管理员姓名
level
管理员级别
(4)建议信息表,如表3-4所示。
表3-4建议基本信息表suggestion
id
Int
建议编号(主键)
title
Varchar(100)
标题
type
类别
anthor
写信人
time
Datetime
默认系统日期
写信时间
giver
收件人
content
Varchar(1000)
建议内容
state
Varchar(50)
建议状态
(5)回复信息