在线考试系统的设计与实现

2017-04-27 10:41刘美鹇
电脑知识与技术 2016年29期

刘美鹇

摘要:该文所介绍的在线考试系统采用C/S模式构建,使用Java作为开发语言、SQL Server2008作为后台数据库,并利用Eclipse作为开发环境完成系统的实现。按照软件工程方法,对系统进行了需求分析,逐步给出系统的用例图,并进行系统的总体设计和具体实现。通过在线考试系统实现了无纸化考试,提高了考试工作的效率,避免了传统考试中的不足。

关键词:在线考试系统;数据库;C/S模式

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)29-0096-03

1背景

随着信息技术的飞速发展以及计算机网络的普及,网络考试逐渐成为对学生学习情况考核的一种便捷方式。目前学校与社会上的各种考试大都还采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤:即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情。

网络在线考试系统极大地提高了考试的便捷性,现在在许多领域已经有了广泛的应用。最有影响的案例就是ETS(美国教育考试中心)舉办的GRE(美国研究生入学考试)的计算机化考试,它使考试由原来的每年只能有两次参加考试的机会变成了每个工作日都可以参加的考试。国内典型的有由教育部考试中心主办的全国计算机等级考试、各省的非计算机专业大学生水平考试,还有用于教考分离的各种题库等。因此,在当前各高校中实现一套完善的在线考试系统,对于学校、教师以及学生都将受益。

2系统需求分析

2.1功能需求

根据高校考试的具体需求,本文所介绍的在线考试系统具有考生信息维护、考场设置、分配座次、试题信息维护、试题模板设置、组卷、考场监控、自动评分以及学生答题等功能。通过对需求进行具体分析,进一步确定了系统中包含“考务人员”、“监考人员”、“考生”、“系统管理人员”和“考试系统”5个角色以及“组卷”、“分配考场”等27个用例,用例如图1所示,该用例图刻画了业务活动中的各个角色以及他们在业务活动中的关系。

3系统设计

3.1系统功能模块

本文所实现的在线考试系统主要分考务人员管理模块、监考人员管理模块和考生模块,三个模块的功能结构分别如图2一图4所示。

3.2系统业务流程分析

本系统主要由考务人员、监考人员、考生以及系统管理员组成。考务人员主要负责考务管理,即:

1)首先完成对试题信息的维护,然后设定试题模板,确定试题内每种题型的数量、分值及生成试题的套数,最后通过系统生成试题;

2)根据考生信息和考场信息,为每个考生分配考场及座次,发放考试通知单;

3)查询、打印考生的成绩单。

考务人员业务流程如图5所示。

监考人员主要负责考场管理,即:

1)启动发放试卷程序,由机器随机向每位考生发放一套试题;

2)发放开考指令,使考生可以由客户端登录考试;

3)进行考场监控,记录考场报告;

4)考试结束发放结束考试指令,强行结束所有考试;

5)发出自动评分指令,由机器自动完成评分工作。

监考人员业务流程如图6所示。

考生主要完成考试任务,即:

1)客户端登录,完成考生身份验证;

2)答题;

3)交卷。

考生业务流程如图7所示。

3.3数据库设计

本系统所涉及实体包括考生、班级、部门、试卷、试题、试题模板、考场、座次、违纪、成绩、用户、选择题、判断题以及程序设计题等。采用实体关系图来描述实体的概念模型并建立数据表包括考生表、班级表、部门表、试卷表、试题表、试题模板表、考场表、座次表、违纪表、成绩表、用户表选择题表、判断题表以及程序设计题表等,本系统的数据逻辑模型如图8所示。

3.4系统类图分析

根据图8中的实体及实体之间的关系,设计了在线考试系统所涉及的所有类,系统类图如图9所示。

5系统实现

本系统采用Java作为开发语言、SQL Server 2008作为后台数据库,并利用Eclipse开发环境实现,主要分为服务器端和客户端程序,服务器端程序主要提供菜单操作和图形界面操作,完成系统各项功能,服务器端程序主控界面如图10所示。当用户单击主界面上对应图标时,则在下方信息栏产生下级图标,供用户选择完成相应功能。

客户端程序主要功能为考生可以通过菜单选择进行考试,考试主窗口如图11所示。

6结束语

本文所实现的在线考试系统为使用者提供了丰富的操作功能,实现了考试的自动化,从而大幅度地降低了考试工作的难度,减少了大量的手工操作可能引起的操作失误,提高了考试工作的效率,推动了考试信息化建设。后期,将进一步完善该系统的功能,如增加自动批卷等功能,从而真正为学校、教师、学生的考试带来更多便利。