计算机网络实验课程考试系统设计及实现
2013-11-23朱小明杨续业
朱小明,张 弘,王 兵,杨续业
(北京师范大学 信息科与技术学院,北京 100085)
进入21世纪以来,计算机网络技术正以空前的速度、广度和深度发展起来。为了能更好地适应这一科技形势的迅猛发展,国内很多高校都陆续调整教学计划,加强计算机网络相关课程的教学[1]。与此同时,为能更好地检查教学效果,提高教学效率,一套能充分适应计算机网络课程自身特点的考试系统是必不可少的。
1 考试系统的特点
什么样的计算机网络考试系统才能满足本门课程的实际需要呢?我们认为一套好的计算机网络课程考试系统必须具备以下特点:
(1)要涵盖本课程全部的网络知识点;
(2)实现全部考题自动评测,在考试过程中不需人工干预;
(3)做到软硬结合,既考网络知识点中的软件,也考计算机网络中的硬件;
(4)考试系统能实现远程在线式的考试方式;
(5)界面友好,易于操作;
(6)模拟环境与真实环境相结合;
(7)容错处理能力强,有很好的系统稳定性。
通过以上分析,我们提出了全新的网络课程考试系统的设计思想,其中有些内容和方式还是国内首创:
(1)考试系统有较强的理论基础,它以现代教育理论中关于自主学习的思想为理论依据,以教育测量理论中的项目反应理论为指导,按照软件工程学的设计方法,从学科知识库、题库和学生3个方面入手,对系统各部分功能进行了细致的分析,提出了解决问题的可行性方案[2]。
(2)考试系统在技术实现方面,采用客户机/服务器(C/S)网络结构模式。这种结构有利于缩短大批量数据处理的吞吐时间,也使整个系统管理更加规范化,同时数据的完整性、安全性也得到了保障,解决了用基于IRT题库实现自适应测试与传统测试相容的问题,为学生训练和教师组织考试带来了方便。
2 考试系统的设计
2.1 考试系统的组成与运行环境
整个计算机网络考试系统分为6个部分:计算机网络考试管理系统、计算机网络考试登录系统、计算机网络考试出题系统、计算机网络考试测试系统、计算机网络考试收卷系统和计算机网络考试查询系统[3]。这6个子系统模块功能如图1所示。在整个系统中,管理系统是连接整个系统的关键,其他各个系统都是通过管理系统保持联系的。
图1 计算机考试系统模块功能示意图
2.2 运行环境
我们设计的这个考试系统可以在多种操作系统下运行。可以在 Windows XP 、Windows 2000、Windows server 2003、Window7等多种操作系统下运行。另外这个考试系统和以往的考试系统的不同之处在于,它不仅需要软件平台,还需要与硬件平台配合起来使用。硬件平台通常由路由器、交换机和防火墙等网络设备构成。如果从系统的结构看,整个考试系统由计算机网络硬件、操作系统软件和应用软件三部分组成[4],其结构如图2所示。
从图2可以看出:我们设计的计算机网络考试系统不但要考虑多系统条件下的运行,而且还要考虑硬件的支持和兼容。以往的考试系统只考虑软件环境,而我们设计的考试系统,既要考虑操作系统的多样性,还要考虑网络设备的兼容性。另外我们设计的考试系统还要考虑远程考试的问题,考试系统要在广域网的环境下,保证考试顺利完成[5-6]。
3 考试系统的实现
3.1 系统开发技术
在开发计算机网络考试系统时,采用的是Visual Basic语言编程和SQL Server数据库,系统与后台数据库相连时采用的是ODBC(开放数据库互连)接口。程序使用标准的SQL语言进行查询,使系统在数据库方面具有很强的可移植性,既可以在SQL Server,Oracle等大型数据库后台上运行,也可以稍作修改后在Access,Foxpro等小型PC数据库上运行,可满足不同层次用户的需求[7]。
图2 考试系统平台的结构图
系统采用C/S三层模型实现。三层应用模型同传统的客户机/服务器模型相比,提高了系统的可扩展性、安全性和可重用性,使系统的维护变得简单[8],同时客户端也不需要再安装其他专用软件[9-10]。
3.2 计算机网络考试系统环境的设置
在我们这个考试系统中有一个突出的特点——考网络硬件设备部分,如路由器和交换机。由于我们的考试系统是在真实的环境下考路由器和交换机部分,所以要求在考试前,首先将所用的设备搭建成考试题中要求的拓扑结构。网络环境的分布图[11-12]见图3。
从图3可以看出:考试系统在服务器里,服务器和实验室中心交换机相连,中心交换机同时连着考试机、教师用机、控制平台和8个机柜。每个机柜里有4个交换机、4个路由器、1个防火墙和一个语音网关。如果要考路由器、交换机和防火墙等网络设备部分,1次只能考8个学生,这是受硬件条件所限。
图3 网络环境分布图
为了提高考试效率,我们在实际考试时,把考试分为2个部分:一部分是基础知识,这一部分有46个学生一起考,其中路由器部分由8个人1组分组考;另一部分是考路由器和交换机,此部分学生只做路由器、交换机的配置,不做连接线的操作。网路通畅是考试成功的必要条件,因为线路如果出问题就会影响考试的顺利进行。为此我们在考试之前就要按照试题的要求,将所用的设备按试题的要求连接好。经过测试后,考生是不容许动设备连线的。考生提交完试卷后,考试系统会自动将所有设备初始化,以备下一个考生考试。所以我们这部分的考试是在一个特定的环境下完成的。如果考生要进行远程的在线考试,我们也要事先为他搭好考试环境。
在路由器和交换机的考试中,我们首先将标准答案录入数据库,当学生提交试卷后,再从他使用的设备中将他配置的所有参数读出来,然后再和数据库中的标准答案进行比对,根据比对的结果给分。
4 考试系统的题库建设
计算机网络考试系统的试题库是开放的,用户可以根据自己的要求添加或删除试题。试题的添加和删除分2部分进行,一部分是主观题,另一部分是客观题。
4.1 主观题的添加
主观题的添加要使用出题程序,因为每添加1道题要符合出题标准,所以一个知识点只要把数据一换,可以出很多不同的题,例如添加IP地址、子网掩码、网关和DNS。在这4个内容中,只要换不同的内容就可以出很多的不同类型的题。这样的好处是考试时考生抽到的题型一样、难度一样,只是内容不同。另外再添加主观题时,有些题出题程序不一定可以出,如果遇到这种情况,那就要修改出题程序。所以为了适应考试的内容,出题程序会经常修改。在出主观题时,每出1道就要给它一定的分值。因为主观题的内容差别很大,重要的程度也不一样,难度也不一样,所以每出1道题的同时,也就给它赋予一定的分值。由于面对的考生不同,同样的题可能分数也不一定相同。出主观题时,一般都是把一个模块的题一起出,这是因为主观题的难度和知识点中重要程度差别很大。比较难的题可能数量就会少一些,比较容易的题数目就可能多一些。所以经常是有的模块有6道题,同样的有的就有5道题甚至4道题。在这里的区别是难易程度,而难易程度的定义完全取决于出题教师。在做主观题时,由于有差异性,所以也很难做到绝对的公平。
综上所述,在题库中主观题是以组的形式存放的,它不像客观题可以以每1道题的形式存放。另外主观题在出好后,要经过测试模块的测试,只有能够得满分的题才算是通过测试,作为试题存放在题库中。由此也可以看出,主观题的出题工作比较烦琐,但是它是考试系统中最重要的部分,一个考试系统或者一场考试,水平如何主要取决于它的主观题的质量。
4.2 客观题的添加
客观题的添加比主观题相对容易一些,而且可以成批地导入,主要把试题按照如表1的格式录入好,就可以成批导入。在表1中我们可以看出,客观题分3种类型,即四选一、多选和判断题。一般四选一和判断题每题1分,多选题每题2分。分值多少可以由出题教师确定。
表1 试题格式
在考试系统中,所有考题要根据知识点出题,每道试题必须涵盖知识点的内容,客观题应该指定到小考点,操作题应该指定到模块,而不是具体的考点。操作题中的小知识点实际只有浏览备注性质,没有实际约束力。如果不能确定试题到底是属于哪一个小知识点,可以将它放入上一层大知识点中。试题号为知识点号,再加3位顺序递增的数字。试题录入后,试题记录中的考察知识点不能修改,知识点题库中所有试题的知识点也不能被删除。每道试题还应该有相应的难度、建议分数等属性。试题录入的方法有批量录入和单题维护2种方式。
5 结论
2006年我们开始做计算机网络考试系统,这是一个专门为网络课程设计的考试系统。从目前我们了解到的信息看,国内还没有一个这样比较全面又解决实际教学需要的考试系统。从以下几个方面可以看出在开发这个考试系统时我们所努力追求的方向,也正是这套系统的特点:
(1)本系统的知识点涵盖了全部局域网技术;
(2)本系统是在真实环境下的考试系统;
(3)本系统不但考网络的概念还考了网络的硬件操作;
(4)本系统的考题新颖,很多考点偏重操作;
(5)本考试系统可以支持远程考试,这一点非常有利于学校间的资源共享。
这套网络考试系统于2007年在国家版权局做了软件注册。我们花了1年的时间研究如何在考试系统中加入路由器、交换机这些网络设备作为考试内容。另外我们在这1年中为网络考试设计了一些新的题型。实际上我们的网络考试系统是在原来计算机基础考试系统上发展来的。我们的考试系统分为2个版本,一个是考试系统,另一个是练习系统。考试系统一般在服务器操作系统上运行,而练习系统则是用于单机版。练习系统是考试系统的一个附属产品,它的目的有2个:一个是为了让考生学会使用考试系统,另一个是为学生学习网络知识提供有力的支持,成为训练系统。
经过几年的实际应用,这套计算机网络考试系统还存在很多需要改进的地方:首先在考路由器、交换机等网络设备时,根据情况可以设计成模拟环境,这不是出于系统的稳定性考虑,而是出于考虑扩大考试规模的原因,因为由于硬件的局限性,这种考试系统很难扩大考试规模,如果要有100人同时考试,起码要有300个交换机或路由器,这在任何一个学校都是一个问题,不是买不起而是没地方放,对于教学来说也没那个必要;另一个我们的考试系统要改进的地方,就是要能考一些Linux操作系统的试题,因为在未来Linux系统的服务器会越来越多;最后一点就是对我们的考试系统稍加改进,它就可以变成一个学习系统,让学生在考试中学习。
(References)
[1]戴忠恒.教育统计、测量与评价[M].北京:中国科学技术出版社,1991:78-82.
[2]许祖慰.项目反应理论及其在测验中的应用[M].上海:华东师范大学出版基金会,1992:58-67.
[3]李广,王继新.浅论网络课程设计与学习策略导引[J].中国远程教育,2002(6):36-38.
[4]余嘉元.项目反应理论及其应用[M].南京:江苏教育出版社,1992:46-53.
[5]龙马工作室.ASP+SQL Server组建动态网站实例精讲[M].北京:人民邮电出版社,2004:182-203.
[6]乌洁明.SQL Server 2000开发指南[M].北京:人民邮电出版社,2005:58-165.
[7]王伟.SQL Server数据库开发教程[M].北京:清华大学出版社,2011:157-180.
[8]林蓉华,黄堂红,黄河明.基于Web的现代教育技术网络课程的设计与开发[J].现代远程教育研究,2004(2):36-39.
[9]朱守业.智能组卷中组卷目标的满足性检查与处理[J].微计算机信息,2007(21):21-26.
[10]郭冬梅.基于Web的网络考试系统设计与实现[J].电脑开发与应用,2011(2):18-22.
[11]袁斌.高校网络考试系统的实现与优化[J].科技信息,2011(10):11-15.
[12]徐光明,卢畅,李海霞.高校网络考试系统的应用研究[J].电脑知识与技术,2010(11):13-16.