论文部分内容阅读
摘 要:基于网络的考试系统以其考试组织严格可信、考试结果分析科学合理、考试成本低、考试效率高等优势被各类学校所重视,本文就笔者所在单位的网上考试系统的设计与实现中涉及的开发技术选择、总体设计、数据库设计以及详细设计中的关键问题予以阐述。
关键词:网上考试系统;总体设计;数据库设计;详细设计
中图分类号:G434 文献标识码:A
The Design and Realization of the On-Line Examination System Based on Web
ZHUMing
(Nanjing college of chemical technology,Jiangsu Nanjing210048)
Key words: On-Line Examination System;whole design scheme ;data-base design
网上考试系统是指采用现代信息技术替代人类进行手工出卷、发卷、身份验证、监考、收卷、阅卷、统分和试卷分析等过程。网上考试的实施正以其考试组织更加严格可信、考试结果的分析更加科学合理、考试成本更低、考试效率更高等人工组织考试无可比拟的优势越来越为各类学校所重视。
笔者所在学院校园网经过了十年的发展,目前已建成主干为千兆、百兆到桌面的快速以太网络,网络中基于Web的应用系统也越来越多,考虑目前学院在网络方面的应用现状,结合学院在网络考试方面的实际需求,笔者与同事共同研究开发出了一套基于Web环境的通用网上考试系统,并已投入试运行。从运行效果来看,网上考试系统在很大程度上提高了学院在考试组织和考务管理方面的工作效率和工作质量,降低了学院开销,把教师从机械、繁重的考务管理工作中解放出来,基本达到了预期的效果。本文重点就考试系统的技术选择、总体设计、数据库设计、系统的详细设计与实现等涉及的关键性问题予以重点阐述。
1 系统实现的关键技术选择
(1)B-S网络运行模式的选择。基于Web技术的B-S模式采用了三层体系结构即:用户界面层/业务逻辑层/数据库层,这种结构具有更好的安全性和更高的效率,已经成为当今网络考试系统的主流模式,因此考虑在题库考试系统开发时使用B-S网络运行模式。
(2)ASP服务器前台开发工具的选择。ASP提供了强大的Web应用程序开发能力,可以通过ADO组件提供的接口方便地访问数据库,同时兼考虑开发人员对开发工具的熟悉程度,最终选择了ASP作为服务器的前台开发工具,调试环境为Windows XP/2000 Server,IIS 5.1,IE 6.0。
(3)SQL Server后台数据库的选择。SQL Server具有强大的数据管理与处理能力、具有较高的安全性能、支持远程存取等,同时可做到与ASP前台开发工具的无缝连接,符合考试系统的需求,因此选择SQL Server 2000作为服务器的后台数据库。
(4)客户端通过浏览器实现考试全过程,客户端做到零安装,减少系统升级、更新的工作量,同时方便进行远程系统维护和管理。
2 系统总体设计
结合现有校园网条件及学院在网络考试上的需求,本系统在功能设计上考虑了如下几个因素:
(1)系统可适用于不同院校、不同专业、不同单位、不同地点的考生通过Internet或局域网进行多门课程的在线考试。
(2)系统具备强大的组卷功能,同时组卷系统和考试系统紧密结合,系统中每一道试题不仅进行题型、分值的设置,还进行难易度、区分度以及其它的设置。从根本上解决试题难易程度不一致导致试卷难易程度不一致的现象;考试时可实现随机试卷、固定试卷、指定试卷考试。
(3)系统具备强大而方便的管理功能。能提供分类查询、分类打印、分类删除等功能;系统可以通过远程管理,具有较好的安全性与稳定性;考题能批量录入、批量编辑,也能单个添加、修改、删除考题。
基于以上的考虑,在设计网上考试系统时,将系统按功能分成了系统登录、系统管理、试题管理、试卷生成、新闻发布、学生考试六大功能模块,功能模块详见图1。
3 系统数据库设计
数据库技术在数据的存储、维护、检索、分类、统计等诸多方面具有强大的功能。本考试系统中的试题、答案、考生信息等均存放在Microsoft SQL Server 2000数据库中,系统设计中,对考试系统涉及的数据库的概念设计、数据库的逻辑设计和数据库的物理设计等方面进行了详细分析。在需求分析的基础上,首先确定了系统的数据流图,如图2所示。
在数据流图基础上,确定了系统各E-R图,在系统各E-R图基础上,确定了该系统的概念模型图,如图3所示。
在概念模型分析基础上,最终确定了系统所涉及的各项数据表。各数据表如下所示:
●教师信息表(teacher_info)
●考生信息表(stu_info)
●考试科目表(exam_subject)
●判断题信息表(Judge_database)
●单选题信息表(Single_database)
●多选题信息表(Multi_database)
●考试信息表(exam_test)
●待审核项目表(waitforpass)
●考试成绩表(exam_score)
●考试新闻表(exam_news)
●新闻登录记录表(exam_news_logs)
4 系统详细设计
根据用户总体设计目标的要求,最终进行了代码的设计并实现系统。本论文中简要描述在系统详细设计中的两个关键性问题——对用户安全的考虑及试卷组卷的考虑的解决方法。
4.1对用户安全的考虑
(1)确定系统四类角色
系统设计的一个关键是对系统中出现的各类用户授权管理的考虑。在系统中涉及到管理员、领导、教师、学生四种角色。系统需要详细分析各类角色的关系并对角色进行授权。系统中出现的各类角色关系如图4所示。
图中,对各类账户的添加与管理授权以及对题库里试题的增、删、改等操作必须由管理员来完成;教师负责录入和查询试题,负责组卷和评价试卷工作,同时能查阅学生的考试成绩;领导负责审核教师录入的试题,审核通过则试题有效,在题库中可能使用,不通过则试题无效(无效试题由管理员负责删除),同时也负责审核教师的组卷工作,教师组卷设置合理则通过,不合理则作废(作废试卷由管理员负责删除);试卷通过审核,学生在规定的时间内进行考试,考试结束后将结果提交给系统进行判卷,得出成绩送往成绩库以供老师查阅。
(2)使用MD5加密算法确保用户密码安全
对系统用户密码安全的考虑主要在登录模块设计中实现。登录模块设计时主要用于检测用户是否属于考生或教师,教师中还应判断是否为普通教师、领导或是管理员。为确保用户密码安全,系统在设计时除固有的SQL Server密码保护外,还考虑使用MD5加密算法来保护数据库中的用户密码和密码问题答案等重要数据。以下列出部分代码:
'采用MD5加密,引入MD5文件
<%
userid=request("userid")
pwd=md5(request("pwd"))
'密码字段采用MD5加密后存入相关数据字段
kind=request("kind")
'接收表单信息
sql="select * from cadre_info where userid='"&userid&"' and pwd='"&pwd&"'"
'将用户输入的密码通过MD5加密后与数据库中已存密码进行比对
4.2试卷管理模块的实现
试卷管理模块是系统核心模块之一,系统在设计时考虑组卷按随机、固定、自定义组卷三种方式进行。
随机考试组卷:同一门课程在考试时,每位考生通过系统自动生成的试卷进行考试,每位考生的试卷内容相同,但顺序有所不同。
固定考试组卷:由教师事先设置好知识点参数,考生在考试时通过系统生成统一的试卷进行考试。
自定义考试组卷:不考虑知识点参数的设置,考生在考试时通过系统生成统一的试卷进行考试。
随机、固定、自定义组卷在生前试卷前均有诸如试卷难易度、区分度、题型、考试时间、试卷审核人等参数的设置。图5.14显示了在考试组卷时最关键的总体参数设置步骤。
以上笔者就网络考试系统的设计与实现的过程作了较为详细的描述。从动行与测试结果来看,该系统具有较强的实用性,基本达到了预期的目标,但还存在着诸如对考试意外的应变能力不强、未能考虑对主观题的处理以及对试卷结果的分析能力有待提高等问题,这些都将是在系统的后期升级开发中重点需要解决的问题。
参考文献:
[1]王轶,林家薇.远程教育考试系统设计的方法研究[J].教育信息化.2004(1):63-64.
[2]高仁才.基于ASP的网络考试系统的设计与实现[D].工程硕士论文.吉林大学.2007.12.
[3]邓文渊.ASP与网络数据库技术[M].中国铁道出版社,2001.5
[4]盛志伟,刘仕药.基于Web的网络考试系统的设计与实现[J].计算机与现代化,2005(7).58-61.
关键词:网上考试系统;总体设计;数据库设计;详细设计
中图分类号:G434 文献标识码:A
The Design and Realization of the On-Line Examination System Based on Web
ZHUMing
(Nanjing college of chemical technology,Jiangsu Nanjing210048)
Key words: On-Line Examination System;whole design scheme ;data-base design
网上考试系统是指采用现代信息技术替代人类进行手工出卷、发卷、身份验证、监考、收卷、阅卷、统分和试卷分析等过程。网上考试的实施正以其考试组织更加严格可信、考试结果的分析更加科学合理、考试成本更低、考试效率更高等人工组织考试无可比拟的优势越来越为各类学校所重视。
笔者所在学院校园网经过了十年的发展,目前已建成主干为千兆、百兆到桌面的快速以太网络,网络中基于Web的应用系统也越来越多,考虑目前学院在网络方面的应用现状,结合学院在网络考试方面的实际需求,笔者与同事共同研究开发出了一套基于Web环境的通用网上考试系统,并已投入试运行。从运行效果来看,网上考试系统在很大程度上提高了学院在考试组织和考务管理方面的工作效率和工作质量,降低了学院开销,把教师从机械、繁重的考务管理工作中解放出来,基本达到了预期的效果。本文重点就考试系统的技术选择、总体设计、数据库设计、系统的详细设计与实现等涉及的关键性问题予以重点阐述。
1 系统实现的关键技术选择
(1)B-S网络运行模式的选择。基于Web技术的B-S模式采用了三层体系结构即:用户界面层/业务逻辑层/数据库层,这种结构具有更好的安全性和更高的效率,已经成为当今网络考试系统的主流模式,因此考虑在题库考试系统开发时使用B-S网络运行模式。
(2)ASP服务器前台开发工具的选择。ASP提供了强大的Web应用程序开发能力,可以通过ADO组件提供的接口方便地访问数据库,同时兼考虑开发人员对开发工具的熟悉程度,最终选择了ASP作为服务器的前台开发工具,调试环境为Windows XP/2000 Server,IIS 5.1,IE 6.0。
(3)SQL Server后台数据库的选择。SQL Server具有强大的数据管理与处理能力、具有较高的安全性能、支持远程存取等,同时可做到与ASP前台开发工具的无缝连接,符合考试系统的需求,因此选择SQL Server 2000作为服务器的后台数据库。
(4)客户端通过浏览器实现考试全过程,客户端做到零安装,减少系统升级、更新的工作量,同时方便进行远程系统维护和管理。
2 系统总体设计
结合现有校园网条件及学院在网络考试上的需求,本系统在功能设计上考虑了如下几个因素:
(1)系统可适用于不同院校、不同专业、不同单位、不同地点的考生通过Internet或局域网进行多门课程的在线考试。
(2)系统具备强大的组卷功能,同时组卷系统和考试系统紧密结合,系统中每一道试题不仅进行题型、分值的设置,还进行难易度、区分度以及其它的设置。从根本上解决试题难易程度不一致导致试卷难易程度不一致的现象;考试时可实现随机试卷、固定试卷、指定试卷考试。
(3)系统具备强大而方便的管理功能。能提供分类查询、分类打印、分类删除等功能;系统可以通过远程管理,具有较好的安全性与稳定性;考题能批量录入、批量编辑,也能单个添加、修改、删除考题。
基于以上的考虑,在设计网上考试系统时,将系统按功能分成了系统登录、系统管理、试题管理、试卷生成、新闻发布、学生考试六大功能模块,功能模块详见图1。
3 系统数据库设计
数据库技术在数据的存储、维护、检索、分类、统计等诸多方面具有强大的功能。本考试系统中的试题、答案、考生信息等均存放在Microsoft SQL Server 2000数据库中,系统设计中,对考试系统涉及的数据库的概念设计、数据库的逻辑设计和数据库的物理设计等方面进行了详细分析。在需求分析的基础上,首先确定了系统的数据流图,如图2所示。
在数据流图基础上,确定了系统各E-R图,在系统各E-R图基础上,确定了该系统的概念模型图,如图3所示。
在概念模型分析基础上,最终确定了系统所涉及的各项数据表。各数据表如下所示:
●教师信息表(teacher_info)
●考生信息表(stu_info)
●考试科目表(exam_subject)
●判断题信息表(Judge_database)
●单选题信息表(Single_database)
●多选题信息表(Multi_database)
●考试信息表(exam_test)
●待审核项目表(waitforpass)
●考试成绩表(exam_score)
●考试新闻表(exam_news)
●新闻登录记录表(exam_news_logs)
4 系统详细设计
根据用户总体设计目标的要求,最终进行了代码的设计并实现系统。本论文中简要描述在系统详细设计中的两个关键性问题——对用户安全的考虑及试卷组卷的考虑的解决方法。
4.1对用户安全的考虑
(1)确定系统四类角色
系统设计的一个关键是对系统中出现的各类用户授权管理的考虑。在系统中涉及到管理员、领导、教师、学生四种角色。系统需要详细分析各类角色的关系并对角色进行授权。系统中出现的各类角色关系如图4所示。
图中,对各类账户的添加与管理授权以及对题库里试题的增、删、改等操作必须由管理员来完成;教师负责录入和查询试题,负责组卷和评价试卷工作,同时能查阅学生的考试成绩;领导负责审核教师录入的试题,审核通过则试题有效,在题库中可能使用,不通过则试题无效(无效试题由管理员负责删除),同时也负责审核教师的组卷工作,教师组卷设置合理则通过,不合理则作废(作废试卷由管理员负责删除);试卷通过审核,学生在规定的时间内进行考试,考试结束后将结果提交给系统进行判卷,得出成绩送往成绩库以供老师查阅。
(2)使用MD5加密算法确保用户密码安全
对系统用户密码安全的考虑主要在登录模块设计中实现。登录模块设计时主要用于检测用户是否属于考生或教师,教师中还应判断是否为普通教师、领导或是管理员。为确保用户密码安全,系统在设计时除固有的SQL Server密码保护外,还考虑使用MD5加密算法来保护数据库中的用户密码和密码问题答案等重要数据。以下列出部分代码:
'采用MD5加密,引入MD5文件
<%
userid=request("userid")
pwd=md5(request("pwd"))
'密码字段采用MD5加密后存入相关数据字段
kind=request("kind")
'接收表单信息
sql="select * from cadre_info where userid='"&userid&"' and pwd='"&pwd&"'"
'将用户输入的密码通过MD5加密后与数据库中已存密码进行比对
4.2试卷管理模块的实现
试卷管理模块是系统核心模块之一,系统在设计时考虑组卷按随机、固定、自定义组卷三种方式进行。
随机考试组卷:同一门课程在考试时,每位考生通过系统自动生成的试卷进行考试,每位考生的试卷内容相同,但顺序有所不同。
固定考试组卷:由教师事先设置好知识点参数,考生在考试时通过系统生成统一的试卷进行考试。
自定义考试组卷:不考虑知识点参数的设置,考生在考试时通过系统生成统一的试卷进行考试。
随机、固定、自定义组卷在生前试卷前均有诸如试卷难易度、区分度、题型、考试时间、试卷审核人等参数的设置。图5.14显示了在考试组卷时最关键的总体参数设置步骤。
以上笔者就网络考试系统的设计与实现的过程作了较为详细的描述。从动行与测试结果来看,该系统具有较强的实用性,基本达到了预期的目标,但还存在着诸如对考试意外的应变能力不强、未能考虑对主观题的处理以及对试卷结果的分析能力有待提高等问题,这些都将是在系统的后期升级开发中重点需要解决的问题。
参考文献:
[1]王轶,林家薇.远程教育考试系统设计的方法研究[J].教育信息化.2004(1):63-64.
[2]高仁才.基于ASP的网络考试系统的设计与实现[D].工程硕士论文.吉林大学.2007.12.
[3]邓文渊.ASP与网络数据库技术[M].中国铁道出版社,2001.5
[4]盛志伟,刘仕药.基于Web的网络考试系统的设计与实现[J].计算机与现代化,2005(7).58-61.