【Asp.net精品源码栏目提醒】:网学会员--在 Asp.net精品源码编辑为广大网友搜集整理了:【精品】在线考试系统论文 - 其它资料绩等信息,祝愿广大网友取得需要的信息,参考学习。
山东大学计算机科学技术学院 2004 级夜大本科毕 业 论 文 论文题目:在线考试系统 指导教师:李铁军 姓 名: 冯长江 学 号: 150 在线考试系统(Online Test System) 摘要:本在线考试系统是利用微软最新的.net 平台并用 B/S 结构的模式和ACCESS 数据库编写的网络应用程序。
它有应用简单、升级和部署方便、扩展性强等特点。
满足任何授权的考生随时随地考试并迅速获得成绩,由于时间紧张,美工方面并没有下太多功夫,只是实现功能而已,界面看起来有些单调,并且现在只能对一科进行考试,没有增加科目的管理,请指导老师理解。
前言 随着网络技术的飞速发展,现在很多国外的大学和社会其他部门都已经开设了远程教育,通过计算机网络实现异地教育和培训。
现在,计算机硬件技术的发展已经达到了相当高的水平。
但是,远程教育软件的开发目前还处于起步阶段,随着这项技术的不断深入发展,就要求有更好、更完善的软件系统应用到远程教育当中去,这就给软件设计人员提出了更高的设计要求。
远程教育包括很多环节,例如教学系统、答疑系统和考试系统等等。
其中很重要的一个环节就是在线考试系统,同时它也是最难实现的环节。
在我国,虽然远程教育已经蓬勃地发展起来,但是目前学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。
显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。
随着计算机应用的迅猛发展,网络应用不断扩大,如远程教育和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。
人们迫切要求利用这些技术来进行在线考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证、客观,更加激发学生的学习兴趣。
例如目前许多国际著名的计算机公司所举办的各种认证考试绝大部分采用这种方式。
在线考试是现阶段研究开发的一个热点。
它是建立在国际互联网上的应用系统,客户端的配置可以极为简单,使考试不受地域的局限。
一个完备的在线考试系统可以使用户在网上学习过后及时检验自己的学习效果,已发现自己的不足,使得学习效率得到很大提高。
在线考试系统中题目的生成、试卷的提交、成绩的批阅等都可以在网络上自动完成。
只要形成一套成熟的题库就可以实现考试的自动化。
这样一来,教师所要做的只是精心设计题目、维护题库,而不是组织考试,从而大大减轻了教师的负担,这表明其经济性是相当可观的。
为了适应新形势的发展,我进行了这一系统的初步设计工作,也可以说是做一个初步的探索,希望它能够在各类考试中发挥高效、便捷的作用把老师从繁重的工作中解脱出来! 目前,网络应用软件运行的模式主要有二类:Client/server 模式,Browser/Web 模式。
前者主要的缺点是维护、升级较麻烦,后者是近几年伴随Internet 迅速发展起来的一种技术,它与客户/服务器方式类似,客户端是一个标准的浏览器,服务器端是 Web Server ,而 Web Server 与数据库和应用服务器的紧密结合,使得这种模式的应用范围不断扩大,它已不仅仅用于网上查询,有很多部门的业务系统、企业的 MIS 系统纷纷采用这种模式,它的主要优点是便于扩充应用、升级维护简便。
另外,考试系统的软件也必将不断的更新;同时软件产品本身就要经过一个不断自我完善的过程。
基于上述考虑,用 Browser/Web 模式来设计考试系统比较合适,服务器端我们采用 Access 数据库系统和微软最新的.net 平台及
ASP.net 技术来构成考试的应用服务系统;客户端采用浏览器来完成考试全过程,同时可进行远程系统维护和管理。
第一章 相关知识介绍 该在线考试系统主要采用 Microsoft .net Framework、
asp.net Access 数据库、C语言、SQL 以及 Visualstudio2005 等技术和工具,整体设计遵循软件工程的方法,经过需求分析、总体设计、文档和代码的编制、模块测试和系统实现几个阶段。
Asp、
Asp.net 和.Net framework Asp 是 Active Server Page 的英文缩写。
是微软开发的一种服务器端技术从字面上说,ASP 包含三方面含义: 1、Active:ASP 使用了 Microsoft 的 ActiveX 技术。
ActiveX(COM)技术是现在 Microsoft 软件的重要基础。
它采用封装对象,程序调用对象的技术,简化编程,加强程序间合作。
ASP 本身封装了一些基本组件和常用组件,有很多公司也开发了很多实用组件。
只要你可以在服务器上安装这些组件,通过访问组件,你就可以快速、简易地建立自己的 WEB 应用。
2、Server:ASP 运行在服务器端。
这样就不必担心浏览器是否支持 ASP 所使用的编程语言。
ASP 的编程语言可以是 VBSCRIPT 和 JSCRIPT。
VBSCRIPT 是 VB的一个简集,会 VB 的人可以很方便的快速上手。
然而 Netscape 浏览器不支持客户端的 VBSCRIPT,所以最好不要在客户端使用 VBSCRIPT。
而在服务器端,则无需考虑浏览器的支持问题。
Netscape 浏览器也可以正常显示 ASP 页面。
3、Pages:ASP 返回标准的 HTML 页面,可以正常地在常用的浏览器中显示。
浏览者查看页面源文件时,看到的是 ASP 生成的 HTML 代码,而不是 ASP 程序代码。
这样就可以防止别人抄袭程序。
ASP由此我们可以看出, 是在 IIS 下开发 WEB 应用的一种简单、方便的编程工具。
在了解了 VBSCRIPT 的基本语法后,只需要清楚各个组件的用途、属性、方法,就可以轻松编写出自己的 ASP 系统。
Asp.net 并不是 ASP 的简单的升级,它是.net Framework 的一部分,而.netFramework 是微软.net 平台的一个重要的组成部分,它是一组用于程序开发的类库,这个类库的规模相当庞大,并且还在不断的更新中。
几乎可以胜任任何程序的开发。
而且.net 是可以跨平台的,用它编写的程序不用重写就可以在不同的平台下运行,就像 java 应用程序一样。
这也是微软用.net 平台与 JAVA 抗衡的一大优势。
Asp.net 是建立在通用语言运行时刻库(CLR)上的应用程序框架。
他用来在服务器端构建功能强大的 web 应用程序。
Asp.net 提供了几个超越以前 web 开发模式的优点: 增强的性能。
Asp.net 是运行在服务器端的编译后的 CLR 代码,而不是像ASP 那样解释执行。
Asp.net 利用提前绑定,即时编译,本地优化和缓存服务来提高性能。
所有这一切,性能远远大于你以往写的每一行代码。
世界级水平的开发工具支持。
Visual Studio .net 的集成开发环境 在 (IDE)中,
Asp.net 框架由丰富的工具箱和设计器组成。
所见即所得的(WYSIWYG)编辑方式、拖放服务器控件、以及自动部署,仅仅是这一强大工具所提供的一少部分功能。
强大而富有弹性。
由于
asp.net 是基于 CLR(公共语言运行库)的,因此整个.net 平台的强大和富有弹性,同样可以应用于 web 应用程序开发者。
.net框架的类库、消息以及数据访问解决方案,都可以无缝集成到 web。
Asp.net 也是语言中立的,因此你可以选择你最熟悉的语言,或者通过几种语言来共同完成一个应用。
而且,CLR 的互用性可以保证你升级到 asp.ent 的时候,现存的基于COM 的开发投资依然保留。
简单。
Asp.net 使执行常用的工作变得很容易,比如从简单的表单提交、客户端验证,到部署和站点配置。
例如,
asp.net 允许你建立用户接口,实现页面和逻辑代码的分离,同时,就像 vb 的表单执行模式那样来处理事件(也就是说,由页面驱动模式变成了事件驱动模式)。
此外,CLR 简化了部署,用来管理代码服务,例如自动参照和垃圾回收。
易于管理。
Asp.net 使用一个基于文本的、分层次的配置系统,它简化了服务器端环境和 web 应用程序的设置。
由于配置信息用纯文本格式保存,新的设置不需要本地管理工具的支持。
这种“零本地支持”的理念也同样应用到了部署
asp.net 应用程序。
Asp.net 应用程序部署到服务器,简化为复制必要的文件到服务器。
在部署,甚至替换正在运行的变异代码的时候,也不需要重新启动服务器。
可伸缩性和有效利用性。
Asp.net 被设计成可伸缩的,能为集群和多处理器环境设计提高性能。
而且,
asp.net 运行时刻密切监视和管理进程,这样,如果发生了错误的行为,例如漏洞和死锁,新的进程会在当前位置建立,来帮助你的应用程序继续处理事件请求。
可订制和扩展。
Asp.net 提供一种良好的扩充结构,允许开发者在适当的级别“插入”他们的代码。
事实上,使用自己的编写的组件可以扩展或者替换
asp.net 运行时刻的任何子组件。
执行自定义验证或状态服务变得前所未有的容易。
ASP.net 是 Microsoft.net 的一部分,作为战略产品,不仅仅是 ActiveServer Page ASP 的下一个版本;它还提供了一个统一的 Web 开发模型,其中包括开发人员生成企业级 Web 应用程序所需的各种服务。
ASP.NET 的语法在很大程度上与 ASP 兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。
可以通过在现有 ASP 应用程序中逐渐添加
ASP.NET 功能,随时增强 ASP 应用程序的功能。
ASP.NET 是一个已编译的、基于 .NET 的环境,可以用任何与 .NET 兼容的语言(包括 Visual Basic .NET、C 和 JScript .NET.)创作应用程序。
另外,任何
ASP.NET 应用程序都可以使用整个 .NET Framework。
开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。
ASP.NET 可 以 无 缝 地 与 WYSIWYG HTML 编 辑 器 和 其 他 编 程 工 具 ( 包 括Microsoft Visual Studio .NET)一起工作。
这不仅使得 Web 开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到 Web 页的 GUI 和完全集成的调试支持。
微软为
ASP.net 设计了这样一些策略:易于写出结构清晰的代码、代码易于重用和共享、可用编译类语言编写等等,目的是让程序员更容易开发出 Web 应用,满足计算向 Web 转移的战略需要。
C语言与 Visual Studio 2005 C是一种简单、现代、面向对象和类型安全的编程语言,由 C 和 C发展而 )牢固地植根于 C 和 C语言族谱中,并且会很快被 C来。
C(发音为“C 霎普”和 C程序员所熟悉。
C的目标在于把 Visual Basic 的高生产力和 C本身的能力结合起来。
C作为 Microsoft Visual Studio 的一部分提供给用户。
Visual 除了 C以外,Studio 还支持 Visual Basic、Visual C和描述语言 VBScript 和 Jscript。
所有这些语言都提供对 Microsoft .NET 平台的访问能力,它包括一个通用的执行引擎和一个丰富的类库。
Microsoft .NET 平台定义了一个“通用语言子集”CLS,是一种混合语言,它可以增强 CLS 兼容语言和类库间的无缝协同工作能力。
对于C开发者,这意味着既是 C是一种新的语言,它已经可以对用老牌工具如 Visual C自己并没有包含一个类库。
Basic 和 Visual C使用的丰富类库进行完全访问。
Visual Studio2005 是微软开发的 visual studio 系列开发工具的最新版本,微软公司在 2005 年 12 月初发布新一代企业级应用开发平台.NET Framework 2.0和开发工具 Visual Studio 2005。
现代信息部门的开发团队必须因应高度竞争的商业环境,快速进行应用软件系统的设计、开发、测试以及部署带领企业赢得市场。
大部分的软件开发团队,都面临以下几项挑战:开发团队间的沟通困难,开发工具形形色色,分散且难以互相整合开发程序、开发标准难以建立。
Microsoft Visual Studio 2005 开发工具系列,有许多令人期盼已久的强化功能,提供更高的程序开发效率、更精简的程序代码、与更佳的安全性。
包括 .NET Framework 2.0、
ASP.NET 2.0、64-bit 程序开发支持、新的 WindowsForm 程序设计、以及对行动装置解决方案的全新开发支持。
数据源:Access 数据库 Access 是微软 Office 中一个极为重要的组成部分。
起初 Access 是一个单独的产品,后来微软发现如果将 Access 捆绑在 office 中一起发售,将会带来更加可观的利润,于是 Access 第一次出现在 office97 中,成为 office 中的一个重要成员。
现在它已经成为 Office 中不可缺少的部件了。
由于微软公司投入大量人力和资金进行技术改进和创新,Access 的新版本功能已经变得越来越强大。
随着版本的升级,Access 的使用也变得越来越容易。
以往很繁琐的工作现在只需几个很简单的步骤就可以高质量地完成了。
很多人都误以为 Access 只能用来做数据存储,其实 Access 不但能用来做数据存储,还具有非常强大的前台界面开发功能,利用各种控件和 VBA 语言,能开发出功能十分强大的软件系统,与此同时,廉价,易用更是其他任何开发工具所不能比拟的。
因此人们可以利用它来解决大量的数据管理工作。
第二章 需求分析 要实现一个软件系统,首先应该进行需求分析,这样才能令设计出的软件满足用户的各项功能。
下面就对在线考试系统的设计进行需求分析。
2.1 系统需要解决的主要问题 首先,因为考试是面向特定的某些对象的,所以考试者进入系统应该进行身份验证。
考试者进入考试系统后,应该能根据自己的需要选择考试科目,所以该系统还应具有考试科目选择的功能。
在线考试于一般的单机考试是不同的。
鉴于考试环境一般为机房,考试者之间的距离很近,为了在线考试做到规范,对于每个应试者来说,试卷的试题和题量都应是相同的,但试题并不相同。
在线考试基于网络环境,试卷应该从服务器的数据库随机抽取试题后动态生成的。
另外,系统还应该对考试时间进行控制,时间到了会要求考试者交卷。
考试者选择答案提交后,应该由计算机自动判卷,得到成绩后显示出来。
考试完毕后,可以返回登录界面或继续考试。
此外,应该能够方便、快捷的对在线考试系统管理,此外,用户还应能进行远程注册。
2.2 系统应该具备的基本功能 用户登陆:用户通过用户名和密码进行登录。
用户信息的管理:管理员可以增删用户 试题库管理:可以增加、修改、删除试题。
试卷生成:从试题库里随机抽取试题生成一份原始试卷。
在线考试:系统严格控制整个考试过程,实行时间的监控与权限的控制,考生需要在限定的考试时间内交卷。
计算机自动阅卷:本系统只考虑客观题,要求计算机能自动阅卷,然后马上显示出考生分数。
成绩查阅:考生考完以后,管理员应该能对所有纪录进行查询,并应该可以删除指定纪录。
第三章 系统总体设计 3.1 基本简介 该系统是专门用于用户注册、登录、参加在线考试以及管理员进行试题录入、修改、删除、成绩查询、管理用户的
ASP.net 应用程序。
它应该具有开放性、方便性和灵活性。
考生进行有效的身份验证登录后,要求在规定的时间内进行答题,当达到规定的时间后,系统将自动予以提示。
一旦考生做完交卷后便能立即看到自己的考试成绩,并且其分数将被记入库中以供审核和查阅;另外,还可完全由计算机自动灵活、随机的抽取试题库中的各类试题组成各种形式的试卷,其内容会随着库中试题的改变而改变,而且,不同的考生生成的试题是不同的。
3.2 运行环境与系统结构 为了保证系统运行的效率和可靠性,系统服务器端应具有较高的软硬件配置,客户端的要求不是很高。
此应用程序可广泛运行于国际互联网即 Internet,也可适用于内部的局域网。
其运行要求如下: ☆软件环境: 客户端: Windows98/2000/XP,IE5.0 以上 服务器端:Windows NT/Windows2000,Windows 2000 ServerIIS 5.0 及其以上版本。
开发环境:.Net framework 2.0,Visual studio 2005,MDAC 2.7 数据库:采用 access,运行于服务器端。
☆硬件环境: 服务器 CPU:PIII 500 以上 内存:256M 以上 客户机 CPU:P200MMX 以上,内存:32M 以上 3.2 系统结构图 根据需求分析,在线考试系统的结构图如下: 在线考试系统 系统管理 成绩查询 在线考试 用户管理 试题管理 3.3 详细设计 详细设计是整个设计过程中,最重要的步骤之一。
下面就分如下几个部分对系统进行详细设计:1试题设计2数据库中表的设计3管理功能设计4功能模块详细设计 3.3.1 试题设计 鉴于主观题的主观性,目前无法实现系统自动判卷,所以本系统只作客观题部分。
一般情况下,单选题往往在四个供选的答案 A、B、C、D 中选择唯一正确的答案; 3.3.2 数据库中表的设计 1.question 表结构 通常,每一类型的试题都应有一个表结构。
但考虑到目前系统存贮空间可以很大,也为了更加方便。
我们采用把全部试题集中在一起的方案来建立数据表,每道客观题均有四个备选答案项,字段名一般是相应的英文单词。
这样,查询起来较方便,会节约时间,也不致于造成数据十分杂乱等。
详细设计如下表所示: 表 3-1 question 表字段名称 类型 说明ID 自动编号 常整型,递增,主键Question 文本 字段大小 200A 文本 字段大小 50B 文本 字段大小 50C 文本 字段大小 50D 文本 字段大小 50Answer 文本 字段大小 50hasselected 文本 字段大小 8各字段说明:ID 是问题的 id 号,用来唯一标志该问题,把它设为主键,类型为自动编号。
Question 字段为问题内容,类型为文本。
A 字段代表选项 A 的内容B 字段代表选项 B 的内容C 字段代表选项 C 的内容D 字段代表选项 D 的内容Answer 字段表示答案选项Hasselected 字段表示是否已经选择过本题score 表字段名称 类型 说明Studentname 文本 字段大小 50Score 数字 常整型Id 自动编号 常整型,递增,主键Testtime 日期/时间 考生考试的时间各字段说明:studentname 字段代表在某次考试记录中学生的名字。
score 字段为某次考试纪录中考试分数。
id 字段为某次考试纪录的标志号。
Testtime 字段代表考试的结束时间。
student 表结构student 表字段名称 类型 说明 Studentname 文本 字段大小 50 paw 文本 字段大小 50各字段说明:studentname 字段代表学生的名字。
studentpassword 字段代表密码。
admin 表结构admin 表字段名称 类型 说明Name 文本 字段大小 50Password 文本 字段大小 50Id 自动编号 常整型,递增,主键各字段说明: name 字段代表管理员的名字。
password 字段代表密码。
id 字段为管理员的标志号。
3.3.3 用户、管理员权限 管理员:在此系统中只有一个管理员,即系统管理员。
具有一般用户所没有的权限,即具有管理一般用户、试题管理功能。
一般用户:主要是指学校的学生和企事业单位的培训对象等 3.3.4 功能模块详细设计 下面,对各个功能模块分别进行详细讨论,具体情况见系统源程序。
3.3.4.1 管理模块 管理员可以向题库中添加各种类型且符合要求的试题,也可以对它们进行修改和删除。
同时,管理员也能对科目、用户、考试记录等数据进行管理。
试题管理 1试题录入 首先,试题的录入是通过一个
asp.net 页面中的 web 服务器控件:GridView完成的。
GridView 控件是.net framework2.0 新增加的一个数据绑定控件。
它的功能比.net framework1.1 中的 DataGrid 控件的功能进一步加强,并且效率也有所提高。
2试题修改 管理员还可以对试题进行修改。
不过,对于各表中的主键不用修改,避免了造成系统中的.