APP下载

基于Web在线考试管理系统

2015-07-18王正燕韦萍萍崔忠伟黄鹏

物联网技术 2015年5期
关键词:题库C语言管理系统

王正燕++韦萍萍++崔忠伟++黄鹏

摘 要:通过利用ASP.NET+C#+MySQL5.0等技术对基于Web在线考试管理系统的用户登录模块、用户信息管理模块、在线考试、题库建设、组卷等模块进行设计与实现,解决了传统考试模式存在的一些问题,实现了信息化时代的数字化、无纸化、实时快速的考试管理模式。

关键词:ASP.NET技术;在线考试;数字化;C# ;MySQL5.0

中图分类号:TN711 文献标识码:A 文章编号:2095-1302(2015)05-0-02

0 引 言

传统考试存在工作量大、效率低、反馈周期长、资源浪费等问题,很多高校希望找到一种数字化、无纸化、考务工作效率高的考试管理方式。开发数字化考试管理系统,一般有两种架构,一种为C/S,一种为B/S,而本文只考虑后者的开发,本系统针对客观题(填空题和改错题)、主观题(如C语言程序题)能够给予自动评分,从而减少人工参与力度和工作量,提高工作效率和评分正确率。

1 系统设计

1.1 系统构建与业务流程

本系统采用B/S结构,系统框架是MVC三层架构模式。系统使用Microsoft Visual Studio2010集成开发坏境,ASP.NET+C#作为系统开发语言,ASP.NET是对ASP的继承,但不是ASP的简单升级,而是微软发展的新的体系结构.NET的一部分,是一个由类和对象(组件)组成的完全面向对象的系统,更加安全、稳定、容易配置和部署。C#是.NET公共语言运行坏境的内置语言。它完美的结合了C/C++的强大功能、Java的面向对象特征和Visual Basic的易用性,是一种简单的、类型安全的、面向对象的编程语言。C#也是微软专门为.NET应用而开发的语言。这从根本上保证了C#与.NET框架的完美结合。服务器运行平台为Windows XP (SP2)/Windows 2000(SP4)/Windows Server 2003(SP1),后台数据库服务为MySQL5.0。

本系统具有人机交互强大,界面简单、友好;易维护、易用;数据库存储安全,信息保密性强;严格的用户管理、访问控制管理及权限设置等特点。考生通过客户端连接系统服务器登录系统前台,进行考试前,必须先用真实个人信息进行注册。注册成功后,登录系统进行考试,答题完成,提交试卷,系统自动评分。考生考试过程中动态显示考试剩余时间。若考试时间到而考生仍未提交试卷则系统自动终止考试并进行试卷保存处理。系统管理员登录系统后台,维护和管理系统。系统整个流程图如图1所示。

图1 系统流程图

1.2 功能模块设计

(1)用户登录模块。考生在登录系统进行考试前,必须先用真实个人信息进行注册。注册成功后,通过登录界面输入账号和密码登录系统,系统根据用户登录账号判定其身份,并对其不同身份开启不同的系统功能。该界面设置记忆登录用户功能、验证码功能和找回密码功能。

(2)用户信息管理模块。即对系统管理员、教师、考生信息的管理(此功能初始设定不对教师开放),三者角色不同,登录的功能界面也不同。管理员具有查询、添加新用户、修改和删除用户信息、重置密码等权限。

(3)在线考试。在线考试管理模块提供两种测试方式:一种是平常练习,学生在学习完某一章节内容后,通过客户端连接到系统服务器,选择题目类型、难易度等参数,系统后台根据选中的条件组卷出题。学生可自行查看自己的测试结果和标准答案以及试题解析。另一种是常规考试,考生考试过程中系统动态显示考试剩余时间。若考试时间到而考生仍未提交试卷,则系统自动终止考试并进行相关数据的保存处理。这里采用时间片存储考试数据方法。

(4)题库建设模块。题库结构的搭建要求科学合理,其包括题目属性值的设置及度量标准。做好试题的收集和编制;在把试题存入数据库中时确保存储方式紧凑、安全、高效。题目界面的设计要方便灵活。学科知识在不断更新,题库的管理应具有动态性、实时性。

(5)组卷模块。在线考试管理系统的另一个难点即是组卷,就是根据一定的组卷理论采用高效、可靠的组卷算法组织试题。

(6)成绩统计与查询模块。常规考试,为了提高教学质量,对考试结果要做相应分析,即查询成绩、统计、归类、成绩分析、试卷科学度分析、学生学情分析等。平常的学习,可以给学生提供答案、未掌握的知识点,激发学生学习兴趣。

1.3 数据库设计

目前,本系统采用的数据库服务系统是MySQL5.0,设计的实体表格主要有四个,(1)管理员信息列表:管理员编号、管理员姓名、管理员密码、注册时间。(2)考生信息列表:学生证号、考生姓名、登录网站密码、考生注册时间、考生性别、密码提示问题、注册IP地址等9个字段。(3)试题库信息列表:课程名称、出题教师、试题编号、所属知识点、难度系数、优先级别、试题正文、参考答案、评分标准等13 个字段。(4)考生成绩信息列表:考生成绩编号、学生证号、所学课程、套题编号等字段。

2 基于Web在线考试管理系统的实现

采用ASP.NET+C#语言及C#开发坏境对基于Web在线考试管理系统的开发,而实现该系统存在几个关键问题:题库建设、组卷策略、自动评卷,这些也是系统设计中的难点。

