基于WEB的VFP在线考试系统毕业论文(30页).doc
-
资源ID:37158381
资源大小:442KB
全文页数:30页
- 资源格式: DOC
下载积分:15金币
快捷下载
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
基于WEB的VFP在线考试系统毕业论文(30页).doc
-基于WEB的VFP在线考试系统毕业论文-第 23 页*学院毕业设计(论文)题目 基于WEB的VFP在线考试系统 院 系 专 业 年 级 学生姓名 学生学号 指导教师 职称 完成毕业设计(论文)时间 年 月毕 业 设 计 ( 论 文 ) 主 要 内 容 概 述本文主要介绍了基于WEB的在线考试的开发意义、开发环境及开发过程。这个系统大体可以分为三个大的部分:试题管理、试卷生成、网络考试。其中我主要负责的是数据库部分。论文一共分为7章:第一章引言,介绍了题库管理系统的开发意义及目标,系统的设计前提是为了提高老师的教学质量,减轻老师的工作负担,为学生提供一种新的学习途径。第二章介绍系统的开发语言及其相关技术,本题库管理系统采用的是ASP,使用的编程语言是VBScript,采用了Access 2003数据库技术,并给出了整个系统的运行环境。第三章是系统的需求分析,包括系统需要解决的主要问题,系统应该具备的主要功能和系统的运行环境。第四章是系统的总体设计,包括模块化分,数据库设计,概念结构设计和逻辑结构设计,建立所需要的各个数据表。第五章是系统的详细设计,对后台管理模块进行详细设计,包括用户管理,试卷管理,题库管理,成绩管理。第六章是系统的测试,介绍了系统测试的基本概念,分为程序代码测试和系统功能测试。第七章是结论,介绍了在线考试系统的优势,还简述了软件开发的发展前景。指 导 教 师 评 语成绩: 指导教师签字: 年月日评 阅 教 师 评 语成绩: 评阅教师签字: 年月日答 辩 小 组 评 语成绩: 答辩小组长签字: 年月日院(系)答辩委员会意见(院、系公章)综合评定等级:答辩委员会主任签字: 年月日目 录摘要1关键词11 引言11.1 概述11.2课题的背景及意义22 系统开发相关技术22.1 架构22.2 系统开发语言32.3 数据库概述43 系统需求分析53.1 系统需要解决的主要问题53.2 系统应该具备的功能53.3 系统运行环境64 系统总体设计64.1模块划分64.2 数据库设计74.2.1 概念结构设计74.2.2 逻辑结构设计85 系统详细设计125.1 用户管理135.2 试卷管理135.3 题库管理145.4 成绩管理156 系统测试166.1 系统测试的基本概念166.2 程序代码测试166.3 系统功能测试177 结论17致谢语18参考文献19英文翻译19附录20基于WEB的VFP在线考试系统摘要:利用网络和数据库技术,结合目前硬件价格普遍下跌与宽带网大力建设的有利优势,我们基于B/S模式研究开发了试题库与在线考试系统这一ASP应用程序,基于web的网络考试系统。它运用方便、操作简单,效率很高,现阶段虽只实现了试卷的客观题部分以及简单的主观题型,但已具有试题(卷)录入、修改和查询,以及进行在线考试等重要功能,也就是说实现了真正的无纸化考试,满足任何授权的考生随时随地考试并迅速获得成绩,并给出其详细的成绩分析与试卷评估,前台主要用于考生登录系统、在线考试、查询成绩以及修改个人资料等;后台主要用于管理员对考生信息、课程信息、考题信息和考生成绩信息、智能出卷等进行管理。本系统的实现有利于提高网络教学的质量,同时大大拓展了考试的灵活性,阅卷效率,以及保证了考试的公平性、答案的安全性。关键词: 考试系统 B/S模式 网络 ASP应用1 引言1.1 概述现阶段,学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出卷、考生考试、人工阅卷、成绩评估和试卷分析。显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。随着计算机技术的高速发展,如今的教育模式也正在发生变革。网络化教育也得到了越来越多的应用,它已经成为现代教育的一个特征,并且对现代教育的发展形成新的推动力。随着Internet的迅速发展和普及,建立在其上的远程教育成为现代教育技术未来发展方向之一。现在我们做的这个在线考试系统从出卷到考试都能实现信息化,我们能够从题库中随机抽取不同难度和类型的题目组成试卷,这样试题抽取面相对较大,试卷整体覆盖面大,可以防止猜题压题、作弊等现象。其中的网络考试部分大大的拓展了考试的灵活性,考试可以在不同的地方进行;而且系统还支持自动评分,且无任何人为因素,避免误判及人情分的可能。这样就可以大大的减轻老师的工作负担、提高工作效率,提高考试质量。又能使考试公正、客观和合理,更有利于现代教学1.2课题的背景及意义在高等教育飞速发展的今天,各高校的招生人数和规模在不断扩大。同时,高等院校也出现了师资严重不足的问题。许多教师现在承担着以往几倍的教学工作,在实验、批改作业、课堂教学等环节上都是疲于奔命。因此教学的质量和效果也就比以前有了明显的滑坡。在考试这个环节上也存在以下问题:(1)、手工阅卷的主观失误增多面对成百上千份相同的考卷,教师在批改试卷的过程中也会由于疲劳而产生厌烦情绪,使得试卷的评阅出现较多的错误。(2)、批改试卷的工作量过大,严重影响其他教学环节。(3)、成绩反馈慢学生在考试结束后想尽快知道考试成绩,而目前的状况是,学生需要耐心等待。为了提高老师的教学质量,有效共享教学资源,减轻老师在教学过程中出题组卷的工作量,本课题以ASP开发工具为技术平台,实现试题的管理和试卷的有效组成。主要是指一般的管理员用户不仅可以轻松地向题库添加、修改和查询试题(卷),而且还可以自动新增科目并建立相应的数据表;它还允许用户根据自己的需求,从现有的试题库中灵活地抽取各类试题,以组建适合于自身所需的试卷。而且,试卷的难易程度和形式以及各大题分数等都由管理员根据具体需要确定。考生通过浏览器进行有效的身份验证登录后,输入正确的选择试卷信息,并在规定的时间内进行答题,当达到规定的时间后,系统将自动予以提交。一旦考生做完后便能立即看到自己的成绩,系统将学生的答案和分数记入库中以供审核和查阅,并作为成绩评估和试卷分析的历史数据。系统为教师和学生提供了一个功能强大的平台,通过这个平台,教师可以根据实际教学状况来组成相应的试题和试卷,学生可以对课程进行有效的复习。在实际应用中不仅可以减轻教师工作量,而且还为学生提供了一种新的学习途径。2 系统开发相关技术2.1 架构在线考试系统的开发当中我们将使用B/S架构。B/S结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。相对于C/S结构属于“胖”客户端,需要在使用者电脑上安装相应的操作软件来说,B/S结构是属于一种“瘦”客户端,大多数或主要的业务逻辑都存在服务器端,因此,B/S结构的系统不需要安装客户端软件,它运行在客户端的浏览器之上,系统升级或维护时只需更新服务器端软件即可,这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。 B/S结构系统的产生为系统面对无限未知用户提供了可能。B/S结构最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展性非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。甚至可以在线申请,通过公司内部的安全认证(如CA证书)后,不需要人的参与,系统可以自动分配给用户一个账号进入系统。其缺点B/S架构在图形的表现能力上以及运行的速度上弱于CS架构。还有一个致命弱点,就是受程序运行环境限制。由于B/S架构依赖浏览器,而浏览器的版本繁多,很多浏览器核心架构差别也很大,导致对于网页的兼容性有很大影响。 B/S的发展前景:B/S是基于网页语言的、与操作系统无关,所以跨平台也是它的优势,而且以后随着网页语言以及浏览器的进步,B/S在表现能力上的处理以及运行的速度上会越来越快,它的缺点将会越来越少。2.2 系统开发语言ASP是Microsoft Active Server Pages 的简称,即动态服务器页面。它是一套微软开发的服务器端脚本环境, ASP内含于IIS3.0以上版本中,通过ASP我们可以结合HTML网页、ASP指令建立动态、交互且高效的Web服务器应用程序。服务器端解释执行,结果自动生成符合HTML语言的主页去响应用户的请求。ASP已成为目前应用最广泛的动态网页开发工具,同时应用ASP进行网络化的信息管理系统也逐步得到推广。ASP本身并不是一种脚本语言,它只是提供了一种使镶嵌在HTML页面中的脚本程序得以运行的环境。ASP程序其实是以扩展名为/.asp的纯文本形式存在于Web服务器上,可以用任务文本编辑器打开它。ASP程序中可以包含纯文本、HTML标记以及脚本命令。用户只需将.asp程序放在Web服务套的虚拟目录下(该目录必须要有可执行权限),就可以通过WWW的方式访问ASP程序了。ASP中的命令和Ccript语句都是由服务器来解释执行的。由于ASP是在服务器端解释执行,开发者可以不必考虑浏览器是否支持ASP:同时由于它在服务器端执行,开发者也不必担心别人下载程序从而窃取编程逻辑。ASP通过后缀名为.asp的ASP文件来实现,一个.asp文件相当于一个可执行文件,因此必须放在Web服务器上有可执行权限的目录下。当用户从浏览器输入了.asp文件的地址后,浏览器就将这个URL请求发给Web server,如果Web server上装了ASP,就调用ASP。ASP读出相应.asp文件,解释并执行命令,动态生成一个HTML页面回转Web Server,然后 Web Server再把结果发送给浏览器。ASP文件的制作和HTML类似,且和HTML开发集成,可以在同一个过程完成,利用ASP将可以执行的脚本嵌入到HTML文件中(将HTML文件的后缀名为.asp),这使得HTML文件的编写与脚本的开发融合在一起。通过ASP内置的对象,服务器组件(Server Component)可以完成非常复杂的任务,而且用户还可以自己开发利用别人的服务组件完成专门的任务,ASP比较网关及服务器扩展模式有着以下优点:(1)完全与HTML文件融合在一起;(2)容易创建,不需要其它编译、链接程序;(3)面向对象的并通过Activex Server对象可扩展。使用的编程语言是VBScript,VBScript是Visual Basic Script的简称,即 Visual Basic 脚本语言,有时也被缩写为VBS。是asp动态网页默认的编程语言,配合asp内建对象和ADO对象,用户很快就能掌握访问数据库的asp动态网页开发技术。VBScript可以被用来自动地完成重复性的Windows操作系统任务。在Windows操作系统中,VBScript可以在Windows Script Host的范围内运行。Windows操作系统可以自动辨认和执行*.VBS和*.WSF两种文件格式,此外 Internet Explorer可以执行HTA和CHM文件格式。VBS和WSF文件完全是文字式的,它们只能通过少数几种对话窗口与用户通讯。HTA和CHM文件使用HTML格式,它们的程序码可以象HTML一样被编辑和检查。在WSF、HTA和CHM文件中VBScript和JavaScript的程序码可以任意混合。HTA文件实际上是加有VBS、JavaScript成分的HTML文件。CHM文件是一种在线帮助,用户可以使用专门的编辑程序将HTML程序编辑为CHM网页中的VBS可以用来指挥客户方的网页浏览器(浏览器执行VBS程序)。VBS与JavaScript在这一方面是竞争者,它们可以用来实现动态HTML,甚至可以将整个程序结合到网页中来。至今为止VBS在客户方面未能占优势,因为它只获得Microsoft Internet Explorer的支持(Mozilla Suite可以通过装置一个外挂来支持VBS)。而JavaScript则受到所有网页浏览器的支持。在Internet Explorer中VBS和JavaScript使用同样的权限,它们只能有限地使用Windows操作系统中的对象。在网页服务器方面VBS是微软的Active Server Pages的一部分,它与JavaServer Pages和PHP是竞争对手。在这里VBS的程序码直接嵌入到HTML页内,这样的网页以ASP结尾。网页服务器Internet信息服务执行ASP页内的程序部分并将其结果转化为HTML传递给网页浏览器供用户使用。这样服务器可以进行数据库闻讯并将其结果放到HTML网页中。2.3 数据库概述Web应用程序设计少不了数据库,因为只有数据库才能大量、快速地处理信息。使用ASP可以读取Access数据库。确定系统的流程图后,就要开始着手底层数据库的设计,只有完成数据库的架设后才能在以后的编程中对数据的操作有所依据。Access 2003是一种关系数据库管理系统软件,它是Microsoft公司推出的办公自动化系列软件Office 2003的组件之一,其主要特点如下:(1)完善地管理各种数据库对象,具有强大的数据组织、用户管理、安全检查等功能。(2)强大的数据处理功能,在一个工作组级别的网络环境中,使用Access开发的多用户数据库管理系统具有传统的XBASE(DBASE、FOXBASE的统称)数据库系统所无法实现的客户服务器结构和相应的数据库安全机制,Access具备了许多先进的大型数据库管理系统所具备的特征,如事务处理/出错回滚能力等。(3)可以方便地生成各种数据对象,利用存储的数据建立窗体和报表,可视性好。(4)作为Office套件的一部分,可以与Office集成,实现无缝连接。(5)能够利用Web检索和发布数据,实现与Internet的连接。Access主要适用于中小型应用系统,或作为客户机/服务器系统中的客户端数据库。Microsoft Office Access是微软把数据库引擎的图形用户界面和软件开发工具结合在一起的一个数据库管理系统。Access的用途体现在两个方面:1.用来进行数据分析;2.用来开发软件。Microsoft Access Basic提供了一个丰富的开发环境。这个开发环境给用户足够的灵活性和对Microsoft Windows应用程序接口的控制,同时保护用户使用户免遭用高级或低级语言开发环境开发时所碰到的各种麻烦。3 系统需求分析3.1 系统需要解决的主要问题因为考试是面向特定的某些对象的,所以考生进入系统前应该进行身份验证,验证通过后,考生才能进入考试系统,便可以开始在线答题。在线考试基于网络环境,试卷应该从服务器的数据库随机抽取试题后动态生成的,所以试卷的题型和题量都应是相同的,但试题不能相同,这样能防止考生作弊。另外,系统还应该对考试时间进行控制,考生可以提前交卷,时间到了系统会自动交卷。考生选择答案提交后,应该由计算机自动判卷,得到成绩后显示出来。此外,用户还应能进行远程注册,管理员能够方便、快捷的对在线考试系统进行管理。3.2 系统应该具备的功能本系统的用户可分为管理员和普通用户两类。所以系统要分成两个界面:一个界面用于管理员登录,主要负责进行用户基本资料、题库、试卷、成绩的管理以及查询等;另外一个界面用于普通用户登录,主要负责在线考试、查询考试成绩。总体来分析,整个的考试系统应该具有如下的功能:1、用户注册:用户可以注册该考试系统。2、用户登录:用户可以登录考试系统,然后进行考试。3、用户信息的修改:管理员可以修改用户个人信息和密码。4、用户信息的管理:管理员可以增删改用户。5、试卷模型设置:设置试题每种题型的数量、分值以及考试的总时间。6、试题库管理:对单选题、多选题、判断题三种题型试题库的管理,使试题的增删、编辑更为简便。7、试卷生成:可以指定试卷的各题型的数量,从试题库里随机抽取试题生成一份原始试卷。8、在线考试:系统严格控制整个考试过程,实行时间的监控与权限的控制,考生需要在限定的考试时间内交卷。9、计算机自动阅卷:本系统只考虑客观题,要求计算机能自动阅卷。10、成绩查阅:考生考完以后,管理员能对所有纪录进行查询和管理,考生再次登录后,可以查看考生成绩。除了实现上述功能以外,在线考试系统还应该具有友好、简洁的界面和安全性高、稳定性强的特点。3.3 系统运行环境基于web的在线考试系统是基于ASP开发的一套网络考试系统,我们要选择MS的操作系统,Windows 98以上就可以,然后就是搭建个人WEB服务器(Personnel Web Serice)。其配置如下:(1) 硬件环境服务器 CPU:PIII 5 0 0以上 ,内存:256M以上客户机 CPU:P2 0 0 MMX以上,内存:32M以上(2) 软件环境操作系统: Windows XP/Windows 2000/Windows 2003(推荐)网络协议: TCP/IP数据库: Microsoft Access 2003浏览器: Internet Expolrer 6.0服务器: IIS 6.04 系统总体设计4.1模块划分通过对系统需求的分析,同时整合网站总体功能,可以分析出在线考试平台大致可以分为两个模块:前台管理模块和后台管理模块。前台管理分为学生注册,学生登录登录,考试和成绩查询模块。后台管理分为用户管理,题库管理,试卷管理,管理员管理,班级管理和成绩管理。题库管理分为浏览、删除、添加和修改题目。用户管理分为学生管理和教师管理,可以对学生和教师分别进行查询、修改、添加和删除操作。具体功能结构如图4-1所示。在线考试系统前台管理后台管理学生注册学生登录考试题库管理成绩管理修改题目删除题目添加题目浏览题目用户管理学生管理教师管理试卷管理管理员管理班级管理成绩查询图4-1 在线考试系统功能模块图4.2 数据库设计4.2.1 概念结构设计本系统的E-R图如图4-2所示。班级姓名密码性别学号密码姓名专业学生管理管理员出生日期1NNN出卷考试NN题型分值考试时间考试名称判断题试卷题型说明成绩多选题单选题题型数量量试卷总分图4-2 E-R 图根据前面所作的需求分析本系统的实体及其属性如下:学生 (姓名,密码,性别,学号,专业,班级,出生日期)管理员(姓名,密码)试卷 (考试名称,考试时间,试卷总分,题型数量,题型分值,题型说明,单选题,多选题,判断题)4.2.2 逻辑结构设计本次开发的数据库包括4方面:1. 题库数据:包括了单选题、多选题和判断题3种类型题目。包括题目的题干、答案等信息。2. 管理员、学生资料信息数据:包括姓名、密码、性别、班级和学号等基本数据。3. 成绩资料表数据:包括学生学号、分数、等数据。4. 考试题型数据:包括考题数据,每题分数等基础数据。本系统将使用Access 2003作为数据库管理系统。安装Access 2003,打开并新建一个数据库,将其命名为vfp.mdb数据库中包含的数据表及其相应功能如表1所示。表1数 据 表功 能admin存放管理员(教师)类用户基本信息yonghu存放学生类用户基本信息Result存放学生考试成绩基本信息Choice单选题Judge判断题Class班级基本信息MultiChoice多选题Save保存试题正确答案虽然Access 2003建立的数据表中字段的名称可以支持中文,但是从以往经验来看,用于系统开发而建立的数据库最好不要使用中文,而是使用对应于中文意义的英文。这是基于以下两点:在某些不支持中文的系统中,字段名称含有中文的数据库将不能够被识别,这样数据库就不能够使用,从而使数据库的可移植性下降;即使是在支持中文的Windows操作系统中,在某些情况下中文字段也有可能会不能识别,或者不能很好地识别。(1)管理表管理员(教师)信息表用于存放管理员(教师)类用户的基本信息,包括ID、管理员(教师)姓名(AdminName)、管理员(教师)密码(AdminPass)、IP地址和上次登录时间五项基本信息。在已创建的Access 2003数据库vfp.mdb中,右击“表”创建一个表,名为Admin。向表中添加字段。其中,ID字段作为该表的主关键字(primary key),id标识为“是”,标识种子为“1”,标识增量为“1”。管理员(教师)信息数据表结构如表2所示。表2 admin字段名称数据类型说明Id自动编号编号Username文本管理员姓名Password文本管理员密码LastLoginIP文本上次登录IP地址LastLoginTime日期/时间上次登录时间(2) 用户信息表用户信息表主要用于存放学生类用户的基本信息。包括ID、学生学号(y_num)、学生姓名(y_name)、学生密码(y_pass)、学生性别(y_sex)、学生班级(y_class)、学生专业(y_poc)、学生年龄(y_age)和学生权限(y_qx)9个字段。其中,ID字段作为主关键字,id(试题编号)标识为“是”,标识种子为“1”,标识增量为“1”。学生信息表结构如表3所示。表3 yonghu字段名称数据类型说明Id自动编号编号y_num文本学生学号y_name文本学生姓名y_pass文本学生密码y_sex文本学生性别y_class文本学生班级y_poc文本学生专业y_age文本学生年龄y_qx文本学生权限(3)考试班级表考试班级表用于存放考试的各个班级信息的。包括id、班级名称(Cname)和添加时间(Addtime)三个字段。其中,ID字段作为主关键字,id(编号)标识为“是”,标识种子为“1”,标识增量为“1”。考试班级表如表4所示:表4 Sclass字段名称数据类型说明Id自动编号编号Cname文本班级名称Addtime备注添加时间(4) 单选题表单选题表用于存放单选题基本内容的。包括id、题目内容(Topic)、选项(A、B、C、D)和正确答案(Right)七个字段。其中,ID字段作为主关键字,id(试题编号)标识为“是”,标识种子为“1”,标识增量为“1”。单选题表如表5所示:表5 Choice字段名称数据类型说明Id自动编号编号Topic备注题目内容A备注A选项B备注B选项C备注C选项D备注D选项Right文本正确答案(5) 多选题表多选题表用于存放多选题基本内容的。包括id、题目内容(Topic)、选项(A、B、C、D)和正确答案(Right)七个字段。其中,ID字段作为主关键字,id(试题编号)标识为“是”,标识种子为“1”,标识增量为“1”。多选题表如表6所示:表6 MultiChoice字段名称数据类型说明Id自动编号编号Topic备注题目内容A备注A选项B备注B选项C备注C选项D备注D选项Right文本正确答案(6) 判断题表判断题表用于存放判断题基本内容的。包括id、题目内容(Topic)、判断(right)和添加时间(addtime)四个字段。其中,ID字段作为主关键字,id(试题编号)标识为“是”,标识种子为“1”,标识增量为“1”。判断题表如表7所示:表7 Judge字段名称数据类型说明Id自动编号编号Topic备注题目内容Right备注是否正确Addtime日期/时间添加时间(7) 学生成绩表考试成绩信息表主要用于存放学生类用户的考试成绩,包括ID、学生班级、学生姓名、学生学号、单选题、多选题、判断题、总分、添加IP地址、试卷提交时间、各个题型小计。其中,ID字段作为主关键字,id(试题编号)标识为“是”,标识种子为“1”,标识增量为“1”。学生成绩表如表8所示:表8 Rusult字段名称数据类型说明Id自动编号编号Sclass文本学生班级Sname文本学生姓名Snum文本学生学号Choice文本单选题Mchoice文本多选题Judge文本判断题Total文本总分Addip文本添加IP地址Addtime日期/时间试卷提交时间Fs1文本单选题小计Fs2文本多选题小计Fs3文本判断题小计(8) 学生答案表学生答案表用于存放考生所回答的试题答案信息。其中,ID字段作为主关键字,id(试题编号)标识为“是”,标识种子为“1”,标识增量为“1”。学生答案表如表9所示:表9 Save字段名称数据类型说明Id自动编号编号Timu备注题目Daan文本学生答案Fenlei文本题型分类Yonghu文本学生姓名Shijian文本考试时间Num文本学生学号在数据库设计中,表与表之间存在着不可或缺的关系。在所有关系中,主关键字(PK)和外部关键字(FK)最为重要。主关键字能惟一标识表中的每一列的一列或多列的组合,这样的列就成为主关键字。每个表都必须有且只能有一个主关键字,其值惟一地标识表中的每一行。外关键字用于建立和加强两个表数据之间的链接的一列或多列的组合,其值或是与主关键字相同,或是为空(NULL),外关键字可有多个。5 系统详细设计系统用户管理模块的功能是管理用户信息,主要包括用户的用户名、密码和权限,权限包括添加信息、修改信息、删除信息以及查询信息等,管理员可以对新添加的用户进行权限设置,管理员属于一级权限,教师属于二级权限,学生属于三级权限,管理员还可以管理班级、题库和试卷信息。教师可以实现题库管理和用户管理。题库管理:教师可以根据教学的需求对题库中的试题进行四种基本操作:添加新的考题、删除旧的考题、修改原有的考题、查看已有的考题,其中试题类型包括单选题、多选题和判断题;用户管理:教师可以增加考试的学生,查看参加考试的学生的名单及他们的基本资料。对于学生,可以实现在线考试,对相应的试卷进行成绩查询。5.1 用户管理此模块是由系统管理员对教师、学生和管理员进行管理。可以对教师、学生和管理员分别进行浏览、添加、删除和修改操作。在此以添加教师为例,在图5-1的界面上可以添加教师。在图5-2的界面上可以浏览和修改学生信息,还可以添加和删除学生。图5-1 添加教师界面图5-2 学生管理界面5.2 试卷管理管理员在考试前必须得为考试生成要考试的试卷,生成试卷时可以根据需要选择试卷的总分,题型,试卷各种题型的比例及分值,和该题型是否开考等。由于在线考试是基于网络环境,所以试卷应该从服务器的数据库随机抽取试题后动态生成的,试卷的题型和题量都应是相同的,但试题不能相同,这样能防止考生作弊。另外,系统还应该对考试时间进行控制,考生可以提前交卷,时间到了系统会自动交卷。考生选择答案提交后,应该由计算机自动判卷,得到成绩后显示出来。如图5-3是试卷管理界面,管理员和老师可以通过此界面对考试名称、考试时间、试卷总分、题型数量、题型分值、题型说明以及是否开考等进行修改。图5-3试卷管理界面5.3 题库管理本模块是管理员或老师对试题库里的所有试题进行的管理,在考试前管理员要预先把考试所用相关的题目录入到题库中。题库管理包括单选题管理、多选题管理和判断题管理。管理员可以通过题库管理对各种类型的试题进行添加、删除、修改以及查询。题库管理功能模块图如图5-4所示,题库管理界面如图5-5所示。 判断题管理删除判断题修改判断题查找判断题添加判断题删除多选题修改多选题查找多选题多选题管理添加多选题题库管理单选题管理删除单选题修改单选题查找判断题添加单选题图5-4 题库管理功能模块图5-5 题库管理界面5.4 成绩管理在学生成绩管理模块,管理员和教师都可以进行管理,查询和删除成绩。通过管理员或教师阅卷后,可以生成学生成绩列表,以供查询成绩。学生可以通过再次登录考试系统查看已考科目的成绩。成绩管理界面如图5-6所示:图5-6 成绩管理界面6 系统测试6.1 系统测试的基本概念在软件生命周期和各个阶段,都有可能会产生差错,在每个阶段结束之前都有严格的复审,以期能尽早地发现错误。但是,经验表明审查并不能发现所有差错。如果在软件投入生产性运行之前,没有发现并纠正软件中的大部分错误,则这些错误迟早会在运行过程中暴露出来甚至会造成严重的后果,等到那时去改正这些错误的代价会很高。测试的目的就是在软件投入生产性运行之前,尽可能多地发现软件中的错误。测试是对软件规格说明、设计和编码的最后复审,所以软件测试贯穿在整个软件开发期的全过程软件测试是软件开发过程中的重要阶段,是软件质量保证的重要手段。其任务可归纳为三个方面:(1) 预防软件发生错误(2) 发现改正程序错误(3) 提供错误诊断信息在软件开发时,应该把测试的设计和实现所做的思考和分析穿插在软件开发的各个阶段,从而较早地预防和排除错误。利用系统设计的万法,在精心控制的环境下,检验程序,从而发现程序的错误。软件测试中,必须提供有关错误的性质、原因和位置的必要的信息,以利于排错。软件测试基本原则:(1)尽早地,不断地进行软件测试,把软件测试贯穿于开发过程的始终。从而尽早发现和预防错误,达到减少软件开发费用和提高软件质量的目的。(2)测试实例应由测试输入数据和对输入数据所期望 (预测)的程序结果两部分组成。(3)程序员应避免检查自己编制的程序。(4)全面检查每一测试结果,以防遗漏。(5)测试实例设计,应包括:有效和期望的输入条件以及无效的和不期望的输入条件。(6)除检查程序应完成的任务外,还应检查程序是否做了它不应该做的事。(7)一般认为:程序中尚未发现的错误的数量与在该程序段已发现的错误数量往往成正比。6.2 程序代码测试本系统在上一部分具体实现中的同时还进行了仔细的测试,在系统各个模块的编写中就开始测试,这样有助于尽早地发现系统中的错误,以减少在后面集成测试中出现问题的机率,也减少在集成测试中的发现问题后修改源程序的难度。此时的测试主要是用到一些测试数据,测试数据除采用正常数据外,还包括了一些异常数据和临界数据,用他们来考验程序逻辑上的正确性。测试数据是经过精心挑选的,使程序和模块中的每一条语句都能得到执行。在本系统的测试中用了以下几种数据: (1)用正常数据调试在本系统中凡是有数据提交的地方都输入以确定无误的正常数据进行调试,例如:用户登录窗口中输入数据库中存在的用户信息等。 (2)异常数据调试。在执行本系统中的处理程序时要考虑一些临界数据。例如:空字符串。这些数据是最易被忽略的,也是最易使程序出错的,所以此处的调试花费了很长一段时间,经反复的调试和修改后,系统建立了比较完善的异常处理机制。 (3)用错误数据调试。用错误的数据进行调试主要是测试系统对错误的处理能力,包括显示出错信息及容许修改错误的可能性。在实现本系统的过程中也对此进行了大量的测试。6.3 系统功能测试经过代码测试正确的程序只是基本上验证了程序逻辑上的正确性,但并不能验证程序是否满足程序设计中定义的功能,也不能验证测试数据本身是否完备。所以经过程序代码的测试后,还要进行程序功能上的测试。认为程序只是满足应用功能上的需要,就行了。因此我们也对本系统进行了以下两方面的功能测试:(1)模块功能测试本系统是由多个功能模块组成,每一模块由一个或几个程序构成。这项测试主要还是自己完成的,我们把各模块中的所有程序按次序串联起来进行调试,经调试修改后每一模块内各程序间建立了正确的控制关系,并实现了各模块间的正确联接。(2)确认测试这一阶段的测试主要是检查系统的功能,性能及其他特征是否与用户的需求一致,在此测试的工作主要由同学帮助完成,以确定该系统的功能是否能满足一般用户的需要,系统的性能是否稳定等。经过反复的测试,返回很多的不同信息,根据这些信息,再次对该系统进行一些小的修改,以保证该系统投入使用后能安全、可靠、正常的工作。 7 结论考试是教育资源中非常重要的环节,是评价教学质量、分析教学水平、检测教学效果的重要手段,利用计算机网络考试取代传统的考试模式是教育信息化的重要体现,在线考试系统一方面减轻了考试各环节的工作复杂度,提高了教育办公化的进程,同时也消除了空间和时间的差异,提高了考试的公正性与高效性,符合了当今开放式、动态的发展