基于.net的自动阅卷考试系统设计_第1页
基于.net的自动阅卷考试系统设计_第2页
基于.net的自动阅卷考试系统设计_第3页
基于.net的自动阅卷考试系统设计_第4页
基于.net的自动阅卷考试系统设计_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于NET的自动阅卷考试系统设计【摘要】随着网络技术的发展,教学方式发生了很大的变化。传统的教学考试方式已渐渐无法适应社会的发展,它要求有新的考试方式来适应新的教学方式。网络化考试系统在很多领域都已经有所应用,但在计算机类考试中较为鲜见,特别是带阅卷功能的考试系统。本系统利用NET技术,采用C语言来实现应用程序的设计和功能的实现,数据库则采用SQLSERVER2000来设计。这是一个基于B/S(浏览器/服务器模式)架构的系统。本文介绍了自动阅卷考试系统的社会需求、发展前景和系统的主要功能,对各个功能模块进行了详细的介绍。关键词B/S(浏览器/服务器模式),反射,NET,自动阅卷AUTOMATICSCORINGEXAMINATIONSYSTEMBASEDONNETABSTRACTWITHTHEDEVELOPMENTOFNETWORKTECHNOLOGY,TEACHINGMETHODSHAVETAKENGREATCHANGESEXAMINATIONOFTHETRADITIONALTEACHINGMETHODSAREGRADUALLYUNABLETOADAPTTOTHEDEVELOPMENTOFSOCIETY,ITREQUIRESANEWEXAMINATIONOFWAYSTOADAPTTOTHENEWTEACHINGMETHODSNETWORKEXAMINATIONSYSTEMHAVEBEENUSEDINMANYAREAS,BUTINTHECOMPUTEREXAMINATIONISUNCOMMON,ESPECIALLYWITHAUTOMATICSCORINGFUNCTIONOFTHEEXAMINATIONSYSTEMTHISSYSTEMUSEDNETTECHNOLOGYANDCLANGUAGETOACHIEVETHEAPPLICATIONOFTHEDESIGNANDFUNCTIONALITYOFTHEREALIZETIONTHEDATABASEISUSEDSQLSERVER2000TODESIGN;THISSYSTEMISBASEDONB/SBROWSER/SERVERMODELSTRUCTUREINTHISPAPER,ITINTRODUCEDTHESOCIALNEEDS、DEVELOPMENTPROSPECTSANDMAINFUNCTIONOFTHEAUTOMATICSCORINGEXAMINATIONSYSTEM,OFCOURSECARRIEDOUTADETAILEDINTRODUCTIONOFTHEVARIOUSFUNCTIONALMODULESKEYWORDSB/SBROWSER/SERVERMODEL,REFLECTION,NET,AUTOMATICSCORING目录1背景介绍111网络考试的背景介绍1111网络考试系统的社会需求1112目前已有的考试系统的优、缺点112选择考试系统的原因213设计目标22基于NET的自动阅卷考试系统概述321用户需求简介3211功能需求3212性能需求3213可靠性和可用性需求322工作过程323系统特点33设计中要解决的问题531用户权限532考卷的设置533自动阅卷的实现534考试时间控制问题54总体设计641系统设计6411设计目标6412开发环境6413开发语言6414开发工具6415后台数据库6416运行环境642数据库需求设计6421系统流程图6422系统ER图8423数据库中的表8424数据库中的视图1243系统总体构架设计14431系统层次结构图14432系统流程图145系统主要功能模块设计1851登陆模块1852注册模块1853学生模块1854教师模块1855重点、难点代码设计19551时间控制的实现19552自动阅卷的实现2156实现界面306系统实现技术3661B/S模式3662反射3663SQLHELPER387性能测试与分析4071测试目的和原则40711测试的目的40712测试的原则4072测试环境与测试条件40721测试环境40722测试条件4073测试实例的研究与选择4074实例测试结果4275性能分析42结束语43谢辞43参考文献43基于NET的自动阅卷考试系统随着网络技术的发展,教学方式发生了很大的变化。传统的教学考试方式已渐渐无法适应社会的发展,它要求有新的考试方式来适应新的教学方式。网络化考试系统在很多领域都已经有所应用,但在计算机类考试中较为鲜见,特别是带阅卷功能的考试系统。研究这个系统,重点在于考卷的自动生成和批阅,特别是对于主观填空题和编程题。充分利用在大学所学的知识和现有的网络科技技术进行研究,加深、巩固已学知识,接触、学习新的知识,提高技能,希望能通过研究增强实践经验,减轻老师的负担,节约资源,同时对自己进行考核,为步入社会做准备。1背景介绍11网络考试的背景介绍随着计算机网络技术的突飞猛进及教育网络化的不断推进,传统的考试模式表现出一些弊端,比如繁杂的试卷收发、投入相当人力的阅卷等。在相当程度上,这些工作可以完全或部分交由计算机完成。在线考试系统指利用计算机,通过计算机网络实现对学生的考核。与传统的考试模式相比,它极大限度排除了人为因素的作用,保证了考试的客观、公正通常考生在考试之后,即可得到考试成绩而且通过计算机阅卷,通过事先设计好的答案,使得阅卷具有高效性、可靠性、公平性。尤其在应用考试系统对计算机有关知识的考核中,除了理论知识之外,还可以考查考生的实际动手操作能力。网络考试系统是一个基于数据库和计算机网络的在线实时测试系统,包括考生管理系统、考试系统、题库系统、阅卷系统、考试管理系统等。该系统可以在被允许的任何地点、时间进行在线实时考试。具有信息量大、效率高、管理方便、考试客观公正等优点,教学人员可以很容易地从考试结果中获得教学反馈信息。111网络考试系统的社会需求考试是教学效果测量的重要手段。传统的考试方式是以纸为媒介的,它要求教师印试卷、安排考试、监考,收集试卷,评改试卷,这是一个漫长而复杂的过程,越来越不适应现代化教学的需要近年来,随着计算机技术和网络技术的不断进步和飞速发展,依托计算机技术的在线考试方式或网上考试方式的研究一直在进行之中,目前在线考试方式在驾照考试和英语考试等领域已付诸实施,而对于计算机类考试的系统则比较少见,特别是带有自动改卷功能的考试系统。随着计算机科学技术和网络的发展,传统等教学方式很难适应需求,它要求一种新的教学方式,而网络化教育方式顺势而生。基于NET的网上考试系统正是实施网络化教育的一个重要组成部分,它可以利用网络的无限空间,随时随地对学生进行考试,利用数据库使考试过程得到简化考试过程中试卷的生成和批改都由计算机完成,其目标是实现考试的无纸化、标准化和学生成绩管理的网络化和自动化。112目前已有的考试系统的优、缺点网络考试系统是近年来的一个热点。随着网络的发展,大家都希望可以充分利用现代化技术减轻工作量,实现自动化管理。以往的许多网络考试系统实现了考试环节中的大部分工作,已经可以很完美的投入使用,其安全性、扩充性、准确性、便捷性都得到了充分的体现。其中,选择题、判断题等客观题的自动阅卷、学生信息的管理、考卷的组织等功能模块做的非常不错。对于主观题如填空题、编程题、简答题,绝大多数只实现了考试而为实现批阅的功能,未实现全部自动化。这使得教师在系统批阅完客观题后还要手动批阅主观题,不能很好的节约人力、物力,使得资源无法充分利用。主观题的阅卷有人为的参与,存在主观因素,没办法保证考试的公平、公正。12选择考试系统的原因因为以往的考试系统存在一定的缺陷,未完成主观题的阅卷部分,而一个完整的含主观题自动阅卷的考试系统被迫切需求。此设计在原有考试系统的基础上突破、创新,增加主观填空题、程序题的自动阅卷功能。应用C语言中的反射知识可以实现简单的程序体的修改。选择该开发系统,具有创新性、可行性、需要性,其科学性也不言而喻。13设计目标本设计的目的是设计一套完整的考试系统,实现考卷的自动生成、试卷管理、查看考生考试结果、学生考试、自动阅卷等功能,增加主观题中填空题和编程题的自动阅卷功能。实现考试的无纸化、标准化和学生成绩管理的网络化和自动化。14小结由上所知,网络考试系统是科学技术发展的必然要求,具有很大的社会需求。而现有的用于计算机学科的网络需考试系统不完善,缺少主观题自动阅卷功能,这些证明基于NET的自动阅卷考试系统是正确的选择。2基于NET的自动阅卷考试系统概述21用户需求简介基于NET的自动阅卷考试系统是一个面向计算机类学科的考试系统,它与其他其他考试系统的区别在于它增加了主观填空题、编成题的自动阅卷功能。它应用C语言开发,以NET为平台,采用B/S浏览器/服务器模式,用户分为两种普通用户和管理员用户(ADMIN)。学生属普通用户,教师属管理员用户。他们拥有的权限有所不同,学生只能进行考试和修改密码;教师可以根据自己所教授的课程新建科目、管理题库,还可以设置试卷、查看学生的考试结果。通过对页面的操作对数据库进行读写操作。211功能需求该系统要求实现题库管理、班级管理、学生答题、试卷组织、自动阅卷等功能,教师能够查看学生的考试成绩及答题情况,在试卷投入使用前能想进行测试、查看考卷的整体情况,学生能自行修改自己的密码。212性能需求学生在做完程序题后,需上传EXE文件,然后连同试卷其它部分的答案一起提交,此过程必须在2分钟内完成。安全性有所保障,学生密码由学生本人设置,以防他人冒用其帐号进行考试。213可靠性和可用性需求系统能正常运行,在100人以内同时登录时不发生错误,其所有功能在运行时不发生故障。22工作过程基于NET的自动阅卷考试系统采用B/S浏览器/服务器模式,客户无需安装客户端,只要有浏览器就可以使用。在登陆页面,如果已注册的用户,更具自己的帐号、密码就可以进去系统,根据用户权限进入不同的页面;如果是还未注册的用户则比需先按注册按钮进行注册后才可以进入系统。一般用户(学生)登陆系统后,根据USERJS跳转到一般用户主页面,其中具有修改密码、考试、退出三个功能,用户可以自行对其进行操作;管理员用户(教师)登陆系统后,根据ADMINJS跳转到用户主页面,里面有科目管理、试卷管理、各种题目管理、答题测试、查看考试结果功能模块,教师根据需要进行操作。学生用户的考试功能模块只有在教师设置了考卷后才能进行,学生打完考卷后须自行提交,并上传程序题的代码和EXE文件。系统将根据学生上传的考卷答题进行批阅,得出每一题的成绩和总成绩。23系统特点基于NET的自动阅卷考试系统支持按权限对系统进行操作,即不同类型的用户拥有相异的权限考试和管理。主要是在首页通过两种不同的方式进入相异的操作界面,其主要特点体现在以下两个个方面自主调用数据库;自主管理数据库。自主调用数据库即允许用户能自由地从数据库中选题、生成试卷。自主管理数据库指一般用户具有添加、修改数据的权力,实现数据库的可扩充性和开放性。而ADMIN用户则另具有删除数据的权力如对题目的删除、试卷的删除、科目的删除等,从而达到了系统数据统一性和一致性的目的。24小结基于NET的自动阅卷考试系统它采用B/S浏览器/服务器模式,是面向计算机学科的考试系统。用户进入界面就可进行操作,内部与数据库相关的步骤对用户透明,他是一个简单的、易操作的、实用的系统。3设计中要解决的问题31用户权限不同类型的用户拥有不同的权限,这要求在设计时考虑不同权限用户的操作页面。比如学生可以答题、查看某些信息,但是不具有删除等权限;教师、管理员在具有对题库、试卷等的增、删、改操作权限。32考卷的设置考卷的设置是考试系统的一个重要部分,它包括试卷的基本信息和题型设置。如何进行组卷及题型数目的控制成了试卷设置的一大难点。此外,对于设置那份考卷用于考试也是一个值得考虑的问题。33自动阅卷的实现自动阅卷十本系统的重中之重。客观题的自动阅卷比较容易实现,运用匹配的方法就可以完成。主观题中,对于填空题,则运用匹配的方式来进行判断正确与否;程序题则运用C中反射的技术来实现。34考试时间控制问题时间控制是学生考试系统一个很重要的组成部分。一直以来的考试都有规定在一定的时间内完成,否则考试就失去了它本身的意义。所以,在设计系统时需好好考虑时间控制的问题。4总体设计41系统设计411设计目标设计一套完整的考试系统,实现考卷的自动生成、试卷管理、查看考生考试结果、学生考试、自动阅卷等功能,增加主观题中填空题和编程题的自动阅卷功能。412开发环境硬件环境PC机软件环境WINDOWSXP、MICROSOFTVISUALSTUDIO2005、SQLSERVER2000、IIS413开发语言开发语言使用VISUALC414开发工具MICROSOFTVISUALSTUDIO2005、SQLSERVER2000415后台数据库后台数据库使用SQLSERVER2000,其可管理和处理大批量的考试数据,并具有较高的可靠性。416运行环境硬件环境PC机软件环境WINDOWSXP、WWW、INTERNETEXPLORER42数据库需求设计数据库是系统的重要组成部分,是系统的核心和基础。它把系统中大量的数据按一定的模型组织起来、提供存储、维护、检索数据的功能,使系统可以方便、及时、准确地从数据库中获取所需的信息。SQLSERVER2000是一个常用的数据库开发软件,SQL语言本身是一个综合的、功能极强同时又简捷易学的语言,用它开发的软件数据结构化、独立性高、共享性高、冗余度低、易扩充。在本设计中,应用了数据库中的基本表和视图,应用程序对这些基本表和视图进行操作。421系统流程图42110层图考试系统学生教师学生修改密码学生答题查看考试结果班级管理学生注册题库管理试卷管理答题测试科目管理42121层图教师模块流程图考卷设置答题测试查看考试结果程序题管理判断题管理填空题管理单项选择题管理单项选择题管理单选题信息表多选题信息表填空题信息表判断题信息表程序题信息表单选题信息多选题信息单选题信息多选题信息填空题信息填空题信息判断题信息判断题信息程序题信息程序题信息考卷信息表试卷试题信息表考卷信息试卷试题信息考卷信息试卷试题信息考卷信息试卷试题信息班级信息表班级管理班级信息班级信息科目信息表科目管理科目信息科目信息科目信息学生答题模块流程图学生答题试卷信息表判断题信息表单项选择题信息表试卷试题信息表程序题信息表多项选择题信息表学生答题信息众表填空题信息表试卷试题信息试卷信息试卷试题信息多选题信息填空题信息学生作答答案程序题信息判断题信息422系统ER图学生学号姓名密码用户名班级编号班级编号班级名称班级学生数科目试卷科目编号科目名称试卷名称考试时间科目编号试卷编号成绩班级类型填空题题干正确答案题目编号程序题上传路径题干正确答案题目编号判断题题干正确答案题目编号科目编号科目编号科目编号分数分数分数选择题科目编号题干备选答案正确答案题目编号分数隶属1隶属N1选题MNLPQ考试MNN423数据库中的表基本表是本身独立存在的表,在SQL中一个关系就对应一个基本表。一个或多个基本表对应一个存储文件。用户建立一个基本表后,可以对它进行增加、修改、查询、删除等操作。本设计中涉及到以下基本表,建立于数据库WEBEXAM中。具体如下所示1、用户信息表(USER)列名数据类型长度是否主键允许空说明STUDENTIDBIGINT8是不允许学生编号NAMEVARCHAR50否不允许用户名PASSWDVARCHAR50否不允许用户密码TYPEVARCHAR50否不允许用户类型STUDENTNAMEVARCHAR50否允许学生姓名2、班级信息表(CLASS)列名数据类型长度是否主键允许空说明CLASSIDINT4是不允许班级编号CLASSNAMEVARCHAR50否不允许班级名称STUDENTCOUNTINT4否允许班级学生数ISDELETEDBIT1否不允许是否删除3、科目信息表(COURSEINFO)列名数据类型长度是否主键允许空说明COURSEIDINT4是不允许科目编号COURSENAMENVARCHAR50否不允许科目名称ISDELETEDBIT1否允许是否删除4、试卷信息表(PAPER)列名数据类型长度是否主键允许空说明PAPERIDINT4是不允许试卷编号NAMEVARCHAR50否不允许试卷名称COURSEIDINT4否允许科目编号USEDBIT1否允许是否用于考试ISDELETEDBIT1否允许是否删除CURRENCYBIT1否允许是否公有EXAMTIMEINT4否不允许考试时间长度5、试卷试题表(PAPERDATA)字段名数据类型长度主键允许空说明PAPERDATAIDINT4是不允许试题编号PAPERIDINT4否不允许试卷编号TYPEINT4否允许试题类型QUESTIONIDINT4否允许题目编号SCOREINT4否允许分数6、单项选择题信息表(SINGLE)字段名数据类型长度主键允许空说明QUESTIONIDINT4是不允许题目编号QUESTIONDESVARCHAR800否不允许题目内容ANSWER1VARCHAR100否不允许备选答案1ANSWER2VARCHAR100否不允许备选答案2ANSWER3VARCHAR100否允许备选答案3ANSWER4VARCHAR100否允许备选答案4RIGHTANSWERINT2否不允许正确答案COURSEIDINT4否允许科目编号SCOREINT1否允许分数ISDELETEDBIT1否允许是否删除CURRENCYBIT1否允许是否公有7、单项选择题答案表(SINGLEANSWER)字段名数据类型长度主键允许空说明QUESTIONIDINT4是不允许题目编号PAPERDATAIDINT4否不允许试题编号STUDENTIDBIGINT8否不允许学生编号ANSWERCHAR10否不允许学生答案8、多项选择题信息表(MORE)字段名数据类型长度主键允许空说明QUESTIONIDINT4是不允许题目编号QUESTIONDESVARCHAR800否不允许题目内容ANSWER1VARCHAR100否不允许备选答案1ANSWER2VARCHAR100否不允许备选答案2ANSWER3VARCHAR100否允许备选答案3ANSWER4VARCHAR100否允许备选答案4RIGHTANSWERINT4否不允许正确答案COURSEIDINT4否允许科目编号SCOREINT4否允许分数ISDELETEDBIT1否允许是否删除CURRENCYBIT1否允许是否公有9、多项选择题答案表(MOREANSWER)字段名数据类型长度主键允许空说明QUESTIONIDINT4是不允许题目编号PAPERDATAIDINT4否不允许试题编号STUDENTIDBIGINT8否不允许学生编号ANSWERINT4否不允许学生答案10、判断题信息表(JUDGE)字段名数据类型长度主键允许空说明QUESTIONIDINT4是不允许题目编号QUESTIONDESVARCHAR800否不允许题目内容RIGHTANSWERBIT1否不允许正确答案COURSEIDINT4否允许科目编号SCOREINT4否允许分数ISDELETEDBIT1否允许是否删除CURRENCYBIT1否允许是否公有11、判断题答案表(JUDGEANSWER)字段名数据类型长度主键允许空说明QUESTIONIDINT4是不允许题目编号PAPERDATAIDINT4否不允许试题编号STUDENTIDBIGINT8否不允许学生编号ANSWERBIT1否不允许学生答案12、填空题信息表(SPACE)字段名数据类型长度主键允许空说明QUESTIONIDINT4是不允许题目编号QUESTIONDESVARCHAR800否不允许题目内容ANSWER1VARCHAR100否不允许第一空答案ANSWER2VARCHAR100否允许第二空答案ANSWER3VARCHAR100否允许第三空答案ANSWER4VARCHAR100否允许第四空答案COURSEIDINT4否允许科目编号SCOREINT4否允许分数ISDELETEDBIT1否允许是否删除CURRENCYBIT1否允许是否公有13、填空题答案表(SPACEANSWER)字段名数据类型长度主键允许空说明QUESTIONIDINT4是不允许题目编号PAPERDATAIDINT4否不允许试题编号STUDENTIDINT4否不允许学生编号ANSWER1NVARCHAR100否不允许第一空答案ANSWER2NVARCHAR100否允许第二空答案ANSWER3NVARCHAR100否允许第三空答案ANSWER4NVARCHAR100否允许第四空答案14、程序题信息表(PROGRAM)字段名数据类型长度主键允许空说明QUESTIONIDINT4是不允许题目编号QUESTIONDESVARCHAR800否不允许题目内容RIGHTANSWERVARCHAR100否不允许正确答案COURSEIDINT4否允许科目编号SCOREINT4否允许分数ISDELETEDBIT1否允许是否删除CURRENCYBIT1否允许是否公有15、程序题答案表(PROGRAMANSWER)字段名数据类型长度主键允许空说明QUESTIONIDINT4是不允许题目编号PAPERDATAIDINT4否不允许试题编号STUDENTIDBIGINT8否不允许学生编号ANSWERINT4否不允许学生答案16、PROGRAMPATH表字段名数据类型长度主键允许空说明QUESTIONIDINT4是不允许题目编号PAPERIDINT4否不允许试卷编号PATHVARCHAR100否不允许路径17、STUDENTSCORE表字段名数据类型长度主键允许空说明PAPERIDINT4是不允许试卷编号STUDENTIDBIGINT8否不允许学生编号COURSEIDINT4否不允许科目编号SCOREINT4否不允许学生成绩18、EXAMTIME表字段名数据类型长度主键允许空说明IDINT4是不允许编号STUDENTIDBIGINT8否不允许学生编号PAPERIDINT4否不允许试卷编号TIMELONGINT8否不允许考试时间424数据库中的视图视图是从一个或几个基本表导出的表。它本身不独立存储在数据库中,即数据库中只存放视图的定义而不存放视图对应的数据,这些数据仍存放在导出视图的基本表中,他是一个虚表。所以,当基本表中的数据库发生变化时,从视图中查询出的数据也随之改变。视图与基本表在概念上是相同的,用户可以在视图上进行和基本表一样的查询操作,也可以再定义视图。本设计中根据需要建立了以下视图,这些视图将在下面一一列出1、JUDGEVIEW视图,由PAPERDATA和JUDGE两个基本表导出,TYPE3,ISDELETED0。列名导出表列名导出表PAPERDATAIDPAPERDATAPAPERIDPAPERDATAQUESTIONIDPAPERDATAQUESTIONDESJUDGERIGHTANSWERJUDGE2、MOREVIEW视图,由PAPERDATA和MORE两个基本表导出,TYPE2,ISDELETED0。列名导出表列名导出表PAPERDATAIDPAPERDATAPAPERIDPAPERDATAQUESTIONIDPAPERDATAQUESTIONDESMOREANSWER1MOREANSWER2MOREANSWER3MOREANSWER4MORERIGHTANSWERMORE3、PAPERPROGRAMVIEW视图,由PAPER和PROGRAMPATH两个基本表导出。列名导出表列名导出表PAPERIDPAPERPATHPROGRAMPATHNAMEPAPER(别名PAPERNAME)3、PROGRAMANSWERVIEW视图,由PAPERDATA和PROGRAM两个基本表导出。列名导出表列名导出表QUESTIONIDPROGRAMRIGHTANSWERPROGRAMPAPERDATAIDPAPERDATASCOREPAPERDATA4、PROGRAMVIEW视图,由PAPERDATA、PROGRAM、PROGRAMPATH和PAPER四个基本表导出,TYPE5。列名导出表列名导出表PAPERDATAIDPAPERDATAPAPERIDPAPERDATAQUESTIONIDPAPERDATAQUESTIONDESPROGRAMPATHPROGRAMPATHNAME(PAPERNAMEPAPER)5、SINGLEVIEW视图,由PAPERDATA和SINGLE两个基本表导出,TYPE1,ISDELETED0。列名导出表列名导出表PAPERDATAIDPAPERDATAPAPERIDPAPERDATAQUESTIONIDPAPERDATAQUESTIONDESSINGLEANSWER1SINGLEANSWER2SINGLEANSWER3SINGLEANSWER4SINGLERIGHTANSWERSINGLE6、SPACEVIEW视图,由PAPERDATA和SPACE两个基本表导出,TYPE4,ISDELETED0。列名导出表列名导出表PAPERDATAIDPAPERDATAPAPERIDPAPERDATAQUESTIONIDPAPERDATAQUESTIONDESSPACEANSWER1SPACEANSWER2SPACEANSWER3SPACEANSWER4SPACERIGHTANSWERSPACE7、STUDENTJUDGEVIEW视图,由PAPERDATA、PAPER、JUDGE、JUDGEANSWER和USERS五个基本表导出。列名导出表列名导出表STUDENTIDUSERSPAPERIDPAPERSTUDENTNAMEUSERSPAPERNAMEPAPERTYPEPAPERDATASCOREPAPERDATAPAPERDATAIDJUDGEANSWER8、STUDENTMOREVIEW视图,由PAPERDATA、PAPER、MORE、MOREANSWER和USERS五个基本表导出。列名导出表列名导出表STUDENTIDUSERSPAPERIDPAPERSTUDENTNAMEUSERSPAPERNAMEPAPERTYPEPAPERDATASCOREPAPERDATAPAPERDATAIDMOREEANSWER9、STUDENTPROGRAMVIEW视图,由PAPERDATA、PAPER、PROGRAMANSWER和USERS四个基本表导出。列名导出表列名导出表STUDENTIDPROGRAMANSWERPAPERIDPAPERDATARSTUDENTNAMEUSERSPAPERNAMEPAPERTYPEPAPERDATASCOREPROGRAMANSWERPAPERDATAIDPAPERDATA10、STUDENTSINGLEVIEW视图,由PAPERDATA、PAPER、SINGLE、SINGLEANSWER和USERS五个基本表导出。列名导出表列名导出表STUDENTIDUSERSPAPERIDPAPERSTUDENTNAMEUSERSPAPERNAMEPAPERTYPEPAPERDATASCOREPAPERDATAPAPERDATAIDPAPERDATA11、STUDENTSPACEVIEW视图,由PAPERDATA、PAPER、SPACE、SPACEANSWER和USERS五个基本表导出。列名导出表列名导出表STUDENTIDUSERSPAPERIDPAPERSTUDENTNAMEUSERSPAPERNAMEPAPERTYPEPAPERDATASCOREPAPERDATAPAPERDATAIDSPACEANSWER12、STUDENTVIEW视图,由USERS基本表导出,TYPEUSER,ISDELETED0。列名导出表列名导出表STUDENTIDUSERSCLASSIDUSERSSTUDENTNAMEUSERSISDELETEDUSERS43系统总体构架设计目前开发网络考试系统的模式通常有两种一种是B/S浏览器/服务器模式,另一种是C/S客户/服务器模式。传统的C/S结构是指若干客户端连接一个服务端,通过这样的交互方式来进行工作。这就需要分别编写服务器端和客户端软件,且客户机需要安装客户端软件,给以后的维护带来很大麻烦。在这样的方式下,受到限制的因素很多,比如不同网段下的客户端与服务器连接会非常麻烦等。而B/S结构是指浏览器/服务器模式。在这种方式下,程序的设计只需在服务器端就可以完成,客户机只要有浏览器便可正常工作。B/S带来的最大好处就是不受地域限制,只要网络是连通的,并且在系统维护时只要在服务器端进行,不需要分发到每个客户机,实现客户端零维护,大大节省了人力、物力、时间、费用。431系统层次结构图考试系统学生教师注册模块修改密码模块考试模块退出模块科目管理模块试卷管理模块选择题管理模块填空题管理模块判断题管理模块程序题管理模块答题测试模块查看考试结果模块登陆模块班级管理模块432系统流程图学生做答模块流程图学生答题答题时间到提交更新数据库退出用户登录管理模块流程图用户登录管理用户登录用户注册填写信息选择班级登录注册验证错误用户登录更新数据库选择学号填写信息检查用户是否唯一通过不唯一没通过试卷管理模块流程图试卷管理编辑试卷增加试卷删除试卷设置试卷名称设置考试时间设置试卷题型结构选题满意添加到数据库YN修改数据库题库管理模块流程图题库管理选择科目选择题型编辑添加删除修改数据库填写相应信息修改数据库确定YN44小结本章是对系统设计目标、开发语言、工具,运行环境、后台数据库、数据库设计、系统框架的简单介绍。并详细介绍了系统数据库基本表和视图的设计。5系统主要功能模块设计51登陆模块每个用户要进入系统都必须先到登陆模块。在此页面,如果你已经注册了帐号和密码,那么可以直接输入帐号、密码登陆,如果之前未注册过,则必须先注册,然后再登陆。ADMIN用户(如教师)直接用指定的帐号登陆,学生的帐号即为学号。52注册模块ADMIN用户无需注册,只有USERS用户需要注册。在注册界面,用户选择自己的班级和学号,并填上自己的真实姓名和登陆用的密码按“确定”进行注册。学号唯一,若与别人相同则无法注册。53学生模块学生在登陆的时候,根据其用户类型,跳转到由USERJS控制的学生用户的首页面。当你进入时会显示“用户名你好,欢迎进入”以“WELCOME”及字样。5311密码修改模块用户如果需要修改自己的用户密码,可以点击上面的“修改密码”按钮,跳转到密码修改界面,只要重新输入新密码,确认一下就可以了。5312答题模块学生等入后,到了考试时间就要开始答题。按“答题”按钮就可以进入答题页面。学生考试完毕或者考试时间到了以后,要按“提交”按钮提交考卷。对于程序题要上传程序文件(EXE)和源码文件(RAR)。54教师模块教师在登陆的时候,根据其用户类型,跳转到由ADMINJS控制的管理者用户的首页面。当你进入时和学生用户一样,会显示“用户名你好,欢迎进入”以“WELCOME”及字样。和学生用户不同的是由ADMINJS控制的操作功能模块的不同。下面将一一列出了管理者所能操作的模块5411班级管理模块在班级管理模块中,老师可以看到各班的人数和班级成员,还可以对班级进行增加、删除等操作。5412科目管理模块每个教师根据自己所教授的课程添加科目,如果你所教的科目已经有其他老师添加过了,那么你可以和其他老师共用一个,或者在添加科目时加上标记以示区别。如数据库,可以用数据库04、数据库05以作区分。5413试卷管理模块在选题界面,首先显示的是各门的科目名称。按科目后面相对应的“增加”按钮即可跳转到试卷设置页面,再次输入试卷的名称,并对整份试卷的结构进行设置,分数的分布、各题型数量的分布。总分低于或超出100分时总分数显示呈红色以示警告。设置好后按“确定”按钮进入选题界面,选好题后按“添加到试卷中”按钮向数据库提交数据,一份考卷也就设置完成了,也可以按“返回”按钮重新对考卷进行设置。如果对之前设置的考卷不满意,有需要修改的地方,你可以按“编辑”按钮进入考卷设置界面,再到选题界面,直到满意为止。要将一份考卷用于当前考试时,只要按前面“用于考试”按钮即可,在上面会显示“当前考试试卷为当前考试用考卷名”。5414选择题管理模块进入选择题管理界面,选择科目,页面将显示出此科目目前已有的选择题题目和对应的正确答案,单项选择在前,多项选择在后。用户可按上方的“添加单选题”、“添加多选题”添加题目,也可以按题目相后面对应的“编辑”按钮对题目进行修改,也可以删除题目。题目的添加和编辑页面是同一个页面,对题干、备选答案和正确答案进行设置,按确认添加成功。在添加、编辑页面有一个“公共”的复选框,如果选中这个框,则在其他科目也将显示着题题目,也可对其进行其它操作。但选题和多选题的添加、编辑界面的不同之处在于正确答案设置处,单选题用的是单选框(RADIO),而多选题用的是复选框(CHECKBOX)。5415填空题管理模块进入填空题管理界面,选择科目,页面将显示出此科目目前已有的填空题题目和对应的正确答案。用户可按上方的“添加填空题”添加题目,也可以按题目后面相对应的“编辑”按钮对题目进行修改,也可以删除题目。题目的添加和编辑页面是同一个页面,对题干和正确答案进行设置,按确认添加成功。在添加、编辑页面有一个“公共”的复选框,如果选中这个框,则在其他科目也将显示着题题目,也可对其进行其它操作。值得提出的是,因为设计的关系,每题填空题的空格限制在四个以内。5416判断题管理模块进入判断题管理界面,选择科目,页面将显示出此科目目前已有的判断题题目和对应的正确答案。用户可按上方的“添加断题题”添加题目,也可以按题目后面相对应的“编辑”按钮对题目进行修改,也可以删除题目。题目的添加和编辑页面是同一个页面,对题干和正确答案进行设置,按确认添加成功。在添加、编辑页面有一个“公共”的复选框,如果选中这个框,则在其他科目也将显示着题题目,也可对其进行其它操作。5417程序题管理模块进入程序题管理界面,选择科目,页面将显示出此科目目前已有的程序题题目和对应的正确答案。用户可按上方的“添加程序题”添加题目,也可以按题目后面相对应的“编辑”按钮对题目进行修改,也可以删除题目。题目的添加和编辑页面是同一个页面,对题干和正确答案进行设置,按确认添加成功。在添加、编辑页面有一个“公共”的复选框,如果选中这个框,则在其他科目也将显示着题题目,也可对其进行其它操作。5418答题测试模块当教师设置未能考卷后可以对这份考卷进行答题测试,但是之前要将这份考卷设置为当前考试试卷,否则会显示其他设置为考试的考卷,如果目前没有考试试卷则跳出“请选择试卷”消息框,然后跳转到试卷管理页面选择当前考试试卷。测试答题完后,可按“查看答案”看看自己的答题情况,如果你答对了题目的下方将显示“恭喜你,答对了”,反之则显示正确答案。5419查看考试结果模块学生考试完成后,教师可以若要了解其情况,即可到这个页面查看。首先要选择班级科目、试卷名称、班级,点击“查看”进入,下面既有学生这份考卷各题得分和试卷总分。想看某位学生的答题情况点击其后面的“查看”按钮即可。55重点、难点代码设计551时间控制的实现时间控制是学生考试系统一个很重要的组成部分。一直以来的考试都有规定在一定的时间内完成,否则考试就失去了它本身的意义。在本系统中,应用一个LABEL控件来实现时间的倒计时。学生进入系统第一次考某份考卷点击“答题”按钮时,把当前时间写入EXAMTIME表中。与此同时,读取EXAMTIME表中相应的TIMELONG的值(第一次开始考试的时间)和PAPER表中EXAMTIME的值(考试规定时长),将读取的TIMELONG的值放在DATETIME的结构体中名为BEGINTIME;再将这个时间加上试卷的考试时长得到最迟交卷的时间,也将它存放在DATETIME结构体中,名为ENDTIME。将当前时间放在另一个DATETIME的结构体名为DTNOW,考生当前考试剩余时间为ENDTIMEDTNOW,这个结果是一个TIMESPAN结构(其实际格式为HHMMSS),将它显示在LABEL控件上。实现代码如下所示DOUBLETIMELONGDOUBLEPARSEPAPERGETEXAMTIMEIDTOSTRINGEXAMBIZEXAMTIMEEXAMTIMENEWSTGROUPEXAMBIZEXAMTIMEDATETIMEBEGINTIMEDATETIMEPARSEEXAMTIMEGETSTUDENTEXAMTIMEID,USERIDTOSTRINGDATETIMEDTDATETIMENOWDATETIMEENDTIMEBEGINTIMEADDMINUTESTIMELONGTIMESPANTIMESPANENDTIMESUBTRACTDTIFENDTIMEVARH2VARM0VARS0FUNCTIONWINDOWONLOADVARDIVWINDOWPARENTDOCUMENTGETELEMENTBYIDIFMCONTENTDIVSTYLEHEIGHTDOCUMENTBODYSCROLLHEIGHT10VARTMDOCUMENTGETELEMENTBYID“LBEXAMTIME“INNERTEXTHPARSEINTTMSPLIT“0MPARSEINTTMSPLIT“1SPARSEINTTMSPLIT“2FUNCTIONSHOWTIMEIFH0RETURNIFH0IFS时间刷新实现代码,每1000MS做SHOWTIME这个函数一次。TSETINTERVAL“SHOWTIME“,1000552自动阅卷的实现自动阅卷功能是本系统有别于其他考试系统的地方,是本系统的重点。自动阅卷包括客观题和主观题,客观题和主观题中的填空题采用匹配的方式,如果匹配得到两个是相同的,则正确;主观题中的变成体则采用C中的反射技术来实现。1、客观题和填空题部分这些题型题目的正确答案在添加题目的时候一起被写入数据库相应的题库表中,如单选题的在SINGLE表中,判断题的在JUDGE表中,考生所作的答案都存放在数据库中的所有ANSWER表中,如单选题在SINGLEANSWER表中,判断题在JUDGEANSWER表中。将ANSWER表中的答案与题库表中的正确答案相匹配,一样的说明正确,则把相应的信息如PAPERID、STUDENTID、PAPERDATAID、SCORE、TYPE等在视图STUDENTVIEW中输出。再把PAPERID、STUDENTID相同的SCORE的值相加,就可以得到指定考卷、考生类型为TYPE值的得分。具体实现代码如下所示EXAMBIZUSERUSERNEWSTGROUPEXAMBIZUSEREXAMBIZIDENTITYIDENTITYNEWEXAMBIZIDENTITYUSERIDENTITYNAMELONGUSERIDIDENTITYUSERIDFOREACHDATAGRIDITEMDGINDGSINGLEITEMSRADIOBUTTONLISTRBLTEMPRADIOBUTTONLISTDGFINDCONTROL“RBLANSWER“LABELLBPAPERDATAIDLABELDGFINDCONTROL“PAPERDATAID“INTPAPERDATAIDINTPARSELBPAPERDATAIDTEXTEXAMBIZSINGLEANSWERSINGLEANSWERNEWSTGROUPEXAMBIZSINGLEANSWERSTRINGTEMPRBLTEMPSELECTEDVALUESINGLEANSWERINSERTSINGLEANSWERPAPERDATAID,USERID,RBLTEMPSELECTEDVALUEFOREACHDATAGRIDITEMDGINDGMOREITEMSCHECKBOXLISTCBLTEMPCHECKBOXLISTDGFINDCONTROL“CBLANSWER“LABELLBPAPERDATAIDLABELDGFINDCONTROL“PAPERDATAID“INTPAPERDATAIDINTPARSELBPAPERDATAIDTEXTEXAMBIZMOREANSWERMOREANSWERNEWSTGROUPEXAMBIZMOREANSWERSTRINGTEMP“FOREACHLISTITEMLIINCBLTEMPITEMSIFLISELECTEDTEMP“1“ELSETEMP“0“MOREANSWERINSERTMOREANSWERPAPERDATAID,USERID,INTPARSETEMPFOREACHDATAGRIDITEMDGINDGJUDGEITEMSCHECKBOXCBTEMPCHECKBOXDGFINDCONTROL“CBANSWER“LABELLBPAPERDATAIDLABELDGFINDCONTROL“PAPERDATAID“INTPAPERDATAIDINTPARSELBPAPERDATAIDTEXTEXAMBIZJUDGEANSWERJUDGEANSWERNEWSTGROUPEXAMBIZJUDGEANSWERINTTEMP0IFCBTEMPCHECKEDTEMP1ELSETEMP0JUDGEANSWERINSERTJUDGEANSWERPAPERDATAID,USERID,TEMPFOREACHDATAGRIDITEMDGINDGSPACEITEMSLABELPAPERDATAIDLABELDGFINDCONTROL“PAPERDATAID“INTSPACEPAPERDATAIDINTPARSEPAPERDATAIDTEXTTEXTBOXTBSPACE1TEXTBOXDGFINDCONTROL“TBSPACE1“STRINGSPACE1TBSPACE1TEXTTEXTBOXTBSPACE2TEXTBOXDGFINDCONTROL“TBSPACE2“STRINGSPACE2TBSPACE2TEXTTEXTBOXTBSPACE3TEXTBOXDGFINDCONTROL“TBSPACE3“STRINGSPACE3TBSPACE3TEXTTEXTBOXTBSPACE4TEXTBOXDGFINDCONTROL“TBSPACE4“STRINGSPACE4TBSPACE4TEXTEXAMBIZSPACEANSWERSPACEANSWERNEWSTGROUPEXAMBIZSPACEANSWERSPACEANSWERINSERTSPACEANSWERSPACEPAPERDATAID,USERID,SPACE1,SPACE2,SPACE3,SPACE42、编程题部分反射式C中的一种技术,它的具体功能将在下面一节进行介绍。编程题阅卷采用反射方法来实现。在本系统中,编程题分为两类,一类是由输入输出的(按结果),一类是没有输出结果的(按过程),这两种不同的题型要用不同的阅卷方法。它通过对上传的EXE文件进行反射操作来实现,现用反射得到EXE的类、方法和属性,对于按结果的,则调用其方法,传入正确答案里的参数,将其返回结果与正确答案的结果相对比,一样,说明正确;对于按过程的,则同时对EXE文件和正确答案进行反射操作,将两边结果进行匹

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论