在线考试系统的研究和实现

时间:2022-09-01 07:50:53

在线考试系统的研究和实现

摘要:传统考试的形势已无法满足社会的需要,在线考试系统应运而生。本文简要介绍在线考试系统的开发模式、开发技术及数据库访问技术,并探讨该系统的各方面需求。重点阐明了系统的设计与实现,介绍了系统的总体设计和各模块的功能及设计。

关键词:在线考试系统 开发技术 模块设计

中图分类号:TP311.52 文献标识码:A 文章编号:1007-9416(2013)02-0085-01

当代社会计算机技术和网络技术的高速发展,传统考试形式已无法满足当今考试多方面的需求,在线考试已成为现代考试的重要特征。相比于传统的纸质考试形式,在线考试系统具有不可比拟的优势,运行成本低,高效便捷。

1 在线考试系统的技术需求

1.1 开发模式的分析

以Web技术为依托的开发模式目前有两种,C/S(Client/Server,简称C/S)模式和B/S(Browser/Server,简称B/S)模式。前者为两层结构模式,后者为三层的结构模式。

C/S模式为分布式计算模式,将任务分解为多个小任务,由不同的机器执行,最终共同完成应用任务。该模式主要有三个组成部件,服务器的任务是对系统资源进行有效的管理,客户端的作用是响应客户对服务器的请求,中间件的作用则是连接客户端的应用程序于服务器的管理程序,保证数据的传输,满足用户需求。

C/S模式的分布式计算,相比于文件服务器性能优越很多。但是随着计算机技术的高速发展,B/S模式逐渐兴起,它对C/S模式进行了改进。B/S模式全称为浏览器和服务器模式,将C/S模式中的服务器划分不同的数据服务器和应用服务器,从而形成三层结构。B/S模式的优点是方便客户随时随地操作,而且勿需专业软件的技术支持。客户端的维护简单,系统的扩展和升级容易,成本低廉而且可供选择的更多,未来B/S模式的应用势必占据主导地位。

1.2 开发技术的分析

ASP作为Web服务器端的开发技术,它采用脚本语言Java Script或VBScript,可以编译并运行具有交互性和动态性的应用程序。ASP技术的应用是附加在Web服务器模块上的。PHP技术区别于ASP技术的重要特点是,它可以进行跨平台开发,并可以借用多种开发语言,如C,Java和Perl语言。PHP是可以嵌入HTML文档服务器端的脚本语言,使开发者可快速编译动态页面。JSP技术解决了ASP、PHP的通病,它的代码可以在服务器间兼容,且运行速度较快,其缺点在于需要下载PHP专业软件[2]。

技术是集合ASP和.NET的Internet编程技术,是Web开发平台的一种。它拥有功能强大服务器端控件结构和面向事件对象的编程模型,便捷高效的开发复杂的Web应用,是开发动态网页的有效工具。SQL Server2005数据为关系型数据和结构化数据提供了安全级别更高的存储功能,它具有易管理、可用性强、可伸缩性、安全性等特点。它是一个全面的数据库平台,是当下主要应用的数据库访问技术。

2 需求分析

需求是指用户和开发者二者共同的要求,即系统的外部行为和内部特性。用户、系统分析人员通过协商,确立双方的需求。在线考试系统的功能应满足考生和管理员两方面的需求。具体来说其功能需要包括用户注册及其信息的管理、试题库管理、试卷生成、监控考试过程、计算机自动阅卷、成绩查阅、主观题考试、选择科目、考生信息浏览、添加考生数据、考生数据初始、考生考试监控、题库信息浏览、添加题库建表、添加试题数据、试题后台设置、系统页面设置、密码权限设置、数据备份/还原等。

在线考试系统作为一种可远程操控的Web应用程序,应具有简洁、友好、交互性强的界面,其系统性能需求包括安全性、实用性、可靠性、系统的简单易用性、扩展性。实用性是指满足一般题型的需要,可靠性包括软件和硬件的可靠程度,不应发生数据丢失的情况。安全性是指考试过程在非正常情况下中断,可快速恢复考试,减少数据的丢失,同时对人为的恶意破坏有抵御能力。在线考试系统应方便教师和考生的使用,简单易用,尤其是使考生通过参加简单的培训,便能顺利进行考试。

3 系统的设计与实现

3.1 系统的总体设计与实现

在线考试系统主要功能包括网上考试、系统管理。系统的整体架构包括数据库、数据库访问层和业务逻辑层。整体系统的最底层是数据库,系统的所有数据都储存在其中。建立在数据库之上的是数据访问层,该层是数据库和业务逻辑层的联接体。该层一般封装于数据库的操作之中,而且为上层提供接口或函数等。题库的创建、用户的管理和注册等逻辑业务均属于业务逻辑层,功能的实现一般是基于Web页面技术。在线考试系统的功能模块包括角色管理、用户注册、用户管理、题库管理、在线答题、成绩管理及查询、系统管理。

在线考试系统的数据库设计主要依托于SQL Server技术,用户表是整个数据库系统的核心表,与角色表、考生表、试卷表均相关,影响其它表的字段和类型。数据库的逻辑架构完成之后,还需要编译一个有效的、可实现过程的代码。

3.2 系统的模块技术与实现

为实现系统的多种具体功能,需要设计多种模块。但不同的模块间还有通用类,如数据库通用类。基本通用类设计包括异常处理类(My Exception)、字符串处理类、数据库通用类设计,其中数据库通用类设计是利用SQL Helper来封装某些基础属性和函数。数据访问类的设计直接关系到整体系统设计的质量,影响整个系统的成败[4]。

用户登录模块的设计应包括考生、教师、管理员等功能不同的登陆界面,以区分不同使用者的权限。用户管理及权限模块,首先是管理员对教师、学生信息的管理权限,可添加或删除教师及考生的信息,然后是教师对学生的考试信息具有修改的权限,应具有录入、修改、查询等界面。

题库设计模块,管理员(包括教师)可以对题库进行修改和完善,并对考务信息进行管理。该模块主要包括如下功能:试题管理、题型管理、试卷的管理。试题管理是该模块的核心,包括录入、修改、存储、设置分值、难度系数等管理工作。题型管理确保题型主要为标准化类型,方便后续的阅卷活动。试卷管理是由教师实现的,教师设置每套试卷的标准,包括分值、难度系数等。在线答题模块功能是从试题库中抽题,动态随机生成难度系数相同的试卷。成绩管理模块,首先系统根据答案设置,自动判卷,并可以供教师查看成绩,进行相关的试卷分析。

参考文献

[1]兰慧.谈B/S软件超越C/S软件的优势[J].包钢科技,2005,31(2):58.

[2]刘丰.在线考试系统的设计与研究[D].北京师范大学硕士学位论文,2000:13-14.

上一篇:轧机冷却供水自动控制系统设计 下一篇:风光互补路灯在大型科技园区的应用研究