您的当前位置:首页正文

基于ASP.NET2.0的在线考试系统的设计与实现

2021-03-04 来源:九壹网
第28卷第9期 2011年9月 计算机应用与软件 Computer Applications and Software Vo1.28 No.9 Sep.2011 基于ASP.NET2.0的在线考试系统的设计与实现 李伟为 (吉林农业大学吉林长春130118) 摘 要 ASP.NET 2.0是一种基于.NET框架的Web开发平台,能够迅速构建、部署和运行各种规模的Web应用。为实现在线 考试系统的开发快速、功能完善与运行稳定,系统更好地服务于专本科院校,提出了基于ASP.NET2.0的在线考试系统。通过对一 款已经设计完成并投入实际运行的在线考试系统介绍,分析了系统特点,以学生平台为例详细说明了其设计与实现,具有较高的应 用价值。 关键词 中图分类号ASP.NET2.0 c#在线考试 TP302.1 文献标识码A oNLINE TEST SYSTEM DESIGN AND IMPLEMENTATIoN DEVELoPED WITH ASP.NET2.0 Li Weiwei. (Jilin Agricultural Unwers ,Changchun 130118,Jilin,China) Abstract ASP.NET 2.0 is a web development platform on.NET framework.It is used for rapid establishment,deployment and execution of web applications of different scales.In order to realize the rapid development,perfect functions and stable operation of the online test sys‘ tem that can beaer serve colleges and institutes,the online test system developed with ASP.NET 2.0 is put forward.By introducing an actual running online test system that is completely designed and put into use,the system characteristics are analyzed.The student platform is taken as an instance to elaborate its desin and implgementation as well as to prove its high application value. Keywords ASP.NET2.0 C#Online test 0 引 言 1994年3月,中国获准加入互联网,并在同年5月完成全 部中国联网工作。1995年5月,成立第一家互联网服务供应 商——瀛海威,中国的普通百姓开始进入互联网络。经过十多 年的发展,互联网已经深入到人们生活的方方面面。人们对互 联网的利用已经不仅仅限于当初的查资料、收发邮件。现在,在 1系统总体设计 Online-test系统面向三种身份的用户:管理员,教师,学生。 管理员负责管理维护考试系统,比如增加删除用户,修改试题信 息;教师向题库中添加试题,评阅填空、主观题、实验、查询学生 考试成绩;学生登录系统后,根据导航菜单可选择在线考试子系 统、实验平台、在线留言、文件上传等,例如在进入在线考试子系 互联网上可以看电影电视剧、买卖商品、玩网络游戏等。 跨入二十一世纪,互联网在高等院校得到了推广,迅速普及 起来。各大专院校相继建立了自己的网络中心,用来组建一个 统之后选择考试科目,学生在线答题,答题分为四个部分:单选 题、多选题、填空题、主观题,学生每答完一部分提交一次,四个 部分提交完毕,考试结束。系统分为管理员平台、教师平台、学 生考试平台、学生实验平台、在线留言平台 和上传下载平台 等六大模块。 Online.test系统开发以实用、稳定为原则。采用MS SQL 信息平台,存储海量数据。教师可以把自己的教学资料放置在 服务器上,学生使用客户端浏览器如IE7.0来访问这些资源。 然而,作为教学过程中的一个重要环节一考试,许多教育单位仍 停留在传统使用纸和笔的阶段。每次编排试卷,都要安排教师 出题,分A、B两套试卷,防止泄题事件的发生。试卷打印出来 后,依次发给考生。考试完后,教师必须收上考生答题试卷,手 SERVER2000数据库 实现数据的存取处理;基于B/S模式实 现系统管理,数据维护和信息服务;采用Microsoft公司ASP. NET2.0 结合c# 开发语言实现快速开发。SQL SERV. ER2000数据库通过数据库接口类实现与考试系统的共享。系 工评阅每位考生的答卷。整个过程耗费时间长,效率低下,又容 易出错。更重要的是,打印试卷需要大量的纸张,相应会损耗打 印设备…。在网络普及,提倡建设资源节约型社会的今天,这 种传统的考试方式显然已经不能满足社会的需要。 因此,发现使用一种新的考试方式变得尤为紧迫。正是在 如此的条件下,开发了一套在线考试系统。 统的总体结构如图1所示。 收稿日期:2010一O8—3O。李伟为,硕士生,主研领域:计算机农业 应用。 164 计算机应用与软件 2011生 由于篇幅有限,本小节仅拿三张数据表:Student,Test— ■ 盈翟 _[= 瞄翮 二砸毗r_ L 二翮黜l: : ■ 黛爱既£]卜c 唧: Mulsec,ScoreMulsec来具体说明数据表的设计。 —毒■ 堕蛩 一ml 7 ; Student数据表用于存放学生信息,它的详细设置如表1所示。 表1 Student数据表 圈 }. ’t ; 字段名 ID StudentNum StudentName ClassNum 描述 序号 学号 姓名 班级 数据类型 Int Varchar Varchar Varchar 长度 4 50 50 50 索引 Y NULL I I l 由 图1系统总体结构图 StudentGender StudentP|wd 性别 密码 Varchar Varchar 50 50 2系统开发 2.1 系统开发与运行环境 Visual Studio 2005是微软公司继Visual Studio 2003之后推 出的一款产品,与Visual Studio2008相比较,基于.NET2.0平台 TestMulsee数据表用于存放多选题信息,它的详细设置如 _表2所示。 表2 Test_Mnlsec数据表 字段名 ID TestContent 描述 序号 题目 数据类型 Int Varchar 长度 4 400 索引 Y NULL 无论在开发技术还是在第三方控件支持方面都更有优势。 Online.test系统在Visual Studio 2005开发环境下完成,数据库采 用MS SQL SERVER 2000,以C#作为开发语言,交互界面应用 ASP.NET2.0技术。系统采用WINDOWS2003 SEVER自带 IIS6.0作为WEB服务器。具体步骤不再赘述。 TestAnsl TestAns2 选项一 选项二 Varchar Varchar 200 20o 系统运行硬件平台推荐:INTEL双核CPU E5200,2GB内 存,160GB硬盘。 TbstArls3 restAns4 选项三 选项四 Varchar Varchar 20o 20o 2.2数据库系统建设 目前做开发比较流行的数据库有SQL SERVER,DB2, ORCALE等。考虑到我们设计的考试系统数据量并不是很大, 安全性要求不高,以及技术掌握程度等因数,所以选定MS SQL Sever 2000作为本系统的数据库。 2.2.1数据库系统设计 RightAns Pub TestCourse —答案 是否发布 科目 Varchar Int Varchar 20o 4 50 ScoreMulsec数据表用于存放多选题成绩,它的详细设置 如表3所示。 表3 Score_Mulsec数据表 作为Online.test底层的数据库系统,包括用户(管理员、教 师、学生)信息表单,试题(单选、多选、填空、主观)信息表单,各 部分(单选、多选、填空、主观、总分)成绩信息表单,实验信息表 单,留言信息表单,分别对应以下tables:Admin,Teacher, —Subitem,TestStudent,TestSingle,TestMulsec,TestBlank,Test—_ 字段名 ID Studentld LessonName ScoreMulsec StudentName StudentAns 描述 序号 题目 选项一 选项二 选项三 选项四 数据类型 Int Varchar Varchar Int Char Char 长度 4 50 50 4 10 2o0 索引 Y NULL ——LabScoreSingle,ScoreMulsec,ScoreBlank,Score .Subitem,Score ——..——_Total,Score—Lab,Message.各数据表之间的关系如图2所示。 RightAns 答案 Char 200 ClassNam 是否发布 Char 50 2.2.2基础数据采集录入 通过联系教研室与网络查找等方式收集基础数据,将准备 好的基础数据,包括管理员信息、教师信息、学生信息、试题信 息、实验题信息等通过系统各个板块的添加功能将数据录入数 据库中。 2.2.3数据库连接 系统调用数据库内数据,通过基类BaseClass.es来实现,给 出部分代码如下: public clss BaseClass a图2各数据表关系 第9期 public BaseClass() 李伟为:基于ASP.NET2.0的在线考试系统的设计与实现 165 题。其中,单选与多选题实现了自动评分,考完该部分即见成 { } public static SqlConnection DBCon() 绩。而填空,主观题则由教师人工评分,根据考生具体答题情况 给出相应成绩;2.4节将详细介绍该部分。 (3)考试评分成绩。 教师据学生答题内容,结合参考答案,给出 { return new SqlConnectionf”server=.;database=OnlineTest; (4)实验平台学生用户进入实验平台,该平台从数据库 中随机提取实验试题,如果数据库中存在该试题对应图片,将其 显示出来,供学生参考,如果不存在图片,将弹出提示信息;2.4 节将详细介绍该部分。 uid=sa;pwd=”): } //新建数据库连接; public static void BindDG(GridView dg,stirng id,string strSql, string Tname) { SqlConnection corm=DBCon(); //绑定数据源; (5)实验评分教师查看学生上传的源代码文件,检查能 否通过正常调试运行,给出成绩。 (6)在线留言系统中的留言板块,教师与学生用户可在 留言板上交流,发布通知与咨询消息,管理员拥有保留或删除留 SqlDataAdapter sda=new SqlDataAdapter(strSql,conn); DataSet ds=new DataSet(); sda.FiU(ds,Tname); 言板内容的权限,同时可针对用户留言进行回复。 (7)上传下栽学生用户进入实验平台按照要求完成实验 后,可以将完成的源代码文件或者编译好的文件上传至服务器, dg.DataSouree=ds.Tables[Tname]; dg.DataKeyNames=new string[]{id}; dg.DataBind(); } public static void OperateData(string strsq1) 服务器将划分一片存储区域用来保存这些文件。上传的文件被 保存在以形如”1班刘斌”格式的文件夹下,供教师查看下载。 2.3.2 系统管理与维护功能 { Online-test考试系统的管理由管理员用户来负责完成。 //省略; (1)用户分级管理系统使用分级管理的方式,根据实际 } 需求,将用户区分为管理员、教师、学生等三种级别,对应不同的 //如果是学生登录,执行框体内动作; public static bool CheckStudent(string studentNurn,string studentPwd) 使用权限,保障系统的安全性与实用性。例如在留言版中教师 与学生只有留言的权限,只允许管理员来删除留言内容。 (2)数据库维护可通过考试系统来完成数据库维护,实 现对数据的快速录入、修改、删除,由于考试系统基于B/S架构 而开发,因此可实现本地维护与远程维护两种方式。 { SqlConnection coNn=DBCon(); //创建一个数据库连接对象conn; conn.Open(); //打开数据库; SqlCommand cmd=ilew SqlCommand(”select count(})from tb— Student where StudentNuII1= ’+studentNum+” and StudentPwd= 。+ 2.4学生平台详细设计 由于篇幅有限,仅以学生平台的设计与实现为例来说明本 考试系统的设计。 studentPwd+” ,conn); //按学号与密码来查询记录; int i=Conve ̄.Tolnt32(cmd.ExecuteScalar()); 学生输入正确的用户名与密码,选择身份“学生”,进入学 生平台。为了验证学生用户是否拥有使用学生平台的权限,在 考试系统数据库中建立了一张数据表:student,它用来存放学 if(i>0) { returntrue; //查询记录存在,则返回true,否则返回false; ・ 生信息(学生信息只能由系统管理员添加或者删除),包括每名 学生的学号、姓名、性别、班级、密码等。学生登录系统时,系统 自动比对输入的用户名、密码、身份是否与数据库中student数 据表存放的信息一致,若不符合,则弹出错误信息提示学生用 户,若符合,则进入学生平台(如图3所示)。 //关闭数据库; } else { returnfalse; } conn.Close(); } 2.3系统功能设计 Online-test考试系统是以大专院校为对象,利用成熟的 .NET 2.O框架保证运行可靠性。使用该考试系统,可完成在线 2.3.1 系统应用功能 考试、在线留言、实验、文件上传下载等功能。 Online—test系统为教师用户提供试题录入、考试评分、实验 评分、在线留言、下载文件等功能;为学生用户提供在线考试、在 ■■ ■■●^●■■●■■ 线留言、实验平台、上传文件等功能。 (1)试题录入教师用户将收集到的试题信息,有单选、多 选、填空、主观、实验等以Online,test系统的使用界面录入。 (2)在线考试系统从数据库中随机抽选试题,提供给考 生在线考试。考试分为四个部分:单选题,多选题,填空题,主观 I 帕l1-_ I -№・- 軎l衄口啪 脚嗍辅 图3学生平台 2.4.1在线考试子系统 考虑到学生一天之内可能要参加多场考试,而且考试的科 (下转第224页) 224 计算机应用与软件 2011丘 由图1和2的寻优曲线图可了解到:对于Sphere函数,从寻优曲 入第四部分:主观题。学生在规定的60分钟内答题,最后提交。 至此,考试全部结束。 2.4.2实验平台 线来看,改进的算法迭代的次数为100次左右,标准优化算法为 52次左右,改进的算法能达到更小的适应度值,从而扩大了搜索 范围和提高了收敛精度;对于更加复杂的多维Ras/rgin函数,改 进的算法寻优曲线远比标准算法寻优曲线平滑,说明了改进的算 法稳定性更好,效果也更明显,从两个函数寻优曲线达到收敛迭 代次数上来看改进的粒子群优化算法可以有效地摆脱局部最优, 同在线考试子系统一样,实验之前必须阅读实验规则,选择 实验科目。本文中选择C语言实验。 实验题可查看图片,若图片存在,则显示图片,若不存在对 应图片,则弹出错误提示。 避免了早熟收敛,从而寻到最佳的全局最优。综上所述,表明本 2.5 系统特点 文所提出的新算法在克服早熟收敛问题、提高收敛速度、增强摆 从实际应用出发,对比其他考试特点,可以得出本系统的特 脱陷入局部最优值、改善局部和全局搜索能力方面效果明显。 4结语 本文对遗传算法和标准粒子群优化算法进行了结合研究,从 理论上分析了标准粒子群优化算法的缺点及其改进方法,提出了 一种带有遗传操作的粒子群优化算法。标准PSO中在经过选 择、交叉和变异操作后,增强了粒子群的更新能力和跳出局部最 优的能力。通过用两个测试函数进行了性能测试,验证了这一改 进算法在解决局部寻优和早熟收敛的问题上有着良好的效果。 参考文献 [1]WangLei,KansQi,XiaoHui,et a1.A Modiifed adaptive particle swarm optimization algorithm.IEEE,Shanghai,2005:209—214. [2]Ahmed A A Esmin,Germano Lambe ̄.Torres,Antonio C.Zambronide Souza,A hybrid particle swarm optimiz ̄ion applied to loss power mini— mization[J].IEEE TRANSACTIONS ON POWER SYSTEMS,2005, 2O(2):859—866. [3]Daniel W Boeringer,Douglas H Wemer.Partide Swarm Optin'ifzation Versus Genetic algorithms for Phased Array Synthesis[J].IEEE TRANSACTIONS ON ANTENNAS AND PROPAGATION,2004,52(3):771—779. [4]Sangwook Lee,Sangmoon Soak,Sanghoun Oh,et al,Modiifed binary patricle swarln optimization[J].Natural Science,2008:1 161—1 166. [5]Holland J H.Adaptation in natural and artiifcial Systems Ann Arbor [M].Michigan:The University of Michigan Press,1975. [6]Chatterjee A,Siarry P.Nonlinear inertia wei【ght variation for dynamic adaptation in particle Swarm optimization[J].Computers and Opera- tions Research,2006,33(3):859—871. ‘ [7]胡旺,李志蜀.一种更简化而高效的粒子群优化算法[J].软件学 报,2007,18(4):861—868. [8]黄友锐.智能优化算法及其应用[M].北京:国防工业出版 社.2008. (上接第165页) 目有所不同。因此在子系统中设置了考试科目,供学生选择。 系统数据库中建立了有关考试科目与试题的数据表,考试科目 的试题随机出现在考试中。考试正式开始之前,学生需阅读考 试规则,然后选择考试科目。 考试正式开始,第一部分出现的是单选题,单选题部分考 完,提交该部分答题,系统自动给出评分。进入第二部分:多选 题,学生需在二十分钟时间内答完5道多选题,每小题4分。答 完多选题,提交,系统自动给出评分。接下来,进入第三部分:填 空题,学生在10分钟内完成答题,否则系统自动提交。最后,进 点:1)功能较为全面,除了能再现考试之外,整合了上传下载、 实验平台、在线留言等功能板块;2)操作界面美观,给使用者一 种美感;3)多选题自动评分,主观题人工评分,实现了电脑评分 与人工评分的结合;4)实现对考试信息的汇集存储,彻底实现 了无纸化。 3讨论 参考了其他考试系统 ,吸收了部分设计理念,在收集 了大量试题,实验信息之后,将这些信息归类。以Visual Studi. 02005为开发环境,C#作为开发语言和ASP.NET2.0开发工具, 经过数月时间开发,不断调试,完成了基于ASP.NET2.0的在线 考试系统。本系统与在线考试考务管理系统…,基于B/S结构 的在线考试系统 相比,无论在界面设计还是功能适用方面都 更胜一筹。 本系统可以更好地服务于大专院校,操作简便,支持进一步 构建实验自动评分系统,实时聊天系统等等。系统拓展的关键 在于对各种实验平台的掌握与考试需求信息的收集。在系统的 后续开发与应用中,加强考试子系统与实验平台对图片的处理 能力,开发出更加完善的考试系统,以顺应不断变化发展的 潮流。 参考文献 [1]陈志权.基于ASP.NET的在线考试考务管理系统[D].中山大 学,2009. [2]徐龙.基于ASP.NET技术的电子留言板设计与实现[J].电脑知 识与技术2009,93(25):74—76,93. [3]李伟红.SQL SERVE ̄实用教程[M].中国水利水电出版社,2005. [4]郭常圳,李云锦.ASP.NET网络应用开发例学与实践[M].清华大 学出版社,2006. [5]林少景.ASP.NET编程百例通[M].清华大学出版社,2002. [6]林邦杰.深入浅出c群程序设计[M].中国铁道出版社,2005. [7]陈钟,刘强,张高.c#编程语言设计与开发[M].清华大学出版 社,2004. [8]邵维.基于ASP.NET的中学在线考试系统的研究与实现[D].天 津师范大学,2008. [9]曾长军,张新令.基于.NET的课程资源与教学管理平台设计与 开发[J].湖北经济学院学报:人文社会科学版,2010(o4):176 178. [10]宋继红,曹悦.基于ASP.NET AJAX的网上考试系统的设计与实 现[J].电脑知识与技术,2009(25). [11]郑瑞卿.基于B/S结构的在线考试系统的实现[D].南昌大 学,2007. 

因篇幅问题不能全部显示,请点此查看更多更全内容