WEB考试系统.docx

上传人:b****7 文档编号:10418266 上传时间:2023-02-11 格式:DOCX 页数:28 大小:27.82KB
下载 相关 举报
WEB考试系统.docx_第1页
第1页 / 共28页
WEB考试系统.docx_第2页
第2页 / 共28页
WEB考试系统.docx_第3页
第3页 / 共28页
WEB考试系统.docx_第4页
第4页 / 共28页
WEB考试系统.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

WEB考试系统.docx

《WEB考试系统.docx》由会员分享,可在线阅读,更多相关《WEB考试系统.docx(28页珍藏版)》请在冰豆网上搜索。

WEB考试系统.docx

WEB考试系统

WEB考试系统

WEB在线考试系统

——学生在线考试的实现

摘要:

信息化已经深入人们的生活~自动控制、无纸化自动办公、企业信息化、网上书店、

网上娱乐等等都是信息化的产物。

随着信息化的潮流~我们的教育也开始了信息化~几年来关

于教育信息化的教研论文不计其数~这说明教育走向信息化是一个必然的过程~那么基于B/S

模式下的考试系统正是这种思想的一个重要的体现~教育的信息化必然会出现无纸化的、远程

的考试系统~他的出现体现了学校管理信息化~较大程度上减少了教育经费和教师的重复劳动~

真正体现出信息化时代的特色和优点。

关键字:

考试系统ASP.NETC#

Abstract:

Informationhasanin-depthpeople'slives,automaticcontrol,automaticpaperlessoffice,businessinformation,onlinebookstores,onlineentertainmentandsoonareallaproductofinformationtechnology.Withthetrendofinformationtechnology,education,wehavebeguntoinformation,informationoneducationoverthepastfewyearsofteachingandresearchofnumerouspapers,indicatingtoinformationtechnologyeducationisaninevitableprocess,basedonB/SmodeItisthisthinkingoftheexaminationsystemisanimportantembodimentoftheeducationofinformationboundtobepaperless,remoteexaminationsystem,heembodiestheemergenceoftheschoolofinformationmanagement,alargerextent,areductionofexpenditureoneducationandteachersTheduplicationofeffortandreallyreflectstheinformationagecharacteristicsandadvantages.

Keyword:

ExaminationSystemASP.NETC#

第一章引言

1.1开发在线考试系统的目的和意义

信息技术通过几年的发展,现在中小学校基本具有计算机机房,中学生也已经

掌握使用计算机的基本能力,信息技术管理正在学校教育中不断的规范化,在学校

管理中有着举足轻重的地位,而作为考务管理和评卷阅卷上在中小学却未有多大变

化,这是一种极不合理的现象。

教育是一件脑力劳动的工作,因教材更新周期性比较长,并且变化并不大,而

教师在积极收集有助于学生资料时却年复一年地忙碌于出同类同样的试题测试学

生,不仅占用了教师大量的时间,更重要的是很多教师都在做着重复劳动。

而在线

考试系统能在这个问题上很大程度地有助于解决问题,并且现在有很多的在线考试

方案已经有很多成功的案例走在前面,考试将走向网络化考试、无线化考试,这是

符合信息发展要求的。

而我所处的中学,师资力量紧张,信息技术、音、体、美等学科在人力上的投

资更少,在考核考查上更是力所不能及,如果有一个智能化的考试系统,有助于学校对这些科目考核的管理,使学校规范化更上一层楼。

因此,在选题上我选择了在线考试系统,在这个方案中,我采用的是B/S模试。

在Windows平台上,使用IE浏览器,完成试卷选择、考试、交卷等考试任务。

还可以通过多媒体手段来完成监考。

传统考试要求老师刻试卷、印试卷、安排考试、监考、收集试卷、评改试卷、讲评试卷和分析试卷,这个漫长而复杂的过程,全部简化为服务器后台工作,教师只要在监考和主观题型的评阅上做一点工作就可以了。

相比传统的考试方式,基于WEB的在线考试系统的主要好处是一方面可以动态地管理各种考试信息,只要准备好足够大的题库,就可以按照要求自动生成各种试卷,即使为保证试题的时效性,也只要对题库中的试题做微小修改或更新即可;另一方面,考试时间灵活,可以在规定的时间段内的任意时间参加考试;另外计算机化的考试的最大特点是阅卷快,系统可以在考试结束时当场给出客观题考试成绩,计算机阅卷给了考生很大的公平感。

1.2开发背景及系统开发环境

随着计算机技术的发展及计算机的日益普及,基于WEB在线考试已成为大势所趋。

基于WEB在线考试也越来越成为学校的好帮手,它的优势不但体现在人力上,也体现在物力上,基于WEB的在线考试系统的自动评阅、计分、成绩存档功能将有效地避免资源的浪费,减少重复劳动,有利于环保,减少人员,提高效率。

