通用标准网络考试系统的设计研究
2016-11-02彭亮清吴耀群陈玮
彭亮清 吴耀群 陈玮
摘要:该文针对当前在线考试系统和计算机考试系统的缺点,提出了通用标准网络考试系统设计的原则和功能,然后介绍了系统设计中常用的关键技术,最后对系统设计和实现进行了概要的介绍,对通用标准网络考试系统的开发具有一定的参考价值。
关键词:通用标准网络考试系统;系统设计;关键技术
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)18-0080-03
Design of Network Examination System Common Criteria
PENG Liang-qing1, WU Yao-qun1, CHEN Wei2
(1.School of Information Engineering, Shaoyang University, Shaoyang 422000, China;2. Department of Electrical Engineering, Shaoyang University, Shaoyang 422000, China)
Abstract: This article is for the shortcomings of the current online examination system and the computer examination system, put forward the principles and features common standard network test system design, then introduces the system design commonly used in key technologies, and finally the system design and realization of the summary introduction, develop a common standard for network test system has a certain reference value.
Key words: General Standard Network Test System; system design; key technology
随着现代计算机技术和网络技术的快速发展,传统的考试方式也发生了前所未有的深刻变革,越来越多的考试采用计算机答题的方式进行,比如现在的托福、计算机资格认证等,这种基于网络的计算机考试系统可以实现试题分发以及准确和严格的时间控制,有些系统还能够进行即时的成绩统计和评判,大大提高了考试组织的效率。但目前的考试系统存在着明显的不足,主要表现在专业性不强、考试和答题界面不友好、试后统计分析项目偏少等,本文针对这些缺点,力求设计并实现一种界面友好、配置灵活、安全健壮的考试系统,同时在数理统计的基础上对考生的答案进行相关性分析,并将分析结果及时反馈到题库维护模块,提高了题库的有效性和准确性,能够更加准确地反映考生的真实水平。
1 通用标准网络考试系统设计的原则和功能
通用标准网络考试系统设计的基本原则应满足以下几个方面[1]:一是通用性原则。系统应能克服目前考试系统通用性差的缺点,数据的结果和试题的显示模式应能满足试题内容和类型分离的要求,对主观题、客观题、不同领域的试题内容具有较强的适应性。 二是友好性原则。现有软件的用户体验关注不够,在考试过程中容易给考生带来额外的负担,部分考生可能因为简单的操作失误无法完成考试,所以通用性的考试系统应该克服这样的缺点。三是便于扩展和维护原则。通用的考试系统应充分考虑系统的可扩展性,在系统结构设计、数据结构和系统后台数据库都应尽可能采用模块化、组件化的结构,便于系统灵活配置系统模块和客户端工具。四是安全性原则。多数情况下,考试试题要求一定的保密性,考试系统应能保证在考试的各个阶段都有完备的安全保密措施,避免试题外泄。可通过加装秘钥、控制客户端底层调用程序等手段,保证试题不被带出考场。五是可靠性原则。考试系统一旦出现故障,会给考生带了严重的心理压力和时间和精力损失,通用考试系统在设计时应充分考虑系统的冗余度,确保系统故障时能够自动恢复系统数据和考生的答题数据,尽量避免系统的整体性瘫痪。
通用标准网络考试系统应具备以下几个功能:一是用户管理功能。系统应能管理所有用户的类别、认证信息、权限等信息。二是考试功能。包括试卷的生成、传输、显示,同时还应具有试卷评判和统计功能。三是题库维护功能。包括题库的创建、录入和删除,同时应能动态调整试卷难度。四是系统配置和维护功能。系统应能自动适应不同考试环境,灵活配置考试系统各个模块,支持主流的数据库产品。在工作模式上,系统既要能支持基于远程服务器的大型互联网考试,也要能支持基于本地服务器的小型局域网考试。通用标准考试系统的功能具体应划分为5个模块:在线考试模块、考试管理模块、题库管理模块、管理员管理模块、成绩评判和统计模块。
2 通用标准网络考试系统设计的关键技术
2.1 B/S 结构
B/S 结构是一种三层(3-Tier)体系结构,就是将传统的应用程序的任务逻辑分为三个服务“中间层”,如图 1所示。
如上图所示,客户层主要负责终端用户应用程序组件的处理,主要由客户端的网页浏览器组成,中间层主要提供应用程序和系统级的处理能力,客户端的应用程序通过中间层的组件来实现数据的处理,数据库层主要为应用程序提供数据管理服务,可以为应用程序进行批量的数据处理,SQL Server 和 Oracle 8i 是Web系统中主流的数据库工具。在B/S 结构的应用程序中,由于大量的具体业务规则、数据访问和任务的处理都可通过封装的方式进行,所以大多数情况下客户端通过中间层与数据库连接进行信息的交互,其优点主要有:1)封装后的中间层可以承担大量的数据访问功能,这样就可以大大减少服务器的连接数量,并且动态的数据连接和释放方式使得客户端数量可以不受服务器数据处理能力的限制。2) 提高可维护性。业务规则和校验业务都通过中间层实现,所以当业务规则改变时只需改变中间层的封装组件,不需改变客户端程序,提高了系统维护的效率。3)提高系统的配置灵活性。因为基于B/S三层结构的考试系统,其大量的业务通过访问和调用中间层实现,所以重新配置系统时,不需要重新进行开发,直接改变中间层的封装就可实现,增加了系统配置和事务处理的灵活性。
2.2 ASP 技术
ASP(Active Server Pages)是微软公司推出的动态网页开发技术,支持多种主流的网页脚本语言,通过向页面嵌入动态的组件和元素,能够有效减少对客户端要求,减少后期的维护工作[2]。ASP 的主要特点有:一是编辑方便。通过记事本等常用的文本编辑器就可进行网页的编辑设计。二是编译快捷。脚本程序编辑完成后可直接在服务器端执行,无需进行二次编译。三是兼容性强。基于Windows系统的优势,ASP能与绝大多数的控件和描述语言兼容,通过 plug-in 的方式,还可使用第三方厂商的脚本语言。四是程序安全性高。客户端无法看到ASP 源程序,这就避免了程序脚本的外泄。五是可扩展性强。ASP可以与主流的高级编程语言结合,比如VC++、VB、COBOL 等,进行基于网页的程序开发。
2.3 组件技术
1)COM 和 OLE 技术
COM(Component Object Model)是微软开发的组件对象模型,该模型使多个应用程序和组建对象进行协同和信息交换成为可能,它以动态链接库或可执行文件(EXE)的形式发布的无需编译即可执行的二进制代码,遵循通用的COM通信规范,这就使得使组件和应用、组件与组件兼容性大大提高,相互间的通信更为方便,系统的伸缩弹性更大。
2)ActiveX 技术
ActiveX 是指由控件、动态链接库和 ActiveX 文档所组成的组件,它通常以DLL的形式存在,必须以某种独立软件作为容器运行。ActiveX是 OLE 技术在IE上的扩展,其核心基础和技术是OLE。
2.4 ADO 数据库访问技术
ADO(Active Data Object)是内置于ASP的服务器组建和数据库访问技术,通过与ASP结合,建立网页数据库信息,并支持网页上对数据库进行访问和操作,具有操作方便、配置灵活、运行高效的优点。ADO 对远程数据库的操作主要包括三步:建立连接、数据处理和断开连接。ADO 对象库中包括了 7 个对象(Connection、Command、Parameter、Recordset、
Field、Error、Property)和 4 个集合(Errors、Parameters、Fields、Properties)。
3 通用标准网络考试系统的概要设计
3.1 软件系统结构设计
根据上文的分析和系统设计的需求,设计出通用考试系统的业务流程[3]。在通用标准网络考试系统中,其软件体系结构和系统层次要根据考试系统的用户(管理员、教师、考生)的实际需求和现实业务进行设计,本文设计的系统功能划分为在线考试、考试管题库管理、管理员管理、成绩统计五大部分,功能模块如图2所示。
3.2 系统的文件设计
ges为存放通用考试系统文件的文件夹,存放在根目录文件夹下;css为存放 css 文件的文件夹;data为存放数据库数据的文件夹; examsys为存放系统程序文件的文件夹; exam为存放 word 试卷文件的文件夹; conn为存放数据库连接文件的文件夹;images为存放图片和 Flash 文件的文件夹;user为存放用户相关程序文件的文件夹,上述文件均存放在 ges 目录下。
3.3 接口设计
接口设计包括人机交互的界面设计、内部和外部接口设计等,本文重点对内部和外部接口设计进行介绍。根据上文的功能设计和技术应用,在线考试功能的内部接口为考生和管理模块,外部接口为考试系统数据库接口,考试管理功能的内部接口为考生、考卷和考场管理模块,外部接口为考试系统数据库接口,题库管理功能的内部接口为试卷管理模块,外部接口同考试管理功能,管理员管理内部接口为考试管理、题库管理和成绩统计模块,外部接口同考试管理功能,成绩统计接口内部接口为考试管理,外部接口为考试系统数据库接口和 WORD 软件接口,上述接口的硬件接口暂时为无[4]。
3.4 数据库设计
本文重点对数据库设计的外部设计和结构设计进行介绍,在外部设计中,重点是做好类型划分和表示符号约定,在类型划分中,将首先将数据分为用户表、答题表、试卷表、题库表、考试过用户表和成绩表等,具体每个类型的要素因为篇幅关系不再述。在符号约定中,首先确定数据库表命的命名规则:采用中文拼音或者英文单词,或者两者的结合来命名,具体表名的标识规则为用户表(users),学生答题表(studati),试卷表(exam),题库表(question),考过试用户表(kgsyh),成绩表(chengji)
在系统的结构设计中,采用了浏览器和服务器的(B/S)三层体系结构,表示层/事务层/数据库层,其中表示层基于ASP技术和ActiveX实现,位于客户端,表示网络上的任何一台具有网络浏览器的算机,考生通过浏览器登录考试系统,考生和系统交互的信息传输协议基于TCP/IP 协议实现。事物层是基于Web的服务器,对考生和系统数据的处理集中在事物层,操作系统基于windows 2000 Server。数据库层是数据库服务器,数据库软件采用微软的SQL Server 2000实现,主要负责数据库的管理、更新及访问查询要求和存储过程等,它接受来自 Web 服务器的请求,实现对数据库的操作,并将处理结果返回 Web 服务器[5]。系统的运行流程图如图3所示。
4 结束语
本文针对现有的考试系统的缺点,设计了一种通用标准网络考试系统,由于篇幅所限,主要对系统的概要设计(结构设计、文件设计、接口设计和数据库设计)进行了介绍,该系统的设计对通用标准网络考试系统的开发具有一定的借鉴意义。
参考文献:
[1] 王鹰,赵跃龙,刘中宇.基于 C/S 模式的计算机等级考试上机考试系统[J].计算机与现代化,2006,126(2):70-72.
[2] 王奕军.基于三层结构的网上动态考试系统设计与相关技术的分析[J].安徽机电学院学报,2002,17(l):44-45.
[3] 孙波成.基于 B/S 结构的网上考试系统的设计与实现[J].信息技术,2001,33(5):35-36.
[4] 杨竞.基于 Internet/Intranet 的分布式动态 Web 应用系统开发技术[J].计算机应用研究,1999,12(9):50-51.
[5] 王海龙.基于 Web 的在线考试系统开发设计[J].固原师专学报:自然科学,1999,26(6):50-53.