无纸化考试系统的设计与实现2.docx
- 文档编号:28820209
- 上传时间:2023-07-20
- 格式:DOCX
- 页数:40
- 大小:242KB
无纸化考试系统的设计与实现2.docx
《无纸化考试系统的设计与实现2.docx》由会员分享,可在线阅读,更多相关《无纸化考试系统的设计与实现2.docx(40页珍藏版)》请在冰豆网上搜索。
无纸化考试系统的设计与实现2
《无纸化考试系统》设计报告
B11计信班李广建、何锐
主要内容:
针对传统考试系统容易引起考试误差等问题,在借鉴现有题库管理和考试系统开发经验的基础上,开发实用的考试管理系统。
系统以WindowsXP平台为基础,采用C/S模式,依托SQLServer或其它数据库。
客户端应用程序主要实现信息显示,考生登录考试以及数据采集;后台数据库服务器用于集中存放和管理业务数据。
考试系统应具有教师信息管理、考生信息管理、试题管理、考试管理、成绩处理等功能。
基本要求:
1必须立足学校实际情况,查阅相当数量的文献资料,独立完成.
2系统具有一定的实用价值,能基本满足基础考试需要。
3要求材料充实,思路清晰,语言流畅。
主要参考资料:
VS.net项目开发
Mysql数据库技术
SQLServer2000数据库应用
无纸化考试系统的设计与实现
摘要
考试是教育教学的一个重要环节,传统的考试组织形式多是教师编写试卷,印刷试卷,考生考试,教师批改试卷和成绩登记统计。
随着计算机技术在现代化教学系统中的广泛应用,以及各类考试的日益增多,改革传统的考试方法显得尤为重要。
本人在借鉴已有题库管理和考试系统开发经验的基础上,开发了一个客户端/服务器模式的无纸化考试系统。
本考试系统在MicrosoftWindowsXP操作系统平台下开发,采用C/S模式,界面使用VB编程技术,后台数据库采用SQLServer2000。
客户端主要实现考生登录考试及评分;服务器端主要用于考试相关数据的采集和管理,并对考试进行监控。
考试系统具有教师用户管理、考生信息管理、题库管理、考试管理、成绩处理等重要功能。
系统已经经过初步测试,运行比较稳定、可靠,取得了较为理想的效果,基本上达到了设计要求。
关键词客户/服务器模式/无纸化考试系统/VB/SQLServer2000
1绪论
1.1引言
考试系统是依据现代考试理论,借助现代统计法和计算机技术,严格按科学程序命题和实施考试,有效地控制各种误差,具有统一标准的考试。
这种考试要求命题科学化,管理手段规范化、现代化、制度化。
考试系统应具备以下三个特征:
可靠性、有效性、实用性,即通常所说的信度、效度和区分度。
优越性主要体现在三个方面:
(1)根据考试的程序,考前要预先公布考试范围、考试说明、考试方法,并公布题样,这有利于考生作好精神准备,从而有助于考出考生的真实水平;
(2)由于试题编制标准化,使得试题难易程度相对稳定,再加之评分、计分的标准化,增加了考生之间成绩的可比性;(3)由于采用计算机等科学工具和方法进行评分、计分,最大程度地控制了误差,保证了考生成绩的真实性;(4)由于网络和互连网的普及,使得通过考试系统可以顺利实施考试。
以上几方面,对于高等学校改进教学工作,提高人才培养质量水平无疑都是有益的。
目前,国内考试系统工作已起步,在高等院校每学期的考试中,采用考试系统的科目相当少[1][2][3],一是由于高等院校课程科目多,不易统一,再者人们已习惯于过去的考试方式。
为了提高考试的效率、效度、信度,实现对考试科学、规范、有效管理,建立和完善标准化考试系统是非常必要的。
考试系统是按照系统的科学程序组织、具有统一的标准,并对误差作了严格控制[4][5]。
就是说,制定出客观而规范的标准,从命题到考试、阅卷、评分等各个环节,努力减少或避免各种误差,从而测出考生比较真实的成绩,使测验、考试客观可信,准确有效。
考试系统一般由专门的考试机构编制试卷并组织实施。
为了保证考试的独立性和专业性,世界上许多国家和地区都有这种机构,如美国的教育测验中心、英国的伦敦职业考试中心、日本的大学入学考试国家中心,以及香港考试局等。
其中美国教育测验中心是世界上最大的考试机构,成立于1948年,共有2200多名工作人员,其中有人数众多的心理学、教育学、心理与教育测量学、统计学、计算机科学以及各个学科的专家。
目前在世界170多个国家和地区设有一万多个考点,每年对国内外近千万名考生提供上百种不同的考试,著名的托福考试就是该中心举办的。
1.2研究背景
现阶段,学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过四个步骤,即人工出卷、考生考试、人工阅卷和成绩评估。
显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,由此可能产生各种考试误差。
而考试是一个系统的过程,每个环节都可能带来误差,因此对考试的每个环节,都要加以控制。
凡是使考试结果不准确,便可认为是考试误差因素,考试中常见的误差,来源于3个方面:
试卷内部、考试过程、考生本身[6][7]。
(1)试卷内部的误差:
包括试题取样、试题数量、题型、命题技巧、试题科学性等方面。
当取样缺乏代表性,试题偏于某一方面时,不但不能对考生作出全面考察,达不到测量目的,而且会把教学引向歧途;当试题数量太少,考生受机遇影响就较大;试题题型如大多为论述性问答题,则评分误差就大等。
其他如试题指导语不清;用词模棱两可,题目过难,时限太短使考生仓促作答,试题科学性错误致使考生错误作答等,都可成为误差的来源。
(2)考试过程的误差:
与考试过程有关的误差因素主要是考场的环境,主考和监考人员的态度,意外干扰如临时发现个别试卷印刷不清或装订错误等,都可导致考试成绩的不准确。
特别是考试后的评分记分,包括评分不客观,合成分数、登记分数出差错等是常见的误差。
像论述题,由于评分标准难以掌握,加之阅卷者的身份、偏好、态度、情绪等因素的影响,评分误差几乎是不可避免的。
(3)考生本身的误差:
来自考生本身的误差因素既有心理方面的,也有生理方面的。
考生对考试的动机不同,会影响其注意力、持久力、作答态度、反应速度等,从而影响考试成绩;临考前或考试中,过度的紧张而不愉快的情绪会使考生注意力分散;思维狭窄,适度的焦虑会使人兴奋性提高,注意力增强,对作答产生积极影响;考生的应考经验的影响;生病、疲劳、失眠等生理因素的影响等。
传统的考试方式容易出现的这些误差在考试系统中都得到了有效控制。
相比于传统的考试方式,网上考试系统的的特点是试题取样范围大,题量多、效度高,难度适中,区分度好,试题答法简单、明确,评分客观准确,从命题到考试、评分,努力排除无关因素的影响。
最主要的好处是一方面可以动态的管理各种考试信息;另一方面,计算机化考试阅卷能力快,系统可以在考试结束时当场给出考试结果,并且计算机考试给了考生最大的公平感。
无纸化考试极大的提高了教学的灵活性,现在在许多领域已经有了广泛的应用。
最有影响的案例就是ETS(美国教育考试中心)举办的GRE(美国研究生入学考试)的计算机化考试,它使考试由原来的每年只能有两次参加考试的机会便为每个工作日都可以参加考试。
因此,采用无纸化考试方式将是以后考试发展的趋势,无纸化考试必将会日益盛行。
课题的研究目的在于适应现代的现实情况,解决考试系统的关键技术问题,设计具备较高实用性的系统,技术上综合运用VB编程技术、数据库技术等技术。
该系统集教师信息管理、考生信息管理、试题管理、考试管理和成绩处理等多项功能于一体,力求以准确、高速信息技术为手段,实现题库管理、无纸化考试等环节的高度自动化、科学化。
通过提高测验考试的效率、增强测验考试的反馈效果,揭示考生知识能力的局部缺陷,使教与学都更有针对性,从而提高教师的教学水平和考生的学习效果。
1.3考试系统现状分析
随着网络技术的发展,运行在单机上的考试系统基本上趋于淘汰趋势,主要原因是单机运行的考试系统虽然没有网络需求,但缺乏数据共享、集中管理等功能,这样反而给管理人员增加了较大的负担。
目前,在一些硬件设施比较落后的地方,还有这样的系统在使用;更多的是随着硬件设施的提高,选用这样系统自带的题库,完成自测工作。
基于网络的考试系统是主流的发展方向,它大体分为适用于局域网和适用于广域网两类[8]。
市场上商业化的考试系统主要是前者,是针对局域网的;而后者则往往被实现为CGI模式[9][10]。
从实现方式上来看,适用于局域网的计算机考试系统可以分为客户/文件服务器模式和客户/数据库服务器模式两类。
(1)客户/文件服务器模式
这种模式在早期的考试系统中运用的较多。
早期的PC操作系统主流是DOS,局域网则以Novell网络系统为主[11][12]。
由于Novell网络操作系统提供了强大便利的文件服务功能,易于被设计和开发人员接受,因此许多开发者将Novell网的这种服务应用于网络考试系统中。
在这种模式下,考试的试卷数据和考生的答卷数据都是以文件的方式存放在Novell网的文件服务器上;位于客户端的程序从指定的位置获取试卷文件,并将考生的答案文件通过网络保存到文件服务器上。
采用这种模式的考试系统,把整个业务逻辑几乎完全放在客户端程序实现,服务器只是充当了一个保存文件的公共场所。
这样的系统只有很简单的管理功能,考生与其答案文件之间通常依赖事先约定好的一种简单的对应关系,例如,以考生的考号为文件名保存考生答卷。
所以,这样的考试系统通常需要额外的人工整理工作[13][14]。
(2)客户/数据库服务器模式
客户/数据库服务器模式是目前应用最为广泛的一种模式。
这主要是由于Wnidows网络的普及应用,从而为基于客户/服务器模式的数据库应用提供了方便的图形环境,并且为开发者提供了相当丰富的开发工具[15]。
在采用这种模式的考试系统中,所有的数据都被保存在服务器上,并且大部分被保存在数据库中。
客户端安装有可以访问数据库的应用程序,完成几乎所有的业务逻辑,包括身份验证、显示试题、接受答案和保存答案等。
由于有数据库的支持,所有这样的系统通常拥有较为完善的信息管理机制,它们可以很好地保存、管理有关考试的数据,例如考生的名单信息等。
因此这样的系统在很大程度上自动化了考试过程的管理工作,所以得到了相当广泛的应用。
目前此类系统通常使用的数据库开发工具有:
VisualBasic、Delphi和PowerBuilder等。
Internet的普及使得人们尝试创建可以运行于Internet的计算机考试系统[16]。
从目前的情况看,广泛采用的是通用网关接口(CGI)方式,其系统结构和工作流程也比较明确。
在这种方式下,提供给考生的是由Web服务器动态生成的Web页面,考生在页面中填入答案后,直接将结果提交到Web服务器上。
通常这样的系统还可以实时改卷,并将结果反馈给考生。
目前开发这样的系统除了用高级语言编写CGI程序外,使用最为广泛的就是微软的ASP(ActiveServerPage),还有Perl等。
使用其他的技术也可以创建运行在Internet上的考试系统[17][18],譬如使用Java技术,在web页面中嵌入JavaApplet;另外一些系统是原有的局域网考试系统添加了远程数据传输功能,采用分考场模式考试;还有的系统是采用业界提供的整套方案,例如LotusNotes群体系统。
1.4论文概要
第一章为绪论。
介绍了系统开发的背景和目前考试系统的现状分析;
第二章为系统需求分析。
分析了考试流程,提出了系统要实现的功能,系统的设计目标等;
第三章为系统开发环境与技术。
主要介绍了系统的开发工具与使用的技术等;
第四章为系统总体设计。
主要介绍考试系统的总体设计思路、设计原则;
第五章为系统详细设计。
主要介绍系统各主要功能的具体实现,系统的框架结构图及具体功能,数据库结构等;
第六章为系统功能实现。
包括系统的界面、具体使用情况等;
第七章为系统测试。
主要采用了黑盒测试方法对系统进行了测试;
最后为结论,总结了论文所做的主要工作和下一步的工作计划。
2系统的需求分析
本章将对考试系统进行需求分析,对其业务过程进行简单的描述,对系统要实现的功能进行介绍,对系统设计目标进行简要的说明。
2.1考试系统工作流程
2.1.1系统流程分析
考试系统分为服务器端和客户端,服务器端为教师提供了一个组织考试、管理考试的界面,客户端为考生提供一个参加考试的界面。
通过身份认证后,教师可以在服务器端进行教师信息管理、考生信息管理、试题管理、考试管理和成绩处理等操作,而考生则可以在客户端使用登录、参加考试和交卷评分等功能。
考试系统业务流程的设计如图2.1、2.2所示。
考试监控
图2.1服务器端业务流程设计
交卷评分
图2.2客户端业务流程设计
2.1.2系统用例图
根据上述考试系统业务流程设计,可以得出系统用例图,如图2.3所示。
其中用例包括:
用户登录、教师信息管理、考生信息管理、试题管理、考试管理、考生参加考试、成绩管理等。
参与者包括:
教师和考生。
试卷
考试管理
登录
试题管理
考试
教师信息管理
计时
考生
评分
题库生成
考生信息管理
考生考试
教师
阅卷
成绩管理
图2.3系统用例图
2.2系统功能描述
考试系统的考试管理包括考试开考时间及考试时限的设置等。
在考试系统中,先由教师用户在考试系统题库管理模块中根据考生需要考试的知识情况和相关考试项目来进行试题的添加。
然后,由教师用户在考试系统中考试设置模块中设置考试的开考时间、考试时限以及考试的试题量等相关信息。
在考生参加在线考试时,先要正确输入准考证号,用于验证是否是有效用户,然后才能正式参加考试。
系统可以自动生成试卷(可以是一份或者是多份)[19][20]。
在考试开考时间到达前,考生不可以进行答题。
考生答题完毕,检查无误,可以交卷。
考试时间快结束时,系统给出提示,提醒考生尽快完成答题并交卷。
到考试时间结束时,所有考生自动强制结束答题,并自动完成试卷提交及评分等。
2.3系统设计目标
考试系统考试功能的设计目标是希望通过对试卷出题,考试安排的起初设定,考生信息的添加,取得相关信息保存到数据库表中。
当考生参加考试时,必须保证考生身份的正确,考试时间的正确,考生题目显示正确,考试结束后及时交卷的正确以及答案比对的正确。
避免在考试时考生混乱、考试没开始就答题和考试结束后继续答题的问题。
同时保证系统在同时进行多个考试和交卷时,不会相互产生干扰。
2.4本章小结
本章在对考试系统的考试功能进行的需求分析基础上,明确了系统的主要功能:
教师信息管理、考生信息管理、试题管理、考试管理和成绩处理等。
最后,提出了系统拟达到的设计目标:
考生身份正确,考试时间正确,考生题目显示正确,考试结束后及时交卷的正确以及答案比对的正确。
保证系统在同时进行的多个考试不会相互影响。
3系统开发环境及技术
3.1系统硬件要求
一台安装有数据库(MicrosoftSQLServer2000)的机器
CPU:
PIV2.0GHZ或更高频率的CPU
内存:
DDR333256MB或更多的内存
硬盘:
至少10G以上或更多的硬盘空间
3.2系统开发工具
3.2.1前台开发工具
微软公司的VisualBasic6.0是Windows应用程序开发工具,是目前最为广泛的、易学易用的面向对象的开发工具。
VisualBasic提供了大量的控件,这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,从而有效的提高了应用程序的运行效率和可靠性[21[22]
VB6.0所具有的特点:
1.具有面向对象的可视化设计工具OOP
在VB中,应用面向对象的程序设计方法(OOP),把程序和数据封装起视为一个对象,每个对象都是可视的。
程序员在设计时只需用现有工具根据界面设计的要求,直接在屏幕上画出窗口、菜单、按钮、滚动条等不同类型的对象,并为每个对象设置属性。
程序员的编程工作仅限于编写相关对象要完成的功能的程序,因而程序设计的效率可大大提高。
2.事件驱动的编程机制
事件驱动是非常适合图形用户界面的编程方式。
传统的程序设计是一种面向过程的方式,程序总是按事先设计的流程运行。
但在图形用户界面的应用程序中,是由用户的动作即事件掌握着程序运行的流向,每个事件都能驱动一段程序的运行。
程序员只需编写响应用户动作的代码,而各个动作之间不一定有联系。
这样的应用程序代码一般较短,所以程序既易于编写又易于维护。
3.提供了易学易用的应用程序集成开发环境
在VB集成开发环境中,用户可设计界面、编写代码、调试程序,直至把应用程序编译成可执行文件在Windows中运行,使用户在友好的开发环境中工作。
4.结构化的程序设计语言
VB具有丰富的数据类型和结构化程序结构,而且简单易学。
5.支持多种数据库系统的访问
6.支持动态数据交换(DDE)、动态链接库(DLL)和对象的链接与嵌入技术(OLE)
7.联机帮助功能
VB具有丰富的数据类型和结构化程序结构,而且简单易学。
由于VB6.0具有可视化设计截面,因此开发起来比较快。
并且截面设计比较快。
并且也支持多数据库系统访问,因此今后在别的系统中继承起来也比较方便。
由于提供易学易用的程序集成开发环境,因此对于新手上手比较快。
综合上面VB6.0的一些优点所以我选择VB6.0来开发我的系统。
3.2.2后台数据库
用户对数据库的使用,是通过数据库管理系统提供的语言来实现的。
不同的数据库管理系统提供不同的数据库语言。
关系数据库管理系统几乎都提供关系数据库标准语言——SQL。
SQL的全称是StructuredQueryLanguage,即结构化查询语言。
MicrosoftSQLServer2000是一种功能强大的关系型数据库管理系统。
下面将对MicrosoftSQLServer2000的特点和性能进行介绍:
MicrosoftSQLServer2000具有高度的扩展性和高可靠性。
MicrosoftSQLServer2000使用了工业界最先进的数据结构,能够为要求最苛刻的企业应用提供高度的可扩展性和高可靠性。
MicrosoftSQLServer2000在许多工业基准测试中的性能都创立了新的世界纪录,包括事务处理性能委员会的TPC-C基准,它击败了运行于任何硬件或操作系统环境下的同类数据库产品。
MicrosoftSQLServer2000的性能还在Windows平台下为SAPR/3SalesandDistribution(SD)标准应用程序据基准创立了新的世界纪录。
虽然MicrosoftSQLServer2000被设计用来充分利用最近和将来的高端对称多处理器(SMP)技术,它还是可以把数据库的工作负荷分布到普通的服务器集群上。
这样可以实现高度的可扩展性,即只需要向数据库集群中增加新的普通服务器即可,而不用把老系统替换为更大、更昂贵的新机器。
MicrosoftSQLServer2000引入了一个新的特性,被称为分布式数据库分区视图(DistributedPartitionedViews)它可以把工作负荷划分到多个独立的SQLServer服务器上去,从而为实施电子商务的客户提供了无限制的可扩展性。
MicrosoftSQLServer2000直接支持最新的、高速的系统区域网络(SAN)技术。
MicrosoftSQLServer2000在它的管理控制台和安装向导中紧密集成了4节点故障恢复技术,从而保证了高度的系统可用性。
MicrosoftSQLServer2000还引用了索引视图技术,运用该技术可以为关系型数据库设计出功能的报表应用程序。
MicrosoftSQLServer2000可以进行最快速的应用程序开发。
微软提供了许多技术和工具,作为数据库系统的标准集成组件。
而且通过巧妙的设计以及自动调整、自动管理特性,MicrosoftSQLServer2000是客户可以更快、更容易的享受所有这些最先进的分析技术所带来的好处,能够快书提交应用,从而赢得竞争上的优势。
微软在开发数据库服务器自动调整和自动管理技术方面一直在工业界处于领先地位。
这种技术使客户可以集中精力处理商业战略上的问题,而不是去细微调整数据库服务器的各项参数。
MicrosoftSQLServer2000可以为最新的硬件进行优化,包括大内存、超高速磁盘子系统以及SAN等,从而扩展了这项功能。
MicrosoftSQLServer2000与Windows2000的活动目录服务的紧密集成允许集中管理功能。
MicrosoftSQLServer2000和其他企业资源,从而极大地简化了大型组织中的体统管理任务。
3.2.3前后台连接ODBC
ODBC的全称为OpenDataBaseConnectivity,即开放式数据连接,是Microsoft公司在1989年推出的连接外部数据库的标准。
ODBC有以下优点:
ODBC提供了一个能访问大量数据库的单一接口。
ODBC使客户应用程序的开发可以独立于后端服务器[25]。
开放式数据库连接(ODBC)技术为访问不同种类的SQL数据库提供了通用接口。
ODBC是基于结构查询语言(SQL)的,以此作为访问数据的标准。
此接口提供了最大的互操作性:
一个应用程序可以通过一组公用代码访问不同的SQL数据库管理系统(DBMS)。
这使得开发人员能够在不以特定的DBMS为目标的情况下构建和分发一个客户端/服务器应用程序。
然后,会添加数据库驱动程序以将应用程序链接到用户选择的DBMS。
以下特性说明了ODBC的灵活性:
应用程序没有绑定到专有供应商API。
SQL语句可以明确地包括在源代码中也可以在运行时即时构建。
应用程序可以忽略基础数据通信协议。
数据可以用方便于应用程序的格式进行发送和接收。
ODBC是随新兴的国际ISOCall-LevelInterface标准一起设计的。
目前提供了可用于55种最流行的数据库的ODBC数据库驱动程序。
3.3相关技术介绍
3.3.1系统结构C/S模式
设计这个系统时,有个问题摆在我面前,那就是对于这个系统我是采用c/s模式进行开发呢,还是b/s?
于是我把这两个的优缺点例举下来,进行了一个比较。
C/S模式开发考试系统
优点:
由于C/S模式是通过客户端直接与服务器交互数据,因此其相应速度比较快,不需要通过IE浏览器进行数据传输,因此数据比较安全。
很适合适时提交数据系统。
缺点:
由于是直接用客户端直接与服务器交互,因此需要为每台电脑安装客户端,
因此对电脑的配置要求比较高。
并且对系统升级的话,就增加了升级的复杂性,因为需要为每台电脑都更新客户端。
B/S模式开发考试系统
优点:
由于B/S模式是通过IE浏览器来访问,所以它适合分散性的考试系统,并且用户只需要能访问IE就可以参加考试。
由于只需要对服务器进行更新,所以更新起来比较快。
缺点:
由于采用IE浏览器经过网络传输,因此数据的安全性不高,很可能导致数据的丢失,由它没有客户端因此客户端只能进行一些数据的查询,读写,都需要跟远程服务器进行交互,因此增加了服务器的压力。
并且不适合适时的数据进行交互,这样会导致服务器压力会很大[26]。
综合上面B/S与C/S的优缺点可知,由于我们考试系统适用于学校,并且对数据
交互比较频繁,对数据的安全性需要很高。
因此采用C/S模式来开发该系统。
3.3.2Winsock编程
Windows下网络编程的规范-WindowsSockets是Windows下得到广泛应用的、开放的、支持多种协议的网络编程接口。
从1991年的1.0版到1995年的2.0.8版,经过不断完善并在Intel、Microsoft、Sun、SGI、Informix、Novell等公司的全力支持下,已成为Windows网络编程的事实上的标准[27]。
通信的基础是套
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 无纸化考试系统的设计与实现 无纸化 考试 系统 设计 实现