近几年来,Internet出现了大量的在线考试系统。

在线考试系统一般是应用ASP等软件开发出来的无纸化考试系统,具有良好的开放性,允许管理员对试题库进行管理与开发,有效地保证了题库的时效性,为便于考生直接进行考试,主要适用于各类主要采用客观性题型的考试。

在线考试系统充分利用了B/S结构的特点,实现了将考试系统移植到Internet的功能,该系统的优势在于极大的简化了老师出题的工作。

目前比较流行的两种网络开发模式分别是C/S模式与B/S模式,B/S模式通过进行通信,可以不受地域的限制,但他不能进行联机事务的处理,并且有大量数据处理的情况下,速度较慢。

从目前的开发技来看Browser作为信息收集源,特别是大量的数据录入工作还不能完全取代Client端的用户界面。

对于本在线考试系统,其功能目标是实现将现有的纸张答题式考试向基于Internet的无线纸张考试系统的转变,所以它必须实现整个考试流程的进行,实现对系统的管理,以及完成阅卷、评分这些环节和处理。

由于系统数据收集的实时性要求并不高,因此采用B/S结构来进行设计是合理可行的。

本方案采用ASP.NET技术开发基于WEB的在线考试系统,ASP.NET技术是Microsoft公司的产品,对Windows系统良好的支持,易于维护,符合现在中小学

中普遍采用Windows系统的现状。

ASP.NET具有良好的开发平台,在VisualStudio.Net中可以采用拖放控件的方式来实现,代码编辑也比较方便。

本系统具有用户注册、多用户同时在线考试、考试时间控制、自动阅卷、题库维护、用户管理、分数管理等功能。

本系统主要由用户注册模块、管理模块、在线考试模块组成。

随机选题及自动评分的实现是本系统的关键。

第二章需求分析

要实现一个软件系统,首先应该进行需求分析,这样才能令设计出的软件满足用户的各项功能。

下面就对在线考试系统的设计进行需求分析。

2.1系统需要解决的主要问题

首先,因为考试是面向特定的某些对象的,所以考试者进入系统应该进行身份验证。

考试者进入考试系统后,应该能根据自己的需要选择考试科目,所以该系统还应具有考试科目选择的功能。

在线考试于一般的单机考试是不同的。

鉴于考试环境一般为机房,考试者之间的距离很近,为了在线考试做到规范,对于每个应试者来说,试卷的试题和题量都应是相同的,但试题并不相同。

在线考试基于网络环境,试卷应该从服务器的数据库随机抽取试题后动态生成的。

另外,系统还应该对考试时间进行控制,时间到了会要求考试者交卷。

考试者选择答案提交后,应该由计算机自动判卷,得到成绩后显示出来。

考试完毕后,可以返回登录界面或继续考试。

此外,应该能够方便、快捷的对在线考试系统管理,此外,用户还应能进行远程注册。

2.2系统应该具备的基本功能

用户登陆:

用户通过用户名和密码进行登录。

用户信息的管理:

管理员可以增删用户

试题库管理:

可以增加、修改、删除试题。

试卷生成:

从试题库里随机抽取试题生成一份原始试卷。

在线考试:

系统严格控制整个考试过程,实行时间的监控与权限的控制,考生需要在限定的考试时间内交卷。

计算机自动阅卷:

本系统只考虑客观题,要求计算机能自动阅卷,然后马上显示出考生分数。

成绩查阅:

考生考完以后,管理员应该能对所有纪录进行查询,并应该可以删除指定纪录。

第三章系统总体设计

3.1基本简介

该系统是专门用于用户注册、登录、参加在线考试以及管理员进行试题录入、修改、删除、成绩查询、管理用户的ASP.net应用程序。

它应该具有开放性、方便性和灵活性。

考生进行有效的身份验证登录后,要求在规定的时间内进行答题,当达到规定的时间后,系统将自动予以提示。

一旦考生做完交卷后便能立即看到自己的考试成绩,并且其分数将被记入库中以供审核和查阅;另外,还可完全由计算机自动灵活、随机的抽取试题库中的各类试题组成各种形式的试卷,其内容会随着库中试题的改变而改变,而且,不同的考生生成的试题是不同的。

3.2运行环境与系统结构

为了保证系统运行的效率和可靠性,系统服务器端应具有较高的软硬件配置,客户端的要求不是很高。

此应用程序可广泛运行于国际互联网即Internet,也可适用于内部的局域网。

其运行要求如下:

软件环境:

客户端:

Windows98/2000/XP,IE5.0以上

服务器端:

WindowsNT/Windows2000,Windows2000Server,IIS5.0及其以上版本。

