考试管理系统分析与开发.docx
- 文档编号:30025614
- 上传时间:2023-08-04
- 格式:DOCX
- 页数:16
- 大小:207.70KB
考试管理系统分析与开发.docx
《考试管理系统分析与开发.docx》由会员分享,可在线阅读,更多相关《考试管理系统分析与开发.docx(16页珍藏版)》请在冰豆网上搜索。
考试管理系统分析与开发
纲要
1引言
2学生考试管理系统的需求分析
2.1系统整体性的分析
2.2系统各功能模块的分析
3系统的设计部分算法的研究与设计
3.1随机抽题的算法
3.2客观题机器阅卷算法
4小结
一引言
随着计算机软件技术的迅猛发展,许多工作已经可以借住计算机实现管理。
考试方面的管理软件近几年发展很快,但多数考试系统仅在某些方面给出解决方案,而考试管理工作涉及各种类型、不同性质的考试,包含复杂管理流程:
教师命题,教师阅卷和客观题机器阅卷,学生考试,学生成绩查询等。
考试管理系统是基于计算机网络的应用系统。
它可以使考试不受时间,地点的限制,一方面极大地减轻了教师出题、改卷的工作量,另一方面使学生能随时检验自己的学习效果,使学习效率得到很大提高。
考试管理系统中题目的生成、试卷的提交、成绩的批阅等都可在网络上自动完成,只要形成一套成熟的题库即可实现真正的无纸化考试。
本设计实现了考试管理系统的基本功能,具有较强的实用性,可有效地解决传统考试的弊端,实现无纸化考试,可以实现随时随地交互性强且内容不断更新的教学方式。
二学生考试管理系统的需求分析
网络考试系统的开发及应用,使学校避免了传统考试中的纸、笔、监考、巡考等各种资源的浪费,并且后台管理是管理员的单一管理,确保了系统及数据的安全性。
考试管理系统的最大优点是可以动态地管理各种考试信息,管理员登录后,对考试的专业、课程、试题等内容做详细的分类,只要准备好足够大的题库,就可以按照要求自动生成各种试卷。
学生只需在前台准确地输入学生姓名和学号,便可以依次进行选题和答题,答题完成后,系统自动阅卷并给出分数,高效、便捷。
这大大的降低了学生作弊的可能性,给学生最大的公平感。
避免了传统考试后,教师人工阅卷的繁复工作,也避免了人工统计成绩后再通知学生分数的琐碎工作,同时也解决了学生在焦虑中等待成绩的问题。
综上,可知该系统有如下优点:
1.易于稳定,界面整体美观,性能稳定且效率高。
2.题型多样。
可以进行单选题、多选题、判断题、计算题、填空题、问答题等多种题型的考试。
每套试卷可以在这些题型中任意组卷。
3.方便题库的维护。
对单选题、多选题、判断题、计算题、填空题、问答题通过数据库可方便的维护,也可方便的维护知识点数量和内容,控制考生需做的题型和数量。
4.大大的减少的人力和物力。
采用考试系统可以减少复印纸张的使用,达到了低碳的目标,客观题采用机器阅卷,节约了人力,从而提高了效率。
2.1系统整体性的分析
系统能够根据不同的登陆用户类别,从试题库中选取试题,形成试卷,对于客观的试题能够进行自动批卷,对于非客观试题,能够将学生的回答答案提交上来,便于教师进行批阅。
另一方面,教师可以请求登陆,获得允许后,可对试题库中的内容进行修改、批改试卷中的主观性试题并给出成绩,并且可以查阅试卷的分析结果。
系统主要由以下的几个模块组成:
命题子系统、考试子系统、阅卷子系统、查询子系统。
整个系统的功能结构图如下:
2.2系统各功能模块的分析
(1)命题子系统
该系统集试题管理和试题生成于一身,由教师登陆相应的模块来完成修改、删除、命题等功能,该系统能完成以下功能:
1.试题管理
试题管理是对本考试系统中的各类题型进行管理的模块。
在本考试系统中将考试的试题分为两大类:
客观题:
单选题、多选题、判断题、填空题等
主观题:
问答题、计算题、编程题等
图1.试题管理模块图
2.试题生成
利用客观试题库和主观试题库,随机组合生成试卷。
供考生选题,避免重复抽题。
图2.试题生成模块图
(2)考试子系统
本系统的用户是考生用户,它要实现的目标是对考试的过程进行控制和管理,考生可以登录考试系统,进行答题,该系统能完成随机抽题的功能,考试完成后,系统能自动保存考生的试题及答案,然后送至阅卷子系统进行阅卷。
图3.考试子系统控制模块图
(3)阅卷子系统
阅卷子系统作为本考试系统的重要组成部分,能最大程度的减轻教师阅卷的工作量,功能主要包括客观题机器批阅,对主观题提供评分标准,自动累分,并将成绩自动汇总到表格中,而主观题批阅则由教师通过登录系统,调出考生试卷,参照评分标准进行阅卷。
教师批阅完后,主观成绩也入库,与客观成绩汇总,形成试卷最后的成绩,自动生成保存成绩的文件传入到查询子系统中,以供考生查询。
(4)查询子系统
查询子系统中包括了查询考试科目信息,查询考生准考证号码,查询考生成绩单等功能,考生可以通过登录查询系统来查询自己所需要的信息,从而方便学生对自己已考过的科目进行一下自我评定。
N
Y
图4.查询子系统模块图
以上完成了各子系统的需求性分析,对各子系统中的模块进行了分析,总体上完成了整个考试管理系统的需求性分析和设计要求的规划。
第3章系统的设计部分算法的研究与设计
3.1随机抽题的算法
设相关题库中有n道题,要从中抽取m(m<=n)道题,首先产生m个随机数。
在上面的程序中加入判断重复的语句,检查新抽取的题是否重复,若重复则重抽。
再按前面所述的方法抽取随机数roundk,将roundk按n求余数,再将roundk与round1,round2,…,roundk-1(此k-1个数已增序排列,roundk-1为前k-1次得到的随机数最大者)相比较,然后进入比较程序,先与round1比较,若roundk>=round1,则roundk增一,再与round2比较,若roundk>=round2,则roundk再增一,…,这样就可以很简单地实现了无重复而且各个试题被抽取的几率相同的随机抽题算法。
int*intArray;
inti,j,k,temp;
time_tt;
intArray=malloc(m*sizeof(int));
srand((unsigned)time(&t));
/*依次产生m个随机数*/
for(i=0;i temp=rand()%n; /*查找temp原先的“真实”编号*/ for(j=0;j if(temp>=intArray[j]) temp++; else{ /*temp应插在k位置处,这样数组intArray就实现了排序,同时得到了temp原先的编号*/ k=j-1; break; } for(j=i-1;j>k;j--) intArray[j+1]=intArray[j]; intArray[k]=temp;① /*以下根据题号产生题库部分省略*/ …… } free(intArray); 3.2客观题机器阅卷算法 选择题阅卷模块的设计与实现是自动阅卷系统中最容易实现的一部分。 考生的选择题答案存储在对应的考生文件中下。 自动阅卷系统首先要做的是打丌该答案文件并从其中读出考生的答案,然后再将其与标准答案进行匹配,并根据匹配情况给分。 在选择题阅卷模块中的一个重要问题是对于多项选择的次序无关问题,即对于学生答案中多项选择题的答案中字母的次序不影响评分,只要含有参考答案中的所有字母并且不含有其他字母即判对给分。 这个问题在本系统中的解决方案是子答案个数匹配和含有式匹配两中匹配算法结合。 考虑到系统的通用性,能适合各种考试系统,本系统的选择题阅卷算法和考生答案使用的表形式无关。 即考试系统可以使用各种形式表示考生答案,如大写字母、小写字母、阿拉伯数字甚至二进制数字等等都可以。 考虑到唯一性,如果考试系统对学生答案采用的表示形式超过一个字符,则必须使用分隔符。 本阅卷系统对于多项选择题答案的表示是采用多字段形式,即一个字段存储一个子答案。 在阅卷时,首先将系统中某题答案中有效字段的个数和学生答案中子答案的个数进行比较,如果不一致则判错,如果一致则再进行含有式匹配。 含有式匹配的基本算法是逐一取出阅卷系统中存储的各子答案,对每一个子答案用Delphi提供的Pos函数判断该子答案字符串在学生的答案字符串中是否含有。 如果学生的答案字符串含有阅卷系统中每个子答案字符串,再加上前面判断的学生答案中子答案的个数和阅卷系统中存储的答案一致则可以判定该学生答案正确并给分。 3.填空题阅卷模块 本系统中考生填空题答案和选择题答案足存放在同一个文件当中。 一个存放在填空题答案表中,另一个存放在选择题答案表中。 因此填空题阅卷模块打开与读出答案的方法和选择题相似,下面主要针对填空题阅卷中的主要问题给出解决的方法与主要算法。 1.填空题阅卷的主要问题 (1).答案的答错问题。 由于是上机考试,学生的填空题答案中可能存在有多余的无关的字符,如空格等。 此外学生在输入答案时可能选择不同的输入法状态,这样会造成一些字符的两种表示。 如全 角、半角加号的表示分别为“+’’“+”。 该问题不会给阅卷评分带来误差 (2).答案的不唯一问题。 很多填空题可能有多种不同的答案。 如题目“计算机的存储系统一般包括寄存器、CACHE、外存储器、后援存储器等。 ”该题答案可以是“主存”、“内存”、“主存储器”或“内存储器”其中之一。 如果对答案采取匹配法可能直接导致误判。 (3).多空填空题中子答案的关系判定问题。 如果一道填空题含有多个“空”,那么“空”与“空”的关系对评阅是否有很大影响。 在有些填空题中多空的答案相互无关,相当于多条填空题的合并,这时阅卷算法就和 单“空”填空题的阅卷方法相同。 而如果多空填空题的这些子答案相互之间存在关系,比如为一个无序集合的不同元素。 这时对整个题目而言子答案的任一种组合都应判为正确。 2.填空题阅卷主要问题的解决方法 (1).答案的容错问题的解决方法。 首先在试题描述中要求用户选择答案的一些敏感属性。 比如: 空格是否敏感、大小写是否敏感、全角/半角是否敏感等属性。 然后在进行匹配之前,首先对答案不敏感的属性进行统一,即对空格不敏感则删除答案中全部空格、对大小写不敏感则全部转换成小写、对 全角/半角不敏感则全部转换成半角等等。 这样就可以有效的增强阅卷系统的容错能力。 (2).解决答案的不唯一问题的方法。 在进行填空题信息描述时对同一题描述多个可能的答案,在阅卷时只要和这若干个答案之一匹配即可判对。 这种方案给出的可选答案是有限的,本系统中设为4个。 对该问题还可以选择另一种方案。 在填空题信息描述中设置一个“含有匹配(模糊匹配)”选项,如果用户在试题描述时选中该选项则只要在学生答案中含有关键字词即可判对。 (3).多空填空题中子答案关系判定问题解决方法。 将填空题的“空”分为“串联空”和“并联空”。 “串联空’’的各“空”答案相互之间不能交换,而“联空”则可以互换。 不管是“串联空”还是“并联空”它们在试题信息描述表中的答案都是合并的,用特殊字符分隔。 在进行对错判断之前先要将试题信息描述表中的答案拆分成各空独立的答案。 由于学生答案表中的答案同样各空答案合并的,中间用特殊字符分隔,所以如果是“串联空”首先要将学生该题的答案进行拆分,然后再将学生各空的答案和从描述表中拆分得的各空答案逐一对应比较,并记录各空得分。 如果是“并联空”则按本题“空”的个数进行循环,逐一看学生的答案合并字符串中是否“含有”各“空”的正确答案,含有一个“空”的正确答案则该空判对,否则该空判错。 3.填空题阅卷主要算法 对填空题的阅卷是上述各种问题处理方案的综合。 阅卷算法以来于试题描述模块对填空题生成的填空题信息描述表。 该表中含有某一填空题答案对空格等字符是否敏感、多个答案、是否“含有”容错、多项填空是“串联空”还是“并联空”等等信息。 填空题的阅卷算法如图7.1所示。 填空题的阅卷算法需考虑的主要问题是答案对空格是否敏感、对进制是否敏感、对大小写是否敏感以及试题的可选答案。 用户从阅卷主界面的菜单“试题描述”一“填空题”进入填空题试题描述窗口,对该窗口中的描述项进行选择和填写。 当用户按保存按钮时系统执行填空题描述函数生成相应的试题描述符并写入试题数据库中的填空题试题描述表。 主要代码如下: procedureTFomastnlstksav《1ick(sender=TObject); vⅡ s: strlng; begin adoqulEDIT; adoquerylFieldBy,Value: =spineditIValue; adoquery]FieldBy(’是否空格敏感’)Value: -checkboxl.Checked; adoqu。 叫1FieldByNaIⅡd。 是否进制敏感’)Value: =checkbox2Checked: adequerylFieldByNamc(’是否大小写敏感’value=ch∞kbox3Checked: ifedit1.text<>” thenbegin s: =.<逻辑>'+comboboxI.Text+'</逻辑>'+editi.Text; adoqueryI.FieldByName(’可选答案1’).Value: =s; end; ifedit1.text<>” thenbegin s: =t<逻辑>'+combobox2.Text+'</逻辑>'+edit2.Text: adoqueryl.FieldByName(’可选答案2’).Value: =s; end; ifedit1.text<>” thenbegin s: =.<逻辑>'+combobox3.Text+'</逻辑>'+edit3.Text; adoqueryl.FieldByName(’可选答案3’).Value: =s; end; ifedit1.text<>n thenbegin s: =k逻辑>'+combobox4。 Text+'</逻辑>'+edit4.Text; adoqueryl.FieldByName(’可选答案4’).Value: =s; end; adoqueryl.post; End; 第4章小结 通过本次设计,学习到了很多知识,对进行软件设计的整体设计流程及思维方式有了深刻的认识,在期间,发现的许多问题都源于没有认真的按步骤进行设计,不重视需求分析和总体设计部分,对各个方面都会产生不良的影响。 考试管理系统的实现是一项非常复杂,工作量很大的工作,就它所涉及到的实际问题和技术细节问题非常多,许多的技术都是在开发过程当中根据需要才去学习的,整个完成本系统的设计过程是坎坷的。 由于实际编程经验不丰富,本系统设计可能存在不合理的地方以及一些地方仍需修改,对开发技术掌握的水平不足,并限于精力和时间等因素的影响,系统需要改进的地方还很多。 在这次设计过程中,让我感觉到了团队的力量,遇到问题时,大家都能互相讨论,相互学习。 整个过程让我受益匪浅,让我对以后的学习有了很大的帮助,锻炼了我独立思考问题的能力,对VC有了更进一步的学习. 参考文献 1.《C程序设计》(第三版)谭浩强著.清华大学出版社 2.张江.通用考试系统(GES)的设计与实现.学位论文.成都: 电子科技大学,2001 4.刘燕.计算机辅助教学实践及其思考.学位论文.福建: 福建师范大学报,2001 6.李青.联机考试系统的研究与实践.南京: 南京师范大学,2002 7.张量,詹国华.开放式、智能化计算机考核阅卷系统的设过与实现.2001 8.范晓明,芦文龙.RALNEU计算机标准化考试系统的开发.东北大学学报(自然版)2000
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 考试 管理 系统分析 开发