
网络原理与应用
结课报告与项目总结
题目: 学生在线考试系统
姓名:
专业:
班级:
学号:
成绩:
2014 年 6 月 5 日
目录
1任务概述 2
1.1课题研究背景 2
1.2课题研究目的和意义 3
1.3系统需要实现的目标 3
1.4系统的运行环境 4
1.5系统软件介绍 4
1.5.1Visual Studio 2010 的概述 4
1.5.2 SQL Server 2008数据库的概述 5
2功能需求 5
2.1系统需求分析 5
2.2系统总体设计 5
2.2.1基本简介 5
2.2.2 系统结构 6
2.3 功能描述 7
3数据描述 8
3.1静态数据 8
3.2动态数据 8
3.3数据库的概念结构设计 8
3.4数据库的逻辑结构设计 10
3.3数据库物理结构设计 10
4程序描述 13
4.1程序功能模块框架图 13
4.2程序功能与性能 15
4.3程序的逻辑,条件与测试要点 16
5.项目总结 16
6.附录 17
1任务概述
1.1课题研究背景
随着网络技术的飞速发展,现在很多国外的大学和社会其他部门都已经开设了远程教育,通过计算机网络实现异地教育和培训。现在,计算机硬件技术的发展已经达到了相当高的水平。但是,远程教育软件的开发目前还处于起步阶段,随着这项技术的不断深入发展,就要求有更好、更完善的软件系统应用到远程教育当中去,这就给软件设计人员提出了更高的设计要求。
远程教育包括很多环节,例如教学系统、答疑系统和考试系统等等。其中很重要的一个环节就是在线考试系统,同时它也是最难实现的环节。在我国,虽然远程教育已经蓬勃地发展起来,但是目前学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现试的需要。随着计算机应用的迅猛发展,网络应用不断扩大,如远程教育和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。人们迫切要求利用这些技术来进行在线考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证、客观,更加激发学生的学习兴趣。例如目前许多国际著名的计算机公司所举办的各种认证考试绝大部分采用这种方式。
在线考试是现阶段研究开发的一个热点。它是建立在国际互联网上的应用系统,客户端的配置可以极为简单,使考试不受地域的局限。一个完备的在线考试系统可以使用户在网上学习过后及时检验自己的学习效果,已发现自己的不足,使得学习效率得到很大提高。在线考试系统中题目的生成、试卷的提交、成绩的批阅等都可以在网络上自动完成。只要形成一套成熟的题库就可以实现考试的自动化。这样一来,教师所要做的只是精心设计题目、维护题库,而不是组织考试,从而大大减轻了教师的负担,这表明其经济性是相当可观的。为了适应新形势的发展,我进行了这一系统的初步设计工作,也可以说是做一个初步的探索,希望它能够在中发挥高效、便捷的作用,把老师从繁重的工作中解脱出来!
1.2课题研究目的和意义
随着网络技术的飞速发展,现在很多国外的大学和社会其他部门都已经开始设了远程教育。但是,远程教育的软件的开发目前还处于起步阶段,随着这项技术的不断深入发展,就要求有更好、更完善的软件系统到远程教育当中去,这就给软件设计人员提出了更高的设计要求。
远程教育包括很多环节。例如,教学系统、考试系统、和答疑系统等等。其中一个很重要的环节是在线考试系统,同时,它也是最难实现的环节。在我国,远程教育以蓬勃发展起来。但目前学校和社会上的各种考试大都都采用传统的考试方法,在此方式下,组织一次考试,要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。
显然随着考试类型的不断增加和考试要求的不断提高,教师的工作量也越来越大,可以说传统的考试方法已经不能适用于现试的需要。随着计算机应用的迅猛发展,网络应用不断扩大,如远程教育和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。人们迫切需要这些技术来进行在线考试,以减轻教师的工作的负担以及提高工作效率,与此同时提高了考试的质量,从而使考试更趋于公正、客观,更加激发学生的学习兴趣。
1.3系统需要实现的目标
为了在线考试做到规范,对于每个应试者来说,试卷的试题和题量都应是相同的,但试题并不相同。在线考试基于网络环境,试卷应该从服务器的数据库随机抽取试题后动态生成的。另外,系统还应该对考试时间进行控制,时间到了会要求考试者交卷。考试者选择答案提交后,应该由计算机自动判卷,得到成绩后显示出来。考试完毕后,可以返回登录界面或继续考试。此外,应该能够方便、快捷的对在线考试系统管理,此外,用户还应能进行远程注册。
1.4系统的运行环境
为了保证系统运行的效率和可靠性,系统服务器端应具有较高的软硬件配置,客户端的要求不是很高。此应用程序可广泛运行于国际互联网即Internet,也可适用于内部的局域网。其运行要求如下:
☆软件环境:
客户端: Windows98/2000/XP,IE5.0以上
服务器端:Windows NT/Windows2000,Windows 2000 Server,IIS 5.0及其以上版本。
开发环境:.Net framework 2.0,Visual studio 2005,MDAC 2.7
数据库:采用SQL 2008,运行于服务器端。
☆硬件环境:
服务器 CPU:PIII 500以上 ,内存:500M以上
客户机 CPU:P200MMX以上,内存:32M以上
系统运行的条件与
电脑必须是WIN7等WINDOWS系列系统。
1.5系统软件介绍
1.5.1Visual Studio 2010 的概述
Visual Studio 2010是一个全面集成的开发环境,用于编写,调试代码,把代码编译为程序集进行发布,实际上,Visual Studio 提供了非常专业的多文档界面应用程序,在该应用程序中可以进行与开发代码相关的任何操作,它提供了:
●文本编辑器:在文本编辑器中,可以编写C#代码(以及VB 2008,J#和C++代码)。这个文本编辑器相当复杂。
●代码的设计视图编辑器:它可以在项目中可视化的放置用户界面和数据访问控件。此时Visual Studio会自动在源文件中添加必要的C#代码,在项目中实例化这些控件。
●支持窗口:它们可以查看修改项目的各个方面。也可以使用这些窗口指定编译选项。
●在环境中编译:可以只选择一个菜单选项编译项目,而不必在命令行上运行C#编译器。Visual Studio会调用C#编译器。
●集成的调试程序:编程的本质是代码在第一次运行时,一般不会正确执行。也许在第二次、第三次才能正确运行。Visual Studio无缝的链接到一个调试程序上,可以在该调试环境中设置断点,观察变量。
●集成的MSDN帮助:Visual Studio可以在IDE中调用MSDN文档说明。
●访问其他程序:Visual Studio还能调用许多其他工具来查看和修改计算机或网络的一些内容,而无需退出开发环境。
1.5.2 SQL Server 2008数据库的概述
SQL Sevrer2008是一个C/S体系结构的关系数据库管理系统,它使Transact—SQL语言在客户和SQL Server之间发送处理请求,SQL Server利用C/S体系结构把工作分成两部分:客户端负责逻辑处理把数据呈现给用户,SQL Server管理数据库。SQL Server用Transact—SQL作为它的数据库查询和编程语言,使用Transact—SQL能够方便地存取数据、查询、更新和管理关系数据库。
2功能需求
2.1系统需求分析
系统开发的总体任务是实现在线考试的系统化、规范化和自动化。
系统功能分析是在系统开发的总体任务的基础上完成的。在线考试系统需要完成的功能主要有:用户的注册和登录;用户在线答题;对科目进行管理;对管理员进行试题的管理;以及个人信息管理功能。在数据库方面,利用关系数据库功能强大的查询语言对企业各类信息入库保存,按要求及时处理。
该系统集录入、维护、查询、审核和各种处理为一体,各种操作可以通过菜单进行,操作快捷、方便,性能高效、强大;使用易懂、易会,形象增强的数据处理,用户均可根据需要自行使用。
2.2系统总体设计
2.2.1基本简介
该系统是专门用于用户注册、登录、参加在线考试以及管理员进行试题录入、修改、删除、成绩查询、管理用户的ASP.net应用程序。它应该具有开放性、方便性和灵活性。考生进行有效的身份验证登录后,要求在规定的时间内进行答题,当达到规定的时间后,系统将自动予以提示。一旦考生做完交卷后便能立即看到自己的考试成绩,并且其分数将被记入库中以供审核和查阅;另外,还可完全由计算机自动灵活、随机的抽取试题库中的各类试题组成各种形式的试卷,其内容会随着库中试题的改变而改变,而且,不同的考生生成的试题是不同的。
2.2.2 系统结构
1)系统结构图
根据需求分析,在线考试系统的结构图如下:
图2.1 系统结构图
2)详细设计
详细设计是整个设计过程中,最重要的步骤之一。下面就分如下几个部分对系统进行详细设计:(1)试题设计(2)数据库中表的设计(3)管理功能设计(4)功能模块详细设计
3)试题设计
鉴于主观题的主观性,目前无法实现系统自动判卷,所以本系统只作客观题部分。一般情况下,单选题往往在四个供选的答案A、B、C、D中选择唯一正确的答案;
2.3 功能描述
本系统是一个在线考试系统,在实施过程中主要实现以下目标:
(1)界面友好、美观,体现在线考试系统的特点,而且操作简便。
(2)各功能模块层次清晰,代码高效易懂。
(3)添加和编辑简便、清晰,提高工作效率。
(4)查询方便,数据存储安全可靠。
(5)功能全面,实用性强。
主要功能有:
1.注册用户模块
注册用户主要实现用户的登录功能和注册功能。
2.在线测试模块
在线测试是本系统的核心模块,不论是管理员还是普通用户都可以进行在线测试。在此页面中,可以选择不同的科目进行科目测试,也可以显示或者隐藏答案提示。
3.科目管理模块
只有管理员权限的用户登录才可以进入科目管理模块,在科目管理模块中,除了显示已有己。
4. 试题管理模块
只有管理员权限的用户才可以进入试题管理模块。
5. 用户管理模块
在用户管理模块中,管理员可以删除用户和修改用户信息。该页面没有增加用户功能,用户可以自己注册登录。
6. 个人信息修改模块
普通用户登陆后可以进入个人信息修改模块,修改个人密码、身份证号码和E-mail等信息。
7. 开发环境的选择方法
目前,用于开发数据库管理信息系统的编程语言很多,比如Delphi、PowerBuilder、Visual C++、Java、Visual Basic6及VB.NET等等,而用于后台数据库管理的DBMS也有很多,比如有Oracle、MS SQL SERVER、SYBASE、INFORMIX、DB2、VISUAL FOXPRO、ACCESS等等。
本人根据王晓红老师的布置要求,采用面向对象的软件开发方法来实现此在线考试软件,系统开发工具我们选择了能够跨平台的开发工具Visual Studio 2010。在前台操作与后台数据库处理的连接上,主要采用ADO.NET技术和SQL Server2008数据库,运用客户机服务器模式(C/S)配合功能强大的SQL查询语言实现预定的功能需求。
3数据描述
3.1静态数据
学生的学号和姓名,老师的学号和姓名,管理员的用户名和密码等。
3.2动态数据
考试试卷的编绘,考试分数的录入等。
3.3数据库的概念结构设计
图3.1 学生实体E-R图
图3.2 教师实体E-R图
图3.3 课程实体E-R图
图3.4 总体E-R图
3.4数据库的逻辑结构设计
关系模型
学生(学生ID 姓名 密码 专业 考试科目 成绩)
教师(教师ID 姓名 密码 专业)
管理员(管理员名 密码)
课程(课程ID 课程名)
专业(专业编号 专业名称)
成绩(学生编号 课程编号 教师编号 成绩)
3.3数据库物理结构设计
数据库中的表如下所示
表3.1 Admin
| 列名 | 数据类型 | 允许NULL值 |
| ID | int | 不 |
| NAME | varchar | 不 |
| PWD | varchar | 不 |
| JOINTIME | varchar | 允许 |
| 列名 | 数据类型 | 允许NULL值 |
| C_ID | int | 不 |
| C_NAME | varchar | 不 |
| C_DATE | varchar | 允许 |
| TEACHER_ID | varchar | 允许 |
| 列名 | 数据类型 | 允许NULL值 |
| ID | int | 不 |
| C_ID | varchar | 不 |
| TITLE | varchar | 不 |
| ANSWER | BIT | 不 |
表3.4 MULTIPROBLEM
| 列名 | 数据类型 | 允许NULL值 |
| ID | int | 不 |
| C_ID | varchar | 不 |
| TITLE | varchar | 不 |
| ANSWERA | varchar | 不 |
| ANSWERB | varchar | 不 |
| ANSWERC | varchar | 不 |
| ANSWERD | varchar | 不 |
| ANSWER | varchar | 不 |
表3.5 SCORE
| 列名 | 数据类型 | 允许NULL值 |
| ID | int | 不 |
| USERID | varchar | 不 |
| PAPERID | int | 不 |
| SCORE | int | 不 |
| EXAMTIME | datetime | 不 |
| SSCORE | int | 允许 |
| MSCORE | int | 允许 |
| JSCORE | int | 允许 |
| 列名 | 数据类型 | 允许NULL值 |
| ID | int | 不 |
| C_ID | varchar | 不 |
| TITLE | varchar | 不 |
| ANSWERA | varchar | 不 |
| ANSWERB | varchar | 不 |
| ANSWERC | varchar | 不 |
| ANSWERD | varchar | 不 |
| ANSWER | varchar | 不 |
| 列名 | 数据类型 | 允许NULL值 |
| ID | varchar | 不 |
| NAME | varchar | 允许 |
| PWD | varchar | 允许 |
| SEX | varchar | 允许 |
| JOINTIME | varchar | 允许 |
| QUESTION | varchar | 允许 |
| ANSWERD | varchar | 允许 |
| PROFESSION | varchar | 允许 |
| CLASS | varchar | 允许 |
| 列名 | 数据类型 | 允许NULL值 |
| PAPERID | INT | 不 |
| C_ID | varchar | 不 |
| PAPERNAME | varchar | 不 |
| PAPERSTATE | varchar | 不 |
| JOINTIME | varchar | 不 |
| ANSWERTIME | varchar | 允许 |
| SCORE | INT | 允许 |
| TEACHER_ID | varchar | 允许 |
| 列名 | 数据类型 | 允许NULL值 |
| ID | INT | 不 |
| PAPER_ID | INT | 不 |
| TYPE | varchar | 不 |
| TITLEID | INT | 不 |
| MARK | INT | 不 |
| 列名 | 数据类型 | 允许NULL值 |
| ID | varchar | 不 |
| NAME | varchar | 允许 |
| PWD | varchar | 允许 |
| JOINTIME | varchar | 允许 |
| DEGREE | varchar | 允许 |
4.1程序功能模块框架图
图4.1 在线考试登录界面
图4.2 学生考试登录界面
图4.3 学生考试登录界面
图4.4 教师登录界面
图4.5 管理员登录界面
4.2程序功能与性能
1.注册用户模块
注册用户主要实现用户的登录功能和注册功能。
4.在线测试模块
在线测试是本系统的核心模块,不论是管理员还是普通用户都可以进行在线测试。在此页面中,可以选择不同的科目进行科目测试,也可以显示或者隐藏答案提示。
5.科目管理模块
只有管理员权限的用户登录才可以进入科目管理模块,在科目管理模块中,除了显示已有己。
8. 试题管理模块
只有管理员权限的用户才可以进入试题管理模块。
9. 用户管理模块
在用户管理模块中,管理员可以删除用户和修改用户信息。该页面没有增加用户功能,用户可以自己注册登录。
10. 个人信息修改模块
普通用户登陆后可以进入个人信息修改模块,修改个人密码、身份证号码和E-mail等信息。
4.3程序的逻辑,条件与测试要点
用户首先选择用户类型然后进行登录,不同的用户类型有不同的用户界面进行操作。
5.项目总结
此次毕业设计基本完成了一个基于Web的网络在线考试的系统,选择这个课
题一方面是根据现在考试形势变革的需要,要求用一种快速,安全,高效的途径
解决现行考试模式下的一些不足,有利于教学改革;与基于网络的远程教学平台
进行无缝集成目前,国内基于网络的远程教学正处于迅速崛起的发展阶段,迫切
需要一个能够很好地支持教师教学、学生学习的专用远程教学平台与此同时更需
要一个测试教学成果的平台。本系统可以为远程教学提供强有力网络在线考试的
支持,可以与网络课程紧密整合,无缝的集成到远程教学支持平台中。
通过这次设计,不仅提高了自己的理论结合实际的能力,针对以前做的 C/S
模式设计的一个补充,本B/S 模式设计的过程中从解决问题的角度学习到很多与
理论有一定差距的东西,提高了自己分析问题解决问题的能力,系统基本完
成,本系统有如下特点:方便,可靠,操作简单,使用高效,稳定性,安全性,
可扩展性良好。
本次设计过程中有两点重要的体会:就是基于Web 的程序有两个重点:
1. 数据库的优化设计和操作手段以及数据传输过程中的安全性问题的解决和权限的检测。
2.设计者的架构对整个程序的开发进程十分重要,一个良好的程序架构对开发者来说有事半功倍的效果,而对语言环境的要求不会太高。由于开发时间,系统基本架构基本形成,功能基本完善,已达到毕业设计的基本要求,但是由于经验不足,系统需要进一步完善,使之具有更广泛的应用范畴和更合适解决问题的方案,我也会努力并促成新的版本的出炉。
参 考 文 献
1.Ryan K. Stephens著.SQL Serve 2000 study[M].机械工业出版社,2003
2.亮剑.NET 图解ASP.NET网站开发实践 电子工业出版社,2008
3.刘滔.数据库通用模块及典型系统开发.北京:人民邮电出版社,2004
4.袁松著.数据库系统概论.北京:机械工业出版社,2004
5.徐志国,汪孝宜著.数据库开发实例[M].北京:电子工业出版社,2005
6.伍俊良著.管理信息系统(MIS)开发与应用[M].北京科学出版社,2006
7.李建中,王珊著.数据库系统原理(第2版).北京:电子工业出版社,2006
6附录
详见数据库及程序。
