《数据库原理及应用》在线考试系统的设计
2016-05-19韩笑章伟刘振源
韩笑++章伟++刘振源
摘要:随着互联网技术的飞速发展,传统考试的诸多弊端日益突出,基于网络的在线考试是网络技术和教育信息化发展的必然趋势。《数据库原理及应用》在线考试系统以解决传统考试过程中的工作量大、效率低、资源浪费等问题为目的,采用B/S架构设计,是一个典型的基于教师、学生、管理员三类用户的信息管理系统。
关键词: 在线考试系统;设计; B/S; 需求分析; 数据库设计
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)07-0113-03
1 概述
随着互联网技术、多计算机技术的飞速发展,网络技术、多媒体技术、计算机技术等在现代教育领域大范围普及,教育方式正面临着一场巨大的变革。传统的考试的诸多弊端日益突出,例如考试效率不高、缺乏公平性、试题再利用性差、保密性低、成本较高等,使得传统考试很难与新的教育方式接轨,线上考试应运而生。作为一种适应时代的新型的考试方式,在线考试解决传统考试过程中的工作量大、效率低、资源浪费等问题,越来越多的高等院校考试已经选择了采取线上考核的形式[1]。
基于网络的在线考试是网络技术和教育信息化发展的必然趋势。在线考试系统使考试管理工作更加规范化、信息化与自动化,不仅减轻教师的工作负担,而且提升考试管理水平与工作效率[2]。
在线考试系统的实现可以避免传统考试方式中的一些缺陷。首先,节约了教学成本,在线考试系统无需印刷上的费用,工作人员需求量相对减少,节约大量人力、物力[3];其次,计算机自动从卷库中抽取试卷、批阅试卷,减轻教师负担,提高管理效率[4]。最后,考试批阅由计算机完成,避免教师批阅过程中的主观影响,提高了考试成绩的准确性和公平性[5]。总之。在线考试系统在实际应用中具有重要的实践意义。
基于《数据库原理及应用》课程的在线考试系统实现基于教师、学生、管理员三类用户的个人信息管理、考试资格管理、考试管理、批阅试卷、成绩管理等功能。
2 系统需求分析
2.1 功能需求
《数据库原理及应用》课程考试仅涉及单选题、判断题和主观题,为了便于学生考试的管理及老师统计分析考试结果,急需将考试由线下模式转化为线上考试。软件实现了学生随机抽取某套试卷进行《数据库原理及应用》课程的考试,提交试卷后立刻反馈客观题考试成绩,教师评阅完主观题之后,得到学生考试总成绩及考试结果统计分析等功能[6]。具体功能如下:
登录验证:系统根据用户登录的账户、密码和用户身份验证用户状态;
个人信息修改:用户根据自身情况修改个人信息;
密码修改:用户根据自身情况修改个人密码;
参加考试:用户登录系统,抽取试卷,参加考试;
提交试卷:参加考试后,提交试卷,得到客观成绩;
查看成绩:用户查看考试成绩;
批阅主观试卷:老师选择学生,给出主观题得分;
查看试卷分析:系统通过分析学生成绩得到成绩分析图;
创建学生用户: 管理员导入EXCEL表;
审核考试资格: 管理员修改考生考试权限;
开通补考权限: 管理员审批补考学生权限。
2.2 性能需求
在线考试系统主要功能是实现学生在线考试,所以对系统的速度、负载、容量、实时性都有相应的要求。系统自动生成报表时间需小于10s,更新数据库时间平均小于1s;系统在100个用户并发访问时90%的时间能正常工作,允许500M以上的并发数据流量;数据库的每个表单能存储10万条记录,服务器能存储100G的文件,并且系统必须及时更新数据库。
2.3 质量属性
在线考试系统需要满足用户所有的需求功能完备,符合法定的相关标准、协议、规则,并且系统需要易于维护、修改、剔除缺陷,及时给用户反馈结果。系统界面简洁明了,用户可以短时间内学会该软件,在崩溃时可以自动保存数据,因软件缺陷而导致的故障频率比较低[7]。
2.4 对外接口
在线考试系统对外接口提出了基本要求,外观要求界面操作简单、方便、美观、一致;实用灵活,系统操作快捷、按用户操作习惯。
3 系统设计
3.1 功能模块设计
《数据库原理及应用》课程在线考试系统包括系统登录、个人信息管理、考试资格管理、考试管理、批阅试卷、成绩管理等功能。系统共包括三种身份用户,管理员账户是系统自动分配的,系统不提供注册功能。
管理员主要实现审核学生考试信息、查看成绩、创建学生账户、创建教师账户、对学生信息增删改查、查看成绩报表、增删改查教师信息等功能。
教师具有管理个人信息、批阅学生主观题试卷、查看成绩等功能。
具体功能模块划分如下图所示:
3.2 数据库设计
3.2.1 数据库概念模型设计
系统共包括三种身份用户:管理员、教师、学生,包括管理员表、学生表、教师表、单选题表、课程表、判断题表、主观题表、成绩表、审核结果表等9张表。数据库每一个关系都满足3NF,具体如下:
管理员表(管理员编号、管理员姓名、管理员登录密码);
教师表(教师编号、教师姓名、教师登录密码);
学生表(学生学号、学生姓名、学生性别、学生年级、学生登录密码、学生审核结果);
课程表(课程编号、课程名称、课程教师编号、考试时间);
单选表(单选题序号、题目内容、A选项、B选项、C选项、D选项、正确答案、试卷编号);
判断题表(判断题序号、题目内容、正确答案、试卷编号);
主观题表(主观题序号、题目内容、试卷编号);
成绩表(序号、学生学号、课程编号、学生单选答案、单选得分、学生判断题答案、判断题得分、学生主观题第一题答案、主观题第一题得分、学生主观题第二题答案、主观题第二题得分、学生主观题第三题答案、主观题第三题得分、学生主观题第四题答案、主观题第四题得分、学生主观题第五题答案、主观题第五题得分、学生主观题第六题答案、主观题第六题得分、学生主观题第七题答案、主观题第七题得分、学生主观题第八题答案、主观题第八题得分、学生主观题第九题答案、主观题第九题得分、学生主观题第十题答案、主观题第十题得分、客观题得分、主观题得分、总成绩);
审核表(编号、学生学号、学生姓名、学生专业、学生年级、课程名称、授课教师姓名、学生审核结果)。
数据库概念模型设计如图2数据库概念模型图所示:
3.3 技术路线及关键技术
系统采用B/S架构(Browser/Server,浏览器/服务器模式)设计,避免了客户端的安装,直接在有互联网的情况下可以访问系统页面[8]。系统基于.NET的标准三层架构模式,三层分别为:数据访问层、业务逻辑层、视图层即表示层。
数据访问层封装了对数据库中原始数据的一些操作,根据业务逻辑层的需求制定相应的SQL语句,返回数据库中的值或将数据存入数据库,例如对数据的增加、删除、修改、查询等。业务逻辑层主要是对程序接收的数据进行相应的处理,针对数据访问层进行操作,来完成一系列的功能,基本上所有的用户命令由这一层通过调用数据访问层的方法来实现。表示层为面向用户的部分,可以是web方式也可以是WinForm方式,其为面向用户的部分,为用户提供交互式的界面,用来接收用户的请求并显示返回的数据给用户。具体系统架构如下图3系统体系架构所示。
《数据库原理及应用》在线考试系统关键技术:利用CSS3提供的多媒体查询功能使页面实现自适应屏幕,可在多个终端上使用该系统;使用动态生成图片的技术生成验证码;文件下载采用二进制流式下载;信息查询采用动态数据库绑定技术;为方便页面统一规划采用母版页、TreeView控件的形式;动态引用JavaScript生成日历,方便教师选择考试时间。
4 总结
本文针对《数据库原理及应用》在线考试系统做了详细设计,分析了在线考试系统的意义,介绍了系统需求,明确了系统所需实现的功能,提出了系统整体解决方案,完善了数据库设计。以《数据库原理及应用》在线考试系统为例,对在线考试系统的设计提供了参考价值。
参考文献:
[1]储可可.安庆职业学院网络考试系统的设计与实现[D]. 大连: 大连理工大学,2014.
[2]刘洪江.在线考试系统的数据库设计与实现[J].电脑知识与技术,2012(3):508-511.
[3]杨露,朱诚,叶勇.基于B/S模式的无纸化考试系统研究[J].实验科学与技术,2011(3):62-63+142.
[4]董红影.程序设计在线练习与考试系统的设计与实现[D].广州:中山大学,2014.
[5]王瑞.网上评卷与自学考试信息化建设——以甘肃省为例[J].中国考试,2014(5):46-51.
[6]何员子.在线考试系统的需求分析和总体设计[J].电脑知识与技术,2015(32):49-51.
[7]禄柳.基于WEB的试题库组题策略的研究与实现[D].大庆: 东北石油大学,2013.
[8]李晓慧.asp.net三层架构体系的分析与应用[J].计算机光盘软件与应用,2012(18):221-222.