2.1 题库建设与组卷的实现

题库建设:题库建设对于在线考试管理系统尤为重要,题库的管理既是本项目的基础,又是该系统中一项较为困难而复杂的工作。题库中的题目须按照测验目标精心筛选和校准,对于每一个题目,除了试题自身内容外,还要具有表征题目属性的编号、知识点、来源、难度、答案、区分度以及使用情况等多种指标。依据一定的题库建设理论和构建步骤:经典项目测量理论和项目反映理论,这就要求教师设计出一定量的测验试题,按照测量理论规定的方式将试题进行属性标记存入试题库。

组卷策略:其本质是根据试题属性(难度、题型、时间、分值等)加上外部规则的约束进行多条件的综合。系统要实现手工组卷、自动组卷、自适应智能组卷的功能。手动组卷是指老师根据学生的实际情况和学科的要求出题;自动出卷即是系统要根据教师所指定题目类型、难易程度、区分度等参数来进行组卷。在系统开发中要实现智能测试,则系统自动生成该科目的参数平衡二叉树,测试时,系统根据答题结果检索此二叉树。这样通过灵活、可变的平衡二叉树来选择试题,平衡二叉树又称为AVL树,其左子树和右子树都是平衡二叉树,且左子树和右子树深度之差的绝对值不超过1,空树也是平衡二叉树。

2.2 自动评卷的实现

主观题的自动评分涉及自然语言理解、模式识别以及人工智能等方面的理论和知识,存在很多技术上的问题需要解决,可谓是在线考试系统中的一个技术难点。对程序题的评判,按常规的人工阅卷思维,就是判断其是否实现规定的功能,即将运行结果与实际应有结果对比,判断两者之间是否一致,这并不难, 比如C语言程序题,把C语言运行的结果用数据文件保存起来,再将其结果和标准答案作比较,给考生所编写的程序进行对错判定,给出得分。可能会出现有结果但不正确或无法编译运行的考生代码,这就需要检查考生算法思想是否准确及编程是否合理,我们都知道,在C语言中,解决一个问题的代码编写有多种方法,但算法思想大致相同。如C语言中这样一个结构:

m=0;

while(m

m++;

n=m+1;

while(n< count;){

n++;

}

if(a>b)

{

............

}

}

依照C语言的关键字,抽取while()while()if(){}或while(){while()if(){}}骨架,再将之与标准骨架相比,通过判断异同给分。考生在思路明确的情况下也会出现语法错误,可以采用修复编译的方式进行评分,即通过纠正考生程序中的语法错误,使程序能够正常编译、运行、链接,生成EXE文件和答案。每修改一次语法错误则扣除该题目中相应的分数。作为初学者的大部分考生,所编写的程序常会出现死循环,若Shell函数调用死循环程序启动后无法结束将导致系统崩溃。API函数是Windows提供的控制应用程序,通过Visual Basic调用API函数能防止出现这样的情况。根据系统中题库建设与组卷特点,即考生随机从题库中抽取的试题不同,这就可以防止舞弊行为。但相近考生试题相同也会出现作弊行为,防止作弊最有效的方法,即“记录解答过程”,采用考核软件(VC++)提供的“宏”功能或Windows内部功能来实现。

2.3 在线考试的实现

考试系统服务器平台在系统运行中起着举足轻重的作用,它是保证考生正常考试得以进行、数据得以中转和处理的中间站。用户通过客户端连接系统服务器进行在线考试,考试系统服务器会接收相关数据。考试系统服务会在考生完成考试后对考试数据进行验证、加密和导出,连同试卷加密放在一起上传到服务器开始审阅,同时考试系统具有备份服务器上原始资料的功能,以便之后的核查。

3 结 语

通过开发基于Web的在线考试管理系统,使各大高校实现无纸化考试管理成为可能,该在线考试管理系统具有操作简单方便,界面简洁美观;具有实时性,已注册的用户可在任何时间,任何地点通过Internet浏览器登录网络在线考试系统,除了常规考试,还可在线练习,强化训练等。

参考文献

[1]胡静,韩英杰,陶永才. ASP.NET动态网站开发教程(第二版)[M].北京:清华大学出版社,2009.

[2]薛惠丽,赵志燕.基于Web的在线考试系统探究[J].内蒙科技与经济,2007(4):132-133.

[3]严蔚敏.数据结构[M].北京:清华大学出版社,1997.

[4]郭躬德.计算机题库系统的分析和设计[J]. 福建师范大学,1996(3):102-106.

[5]张晓光,张贞,牛永浩.对于C++语言考试编程题自动评分系统的研究[J].延安大学,2010,33(18):51-52.

[6]段敬利,张春飞,魏久鸿.C语言教学中上机考试及自动评分系统研究与开发[J].机械设计与制造工程,2013,42(10):65-67.

[7]孟爱国,卜胜贤,李鹰,等.一种网络考试系统中主观题自动评分的算法设计与实现[J].计算机与数字工程,2005,33(7):147-150.

猜你喜欢

题库C语言管理系统
基于James的院内邮件管理系统的实现
“勾股定理”优题库
“轴对称”优题库
基于Visual Studio Code的C语言程序设计实践教学探索
“轴对称”优题库
“整式的乘法与因式分解”优题库
基于LED联动显示的违停管理系统
基于C语言的计算机软件编程
海盾压载水管理系统
高职高专院校C语言程序设计教学改革探索