开发环境:

.Netframework2.0,Visualstudio2005

数据库:

采用SQLServer2000,运行于服务器端。

3.2系统结构图

根据需求分析,在线考试系统的结构图如下:

在线考试系统

系统管理成绩查询在线考试

用户管理试题管理

3.3详细设计

详细设计是整个设计过程中,最重要的步骤之一。

而E-R图是对实体及联系的体现,系统的E-R图如下:

学号姓名密码编号姓名密码

mn学生教师管理

n1nn

抽查查看管理取看

mmmn

试题成绩

编号题目答案编号学号得分

下面就分如下几个部分对系统进行详细设计:

(1)试题设计

(2)数据库中表的设计(3)管理功能设计(4)功能模块详细设计。

3.3.1试题设计

鉴于主观题的主观性,目前无法实现系统自动判卷,所以本系统只作客观题部分。

一般情况下,单选题往往在四个供选的答案A、B、C、D中选择唯一正确的答案;3.3.2数据库中表的设计

1.question表结构

通常,每一类型的试题都应有一个表结构。

但考虑到目前系统存贮空间可以很大,也为了更加方便。

我们采用把全部试题集中在一起的方案来建立数据表,每道客观题均有四个备选答案项,字段名一般是相应的英文单词。

这样,查询起来较方便,会节约时间,也不致于造成数据十分杂乱等。

详细设计如下表所示:

question表

字段名称类型说明

ID自动编号常整型,递增,主键

Question文本字段大小200

A文本字段大小50

B文本字段大小50

C文本字段大小50

D文本字段大小50

Answer文本字段大小50

hasselected文本字段大小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文本字段大小50paw文本字段大小50各字段说明:

studentname字段代表学生的名字。

studentpassword字段代表密码。

admin表结构

admin表

字段名称类型说明

Name文本字段大小50Password文本字段大小50Id自动编号常整型,递增,主键各字段说明:

name字段代表管理员的名字。

password字段代表密码。

id字段为管理员的标志号。

3.3.3用户、管理员权限

管理员:

在此系统中只有一个管理员,即系统管理员。

具有一般用户所没有的权限,即具有管理一般用户、试题管理功能。

一般用户:

主要是指学校的学生和企事业单位的培训对象等

3.3.4功能模块详细设计

下面,对各个功能模块分别进行详细讨论,具体情况见系统源程序。

3.3.4.1管理模块

管理员可以向题库中添加各种类型且符合要求的试题,也可以对它们进行修改和删除。

同时,管理员也能对科目、用户、考试记录等数据进行管理。

试题管理

(1)试题录入

首先,试题的录入是通过一个页面中的web服务器控件:

GridView完成的。

GridView控件是.netframework2.0新增加的一个数据绑定控件。

它的功能比.netframework1.1中的DataGrid控件的功能进一步加强,并且效率也有所提高。

(2)试题修改

管理员还可以对试题进行修改。

不过,对于各表中的主键不用修改,避免了造成系统中的数据混乱,或者覆盖其它有用数据的现象。

如果用户执行了非法操作,则必须重新操作。

对于对数据库数据的修改,在以前的asp页面中比较麻烦,要想修改一条记录,必须写很长的代码。

在中,几乎可以不写一行代码,就可以对数据库记录进行修改。

(3)试题删除

管理员可以删除不再需要的试题。

通过在每一条记录的后面放置一个button按钮并提示用户是否要删除,来完成试题的删除。

3.用户管理

管理员可以通过管理界面添加或删除用户。

3.4.2在线考试模块

进入在线考场是本系统最重要的部分之一。

因为一个系统如果涉及到现实的话,就必须考虑得十分周到、完善。

考生登录后,只要选择考试科目以后,就可以调出试卷进行在线考试。

系统所选的题是随机选出的,这样就会使每个考生的试卷都不同。

考生的其答题信息通过单选按钮选择答案来反映。

考试结束采取自主交卷的方式办法予以实现。

系统会在考试时间结束前1分钟提示考生交卷。

第四章系统实现

4.1总体概要

在进行了整体设计以后,就开始进行详细的设计及编码工作。

也就是设计文件和把他们有机地组织在一起实现所有功能。

根据系统总体设计,首先系统要有一个登录界面,用户可以从该界面登录参加考试。

管理员也应该有一个进入管理登录界面的通道。

进入开始考试界面,由计算机随机提取试题,显示出来组成试卷,并开始进行计时。

考生再次进行考试,答完试题后交卷,进入下一个界面。

考生提交答卷后,由计算机进行处理--判卷,得出考试分数,显示出来,并把该生考试记录存入数据库。

在这个界面上应该可以返回继续进行考试或回到登录界面。

