Design and Implementation of Examination Schedule in Examination Management System
CHENG Wen-ming
(College of Economics and Management Yunnan Agricultural University, Kunming 650201)
Abstract:
Examination management is the important part of school examination management, need to face plenty of student informations , will waste plenty of manpower, material resources and time with artificial handling, and the accuracy of data lows. Therefore to make examination be engaged in industry to make the demand that meets informative process ,it is very necessary to develop a examination management system of friendly interface.After applying this system, it can be effective to raise examination level of management.
Examination programme arrangement is the key part of examination management system. It consists of four subsystems,they are the arrangement of examination classroom, arrangement of examination time, arrangement of examination teacher and automatical arrangement. The functions can meet the demands of it,the level of exam managing rapidly .
This paper has discussed demand and the background of examination management to analyse , system design and system implementation. Have introduced mainly the implementation of examination programme arrangement in examination management system that realizes scheme and has given crucial modular on this foundation algorithm, have discussed the examination arrangement in system emphatically the design ideological, implementation method of function modular , and related technology.Perfect finally and further for systematic application and have made summary.
Key words:Examination management system;Exam Programme;B/S/ DBMS;ASP
论文题目
随着[MU36] 社会的进步和计算机技术的发展,特别是微型计算的大范围普及,计算机的应用逐渐由科学计算、实时控制等方面向非数值处理的各个领域中渗透。尤其是以微型计算机为处理核心,以数据库管理系统为开发环境的管理系统在办公室自动化以及商业信息管理等方面的应用,日益受到人们的关注。本文结合软件工程的相关理论和方法,阐述了考务管理系统中考试安排的设计与实现[MU37] 。
1.1 项目背景
1.1.1 教务管理的概念和范围
教务管理是一种职业,而教务管理人员作为职业的行政管理人员应是"熟练掌握办公室技能,既有独立完成制订工作的能力,工作积极主动、具有判断力;并能在给定的权限内作决定的人。
教务管理人员在严格遵循考务管理的基本原则前提下,负责组织和实施教学计划规定的考试报名、安排考场、成绩登录等考试方面的任务。为有关部门提供考试文件、试卷征订等信息。主要功能包括:课程科目表管理、考试定义、考前处理、试卷定单管理、考试报名、考场编排、成绩登分、违纪处理、补考处理等[rzj40] 。
1.1.2 我校考务管理的现状
教务处作为一种信息资源的集散地,教师和学生的信息繁多,包含很多的信息数据管理。根据调查得知,我校已有学分制学籍管理系统,可实现排课选课、成绩等处理,但对考试安排的主要方式是基于文本、表格等手工处理,数据信息处理工作量大、容易出错、且不易查找。在监考安排方面还没有实现信息化、自动化的管理,这就是监考管理信息系统开发的基本环境。
1.1.3 项目开发的迫切性
目前随着学校招生规模的扩大,学生人数逐年增多,课程数量也随之增多。从编排考场、安排监考教师,环节多,工作量大,采用原有的人工管理方式,必然周期长,效率低,不能适应现行工作的要求。[rzj41]
基于我校考务管理的这些问题,有必要建立一个考务管理系统,使考试安排管理工作规范化,系统化,程序化,避免考试安排管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改考试安排情况。
1.1.3 开发的目的
开发一个能够为教务员提供充足的信息和快捷的考试安排手段,提高管理效率,降低管理成本,使教务员的工作科学化、系统化、正规化的考务管理系统。
1.2 系统要解决的关建问题
1.2.1 考务安排的冲突检测
考务安排冲突检测主要包括监考教师冲突(即同一个监考教师不能在同一时间内对两门课程进行监考)和考场冲突(即同一考场不能在同一时间安排两门课程进行考试)。
考务安排的冲突检测在教务员进行课程考试日程安排时进行,对课程的考场、时间、监考教师进行检测,看是否能进行安排。如果有冲突,则提示教务员该考场(时间、监考教师)已安排过。方便教务员进行课程考试安排和检查出考场、时间、监考教师冲突,有利于教务员的工作系统化,并减少失误。
1.2.2 监考教师安排的自动化
监考教师安排的自动化主要是针对每学期期未考试的所有课程,系统自动对已安排好时间和考场的课程进行监考教师的安排。如果教务员不满意系统的自动安排可对其进手动调整。
1.3 系统涉及的相关技术
1.3.1 结构化查询语言
结构化查询语言SQL(Structured Query Language[rzj42] ),是一种介于关系代数与关系演算之间的语言,其功能包括查询、操纵、定义和控制四个方面,是一个通用的功能极强的关系数据库标准语言。SQL数据库的体系结构采用的是三级模式[1]。
SQL术语与传统的关系模型术语不同。在SQL中,外模式对应于视图,模式对应于基本表,元组称为“行”,属性称为“列”。 SQL是一个非过程化的语言,它一次处理一个记录,对数据提供自动导航。它允许用户在高层的数据结构上工作,而不对单个记录进行操作,可操作记录集。
SQL可用于所有用户的DB活动模型,包括系统管理员、数据库管理员、 应用程序员、决策支持系统人员及许多其它类型的终端用户。所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RDBMS转到另一个,即所有用SQL编写的程序都是可以移植的[2]。
1.3.2 ASP( Microsoft Active Server Pages)
ASP( Microsoft Active Server Pages)是一套微软开发的服务器端脚本环境,通过 ASP 我们可以结合 HTML 网页、 ASP 指令和ActiveX 元件建立动态、交互且高效的 WEB 服务器应用程序[3]。
ASP的所有程序都将在服务器端执行,包括所有嵌在普通HTML中的脚本程序。当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。
ASP能与任何ActiveX scripting 语言相容。除了可使用VBScript 或 Jscript 语言来设计外,还通过 plug-in的方式,使用由第三方所提供的其他脚本语言,譬如 REXX 、 Perl 、Tcl 等。脚本引擎是处理脚本程序的 COM(Component Object Model) 物件。
2 系统需求分析
《考务管理系统》主要根据云南农业大学教务管理的实际情况进行设计。通过了解学校现行的监考工作流程,从校、院两级教务管理人员进行需求获取,并据此得出系统的需求分析。以下为考试安排模块的需求分析:
2.1 功能需求分析
考试管理模块主要有四个功能:考场安排、时间安排、监考教师安排、自动安排。
2.1.1考场安排的功能
考场安排功能主要用于对考场信息进行管理,实现考场安排,及时对所安排的课程进行冲突检测,以避免同一间考场在同一时间内同时安排了两门或两门以上课程。对考场进行查找、添加、删除时,要方便教务员操作,使其在最短时间内对所需考场进行安排。
2.2 时间安排的功能
时间安排功能主要用于对课程进行时间安排,并及时对所安排的课程进行冲突检测,以避免同一时间在相同的考场内同时安排了两门或两门以上课程。
2.2.1 监考教师安排的功能
监考教师安排功能主要用于管理教师信息。根据院系分类显示教师信息,方便快捷的进行监考教师的安排和冲突检测,以避免同一监考教师在同一时间内同时监考两门或两门以上课程。对监考教师进行查找、添加、删除时,要方便教务员操作,使其在最短时间内对所需监考教师进行安排。
2.2.2 自动安排功能
自动安排功能主要是为了节约教务员的时间。教务员不需要一项一项的进行考试安排,只需给出条件,系统便会根据教务员的需求对监考教师作出一个预安排。如果教务员不满意,还可以对预安排做调整。
2.3 性能需求分析
2.3.1 实用性要求
要求所需业务能实时处理,数据集中管理,充分利用系统资源
2.3.2 高效率要求
①确保每次操作数据及时传递到数据库中。
②确保每次考试安排快速准确,在技术上优先考虑系统的可靠性,保证系统具有良好的容错性。
③保证系统的功能正常。
2.3.3 先进性要求
在系统的建设中,要在有经济条件的前提下多采用适用的先进技术,以保证系统的后继建设能够顺利进行,保护系统的有效性。
2.3.4 安全性要求
考务管理系统的信息涉及学校和学生的基本信息,具有特殊性和重要性。系统应对个人基本信息有良好的安全保护措施。对于通过网络访问的用户应有完善的权限设置策略,对用户的操作进行全面的审核。通过数据库本身安全机制、系统的安全设置、严格管理等多种技术和管理手段,保证数据的使用安全。作为系统本身,最宝贵的财富就是在系统中存储的数据,应建立有效、快速的数据备份和恢复系统,保证数据的存储安全。
2.3.5 灵活性与易维护要求
在考务管理系统的设计中应充分考虑系统的灵活性和可扩展性。系统的维护都不应对系统的运行造成太大影响。
2.3.6 可扩展性要求
系统设计时,从系统的功能和结构设计都充分考虑这一需求,保证系统的扩展和维护。建设易于扩展的系统结构,保证系统的扩展和维护。
2.4 界面要求
界面友好,操作简单方便。保证用户输入数据时操作简单方便,并且在安排考试时操作简单、方便、快捷。广泛使用操作向导,使用户不必记住复杂的操作流程,就可以进行操作。
3 系统设计
3.1 系统用例图(UseCase)
系统用例如图3.1所示。
图3.1系统用例图
Fig.3.1英文
3.2 系统架构
考务管理系统采用B/S/D(Browser/WebServer浏览器/DBMS)三成构架。B/S/D结构的中间层采用Web服务器,它接受客户端的请求,将其转换为SQL语句,通过ODBC或其他手段传给数据库服务器,并将数据库服务器返回的结果用HTML文件格式传回给客户机。客户机实际上就是一个将标准语言转化为界面的解释器,应用程序安装在Web服务器上,其运行也是在这里进行。
B/S/D结构中的数据表示层比较灵活,且功能比较单一,只要接受请求并表示服务器的响应即可,不需要包含任何规则。在数据库系统中不仅可以有多种多样的客户,而且可以共享一套规则。
B/S/D结构的前台采用网页浏览器,客户机上只需安装一个浏览器(Browser),如Netscape Navigator或Internet Explorer,最多再安装很小的支持库,如JAVA或VB的动态连接库;
3.3 系统功能模块结构设计
图3.2系统功能结构设计图
Fig.3.2英文
3.4 系统数据库设计
3.4.1 数据表
数据表是SQL Server2000中最基本的数据库对象,它包含数据库中所有数据。数据在表中是按行和列的格式组织排列的,每行代表惟一的一条记录,而每列代表记录中的一个字段(或域),在表中行和列的顺序是任意的。在SQL数据库中表名是惟一的,而且同一个表中列的名称也必须是惟一的。考试安排中所用到是表如下:
表3.1监考教师表 dm_Teacher
Tab 3.1英文
字段 |
类型 |
长度 |
说明 |
JSDM |
CHAR |
5 |
教师代码 关键字 |
XM |
CHAR |
10 |
监考教师姓名 |
SEX |
CHAR |
2 |
性别 |
YXDM |
CHAR |
2 |
院系代码 |
表3.2 教室表 dm_classroom
Tab 3.1英
字段 |
类型 |
长度 |
说明 |
SID |
CHAR |
3 |
教室代码 |
续表 3.2
字段 |
类型 |
长度 |
说明 |
CNAME |
CHAR |
20 |
教室名称 |
TEST_CAPACITY |
CHAR |
4 |
考试可容纳人数 |
表3.3院系表 dm_yx
Tab 3.1英
字段 |
类型 |
长度 |
说明 |
YXDM |
CHAR |
2 |
院系代码 |
YXMC |
CHAR |
30 |
院系名称 |
PWD |
varchar |
15 |
院系教务员登录密码 |
表3.4时段表 dm_sd
Tab 3.1英
字段 |
类型 |
长度 |
说明 |
SD |
Varchar |
10 |
上午/下午 |
SJ |
Varchar |
8 |
时间(9:00-11:00) |
表3.5课程信息表 b_KB
Tab 3.1英
字段 |
类型 |
长度 |
说明 |
XKBH |
Char |
5 |
选课编号(关键字) |
KCDM |
CHAR |
7 |
课程代码 |
JXBH |
Int |
4 |
教学班号 |
KCMC |
VARCHAR |
20 |
课程名称 |
KKJS |
Varchar |
30 |
开课教师 |
RS |
Int |
4 |
选课人数 |
XB |
Varchar |
30 |
课程所属系别 |
NJ |
Int |
8 |
年级 |
RQ |
DATETIME |
|
日期 |
SD |
Varchar |
10 |
上午/下午 |
SJ |
Varchar |
20 |
时间 |
KCXX |
Varchar |
50 |
考场信息 * |
JSXX |
Varchar |
100 |
监考教师信息 * |
表3.6监考教师安排表 b_PlanClassroom
Tab 3.1英
字段 |
类型 |
长度 |
说明 |
TID |
Int |
自动编号 |
记录编号 |
XKBH |
Char |
5 |
选课编号 |
JSDM |
CHAR |
5 |
监考教师(教师代码) |
表3.7考场安排表 b_PlanClassroom
Tab 3.1英
字段 |
类型 |
长度 |
说明 |
XKBH |
Char |
5 |
选课编号 |
SID |
CHAR |
3 |
教室代码 |
3.4.2 数据视图
视图是SQL Server 2000提供的查看一个或多个表数据的另一种方法,它是定义在一个或多个基表或视图上的一系列SQL Select语句。在视图中行可视为一张表,通过视图可以查询表的数据,或修改表的数据。考试模块中所用视图如图3.3和3.4所示。.
图3.3监考教师代码_日期_时段 图3.4教室代码_日期_时段表
英文 英文
3.5 系统界面设计
3.5.1 数据显示界面
图3.5数据显示界面
英文
3.5.2 考试安排界面
图3.6 考试日程安排管理界面
英文
3.6 功能模块设计
3.6.1 冲突检测
系统中的冲突检测是指教务员在对课程进行安排时,系统会自动的对安排结果进行冲突检测,检测所安排课程的考试时间、考场、监考教师是否冲突。
冲突检测的方案:在数据库中进行冲突检测,采用表与表的对比来判断数据是否冲突,分别用已安排与未安排两种方式来显示数据,方便教务员进行安排。
冲突检测算法:(以监考教师安排为例)如图3.7。
S1:建立表b_KB与表b_PlanTeacher的视图v_js_rq_sd
S2:以监考教师代码(jsdm)为判断条件,如果jsdm不在监考监考教师安排表和视图中,则执行S3;否则执行S4
S3: 监考教师列表框中显示已安排监考教师名单
S4: 监考教师列表框中显示可安排监考教师名单
S5:选择要安排的监考教师
S6: 添加监考教师到b_KB
3.6.2 自动安排监考教师
系统根据用户指定的考试时间范围,从数据库中查找出已安排好考试教室的课程,然后根据考场的多少和考场容量来安排适当数量的监考教师。如每间小教室安排两名监考教师;大教室安排三名监考教师。自动安排监考教师算法如下:
S1:按院系显示监考教师名单,即各院只对本院教师进行监考安排;
S2:监考教师一般只在本院监考;
S3:
按考试教室的间数及教室容量选择监考教师;
图3.8 监考教师数据流图
英文
4 系统实现
4.1 用iframe实现考场、监考教师的安排
Iframe标记,又叫浮动帧标记,是框架的一种形式。你可以用它将一个HTML文档嵌入在一个HTML中显示。它不同于Frame标记最大的特征即这个标记所引用 的HTML文件不是与另外的HTML文件相互独立显示,而是可以直接嵌入在一个HTML文件中,与这个HTML文件内容相互融合,成为一个整体,另外,还可以多次在一个页面内显示同一内容,而不必重复写内容。
监考教师安排中的iframe代码如:
<iframe frameborder=0 src='TeacherList.asp?yxdm=01' width=100% height=100% name=teacher></iframe>[rzj58]
src:文件的路径,既可是HTML文件,也可以是文本、ASP等;
width、height:"画中画"区域的宽与高;
scrolling:当SRC的指定的HTML文件在指定的区域不显不完时,滚动选项,如果设置为NO,则不出现滚动条;如为Auto:则自动出现滚动条;如为Yes,则显示;
FrameBorder:区域边框的宽度,为了让'画中画'与邻近的内容相融合,常设置为0。
4.2 自动安排的实现
监考教师自动安排算法:
S1:教务员选择参与自动安排课程的考试时间;
S2:系统根据用户设定的考试时间范围查找出满足条件的课程;
S3:教务员可根据需要设置参加自动安排的监考教师名单;
S4:根据考场多少和考场容量计算出所需监考教师的数量;
S5:根据计算和冲突检测结果,查找出满足条件的监考教师,并对其进行预安排,并把结果写在预安排表中;
S6:教务员对预安排进行审核。如果满意系统预安排结果,确认后数据将存入数据库;否则教务员可根据需要对预安排结果进行修改。
5 结束语
经过三个多月的设计和开发,考务管理系统基本开发完毕。其功能基本符合用户需求,能够完成学生考试安排。并提供部分系统维护功能,使用户方便进行数据备份和恢复、数据删除。该应用系统已通过经贸院教学办试运行,基本可以替代人工的部分工作,具有较好的应用价值,实现了预定的设计目标。但是该系统还有许多有待改进的地方,如用户界面操作便捷性,程序的执行效率等。
[1] 唐学忠,费贤举,腾刚,等.SQL Server 2000 数据库教程[M].北京:电了工业出版社,2005.
[2] 萨师煊,王珊. 数据库系统概论[M]. 北京:高等教育出版社,2003.
[3] 郭兴峰.ASP.NET动态网站开发基础教程(C#篇)[M].北京: 清华大学,2005.
[4] 张海藩. 软件工程导论[M]. 北京:清华大学出版社,2005.,35-120.
[5] 屈喜龙. ASP+SQL Server开发动态网站实例荟萃[M].北京:机械工业,2006.
[6] 冯昊. 动态网页计设与上机指导[M]. 北京:清华大学出版社,2002.
[7] 王竹萍,陈翔. 计算机应用能力考核考务管理系统的设计与实现[J]. 杭州师范学院学报(自然科学版) ,2005,22(1):40-60 .
[8] 李传伟,陈建明.考务管理信息系统的设计与实现[J].计算机工程与设计,2004,123(9):40-70.
[9] 齐向明.通用考务管理系统的需求分析与系统设计[J].辽宁工程技术大学学报(社会科学版) ,2003,23(3):60-90..
[10]文春生,罗勇. 基于WebService技术的教务管理系统的设计与实现[J].计算机工程与科学,2004,128(9):50-80.