四、系统设计
1.系统总体设计
系统中的主要概念有题库、题型、试题、试卷、考场和考生。因此,系统的主要构成也就从这几个方面着手设计。
系统的功能结构如图1-1所示。
图1-1 系统功能模块结构框图
创建试题库的意义在于根据科目创建试题,这样方便将不同科目的试题进行分类存储,有益于查找、使用等操作。
然后分析试题的类型,实际生活中有这几种,如:单选、判断、多选、填空、问答。前4种题型是可以通过判断自动打分的,后一种题型只能通过人工阅卷。
试题选项和答案以Json的形式保存在试题表中,主要考虑到这些选项并不常用,也很少有关于选项的查询,所以试题表不需要多余的选项表,试题在编辑和浏览操作时可以反序列化Json内容。最重要的是,当生成试卷时这些选项Json复制起来相当方便,这样可避免当试卷生成以后,试题被修改造成试卷逻辑混乱。
考场就和日常生活所分配的各种考试考场是一样的,系统的操作流程也遵循考场实际规则。
考生是参与考试的主体,考生通过后台添加或者导入的方式进入系统。考生有两种方式参加考试和练习。
2.设计思想
该系统采用浏览器/服务器架构(Browser/Server架构,B/S架构),能够实现客户端“零维护”。系统服务端底层基于SpeedPHP框架,用户展现层采用先进的AJax异步通信和浏览器脚本技术,页面和后台执行数据交互操作时无刷新,使浏览器的用户界面体验非常接近桌面应用程序的水平,AJax技术代表了Web应用系统的发展趋势。
B/S结构的在线考试系统作为一种以专业题库为依托,以计算机网络技术为手段,以数据库为基础的,以浏览器为客户端的新型无纸化考试方式。考试业务没有本质的变化,仍然是出题、组织考试、考试、判卷、统计分析,但是考试方式产生了颠覆性的变化,使我们无论身处何地,在一个相对宽裕的时间段内,只要能接入互联网,就可以在线参加考试,无须千里奔波,无须担心考试迟到,还节省了考试费用。通过应用系统升级和扩展,在线考试系统还可以承担诸如在线学习和培训、根据考试结果进行绩效考核等附加任务。
3.系统运行环境
从技术上进行分析,高可靠的系统应该兼顾到数据安全性、系统兼容性、系统易用性,同时考虑网络跨平台性和数据集中管理等。
本系统采用B/S架构,只需配置数据库服务器和Web服务器。客户通过浏览器就可访问服务器,客户经过简单的培训就可进行操作。系统运行环境要求如下。
(1)服务器配置,见表1-1。
表1-1 服务器端配置表
(2)客户端配置,见表1-2。
表1-2 客户端配置表
4.系统主要部分数据库设计
系统所需各数据库结构见表1-3~表1-9。
表1-3 用户组信息表my_user_groups
表1-4 权限控制信息表my_user_acl
表1-5 用户信息表my_user
表1-6 学生信息表my_student
表1-7 试题信息表my_test_main
表1-8 试卷基础信息表my_test_paper_base
表1-9 考生答题信息表my_exam_user