以上是系统进行考试功能的部分,要对系统进行管理,如试题管理、科目管理、用户管理等就需要设计一些管理界面。

下面就来逐步进行设计。

要进行管理首先要有管理员登陆验证,这里另外设计了一个界面,使它与用户登录区别开来。

这个界面与用户登录界面表面上很相似,但是他们是从不同的表中提取数据进行验证的,以便于系统扩充和增加安全性。

管理用户的界面可以实现用户的增加、和删除的功能,管理员在此可以对用户进行管理。

管理管理员的界面,功能和管理用户的差不多,实现对管理员的增加和删除功能。

管理考试纪录界面可以对考生的每次考试进行纪录,管理员科可以对考生成绩、时间及考试各相关纪录进行查询和删除。

最后是试题库管理界面,它根据各科进行分类。

通过这个界面管理员可以对题库中的某科试题进行增加、修改或删除。

这样就十分方便灵活的对试题库进行管理。

4(2配置数据库连接字符串

为了方便数据库连接字符串的调用,把字符串放入Global.asax配置文件中,在程序启动时加载字符串,在其它页面需要调用时再从Application从调用读出。

在Global.asax中定义一个string型的connectionstring,把连接的字串赋给它,再用Application.Add方法把它增加到程序中。

voidApplication_Start(objectsender,EventArgse)

{

//在应用程序启动时运行的代码

stringconnectionstring="DataSource=(local);InitialCatalog=ExamDB;User

ID=sa;Password=0210851";

Application.Add("connectstring",connectionstring);

}

在其它页面需要时可用以下语句读取数据库连接字符串:

stringconnectionString=(string)Application["connectstring"];

4.2登录页面

因为是html标记与脚本分成两个文件,这种方式有助于代码的编写及隐藏和页面的布局,所以在登录页面中也就有了两个文件Default.aspx和Default.aspx.cs。

在Default.aspx中调用三个Lable标签,两个TextBox文本框和两个Button按钮,标签用来显示用户名和密码及输入错误提示信息,文本框用于记取用户输入的信息,并分别赋予变量username和password,按钮是分别进入学生考试和管理员管理界面的链接。

为了验证输入的信息是否规范,例如不能为空等,特加入了两个验证控件,

RequiredFieldValidatorID="RequiredFieldValidator1"runat="server"

ControlToValidate="usernametxt"ErrorMessage="必填字段">

RequiredFieldValidator>

RequiredFieldValidatorID="RequiredFieldValidator2"runat="server"

ControlToValidate="pawtxt"ErrorMessage="必填字段">

RequiredFieldValidator>

为验证用户是否为合法用户,在Default.aspx.cs中主要定义了两个事件,分别用于点击了学生考试和管理员管理时进行不同权限的验证。

学生考试Button事件:

protectedvoidtestlogbtn_Click(objectsender,EventArgse)

{

stringusername=usernametxt.Text.Trim();

stringpassword=pawtxt.Text.Trim();

stringconnecionstring=(string)Application["connectstring"];

SqlConnectionconn=newSqlConnection(connecionstring);

try

{

boolflag=false;

conn.Open();

stringcommandtext="selectdistinct*fromstudentwherestudentname='"+username+"'andpaw='"+password+"'";

SqlCommandcheckcommand=newSqlCommand(commandtext,conn);

SqlDataReaderdr=checkcommand.ExecuteReader();

flag=dr.HasRows;

if(flag)

{

Session.Add("username",username);

Session.Add("logintime",System.DateTime.Now.ToLongTimeString());

conn.Close();

Response.Redirect("test.aspx");

}

else

{

lblmessage.Text="用户名或密码错误,请重新登陆~";

usernametxt.Text="";

pawtxt.Text="";

}

}

catch(Exceptionerr)

{

Response.Write(err.Message);

//Response.Redirect("error.aspx");

}

finally

{

if(conn.State==ConnectionState.Open)

conn.Close();

}

}

管理员管理Button事件:

protectedvoidadminlogbtn_Click(objectsender,EventArgse)

{

stringusername=usernametxt.Text.Trim();

stringpassword=pawtxt.Text.Trim();

stringconnecionstring=(string)Application["connectstring"];

SqlConnectionconn=newSqlConnection(connecionstring);

try

{

boolflag=false;

conn.Open();

stringcommandtext="selectdistinct*fromadminwherename='"+username+"'and

password='"+password+"'";

SqlCommandcheckcommand=newSqlCommand(commandtext,conn);

SqlDataReaderdr=checkcommand.ExecuteReader();

flag=dr.HasRows;

if(flag)

{

Session.Add("username",username);

Session.Add("logintime",System.DateTime

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

当前位置:首页 > 考试认证 > 公务员考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1