毕业设计网上考试系统的设计与实现精品.docx

上传人:b****4 文档编号:11915146 上传时间:2023-04-16 格式:DOCX 页数:70 大小:411.98KB
下载 相关 举报
毕业设计网上考试系统的设计与实现精品.docx_第1页
第1页 / 共70页
毕业设计网上考试系统的设计与实现精品.docx_第2页
第2页 / 共70页
毕业设计网上考试系统的设计与实现精品.docx_第3页
第3页 / 共70页
毕业设计网上考试系统的设计与实现精品.docx_第4页
第4页 / 共70页
毕业设计网上考试系统的设计与实现精品.docx_第5页
第5页 / 共70页
点击查看更多>>
下载资源
资源描述

毕业设计网上考试系统的设计与实现精品.docx

《毕业设计网上考试系统的设计与实现精品.docx》由会员分享,可在线阅读,更多相关《毕业设计网上考试系统的设计与实现精品.docx(70页珍藏版)》请在冰豆网上搜索。

毕业设计网上考试系统的设计与实现精品.docx

毕业设计网上考试系统的设计与实现精品

1绪论

1.1选题背景

网络化教育代表了教育改革的一个发展方向,已经成为现代教育的一个特征,并对教育发展形成新的推动力。

随着Internet/Intranet技术迅速发展和广泛普及,建立在其上的远程教育成为现代教育技术未来发展方向之一,在线测试作为远程教育的一个子系统也成为一个重要的研究领域。

现代远程教育作为一种新的教学手段已经开始进入我们的生活,正在给传统教育模式带来新的变革。

Internet技术的发展使得考试的技术手段和载体发生了革命性的变化,Internet的开放性、分布性特点和基于Internet的巨大的计算能力使得考试突破了时间和空间的限制。

基于Internet的考试系统正成为人们的研究热点之一,与传统考试模式相比,网上考试具有无可比拟的优越性,它可以将传统考试过程中试卷组织、审定印制、传送收集、登记发放、评判归档各个环节缩小到一至两个环节,几乎屏蔽了所有人工直接干预考试活动的可能性,不但能够节约大量时间、人力、物力与财力,而且还可以大幅度提高考试成绩的客观性和公正性。

网上考试系统课题产生背景是当今教育信息化的趋势及我国高校教育信息化系统的建设;目的是充分利用学校现有的计算机软、硬件资源和网络资源实现无纸化考试以避免传统手工考试的不足。

与传统考试模式相比,网上考试渗入了更多的技术环节,对实现安全性的途径、方法也提出了更高的技术要求。

通过Internet/Intranet来实现网上考试,是现代教育技术的一个具体实现,具有很重要的现实意义。

可以实现教考分离以及考务工作的全自动化管理,可以有效利用校园网的软硬件资源,使其发挥最大效力,更好的为学校的教学、科研、管理服务,可以大规模的实行考试,实现考试的客观、公证性,自动化组卷、阅卷可以减轻教师的工作强度。

传统考试要求老师收集资料、出试卷、印试卷、安排考试、监考、收集试卷、评改试卷、讲评试卷和分析试卷。

这是一个漫长而复杂的过程,已经越来越不适应现代教学的需要。

网络考试系统是传统考场的延伸,它可以利用网络的无限广阔空间,随时随地的对学生进行考试,加上Web数据库技术的利用,大大简化了传统考试的过程。

本文以Internet为平台,研究了基于Web考试系统的设计与实现,包括系统需求分析和系统功能设计以及数据库设计。

重点阐述了用户管理模块、用户权限管理模块、题库管理模块、试卷管理模块、信息发布管理模块、用户操作日志记录模块和专家答疑模块的设计。

特别是在题库管理模块中对自动组卷功能常用的算法(包括随机选取法、回溯试探法和遗传算法)进行了比较。

对于较流行的存储加密、防SQL注入过滤、模糊检索、验证码技术也给出了具体实现。

1.2国内外网上考试系统现状与发展趋势

随着计算机应用的迅猛发展,网络应用不断扩大,现在很多国外的大学和社会其他部门都已经开设了远程教育,通过计算机网络实现异地教育和培训,且这些应用正逐步深入到千家万户。

人们迫切要求利用这些技术来进行网上在线考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证、客观,更加激发学生的学习兴趣。

例如目前许多国际著名的计算机公司所举办的各种认证考试绝大部分采用这种方式。

在英国,已经实现了英语资格考试的网上学习和水平认证全过程。

远程教育包括很多环节,例如教学系统、答疑系统和考试系统等等。

其中很重要的一个环节就是网上考试系统,同时它也是最难实现的环节。

在我国,虽然远程教育已经蓬勃地发展起来,但是目前学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。

显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。

网上考试系统是建立在国际互联网上的应用系统,客户端的配置可以是极为简单,使考试不受地域的局限。

1.3本系统设计路线

目前,网络应用软件的模式主要有二类:

Client/Server模式,Browser/WebServer模式。

前者主要的缺点是维护、升级较麻烦,后者是近几年伴随Internet迅速发展起来的一种技术,它与客户机/服务器方式类似,客户端是一个标准的浏览器,服务器端是WebServer,而WebServer与数据库和应用服务器的紧密结合,使得这种模式的应用范围不断扩大,它已不仅仅用于网上查询,有很多部门的业务系统、企业的MIS系统纷纷采用这种模式,它的主要优点是便于扩充应用、升级维护更简便。

利用网络和数据库技术,结合目前硬件价格普遍下跌与宽带网大力建设的有利优势,应用ASP(ActiveServerPage)技术,开发了基于Web的B/S模式的网络考试系统。

它运用方便、操作简单,效率很高。

现阶段虽只实现了试卷的客观题部分,但已具有多用户同时在线考试、动态随机出题、时间控制、自动阅卷,试题管理、修改试题库、用户管理、章节管理、用户权限管理、用户日志管理等重要功能,也就是说实现了真正的无纸化考试,满足任何授权的考生随时随地考试并迅速获得成绩,同时也大大减轻了教师出题和阅卷等繁重的工作量。

基于上述考虑,整个考试系统采用Browser/WebServer的二层体系结构比较合适,服务器端采用MicrosoftSQLServer数据库系统和ASP组件来构成考试的应用服务系统;客户端采用浏览器来完成考试全过程,同时可进行远程系统维护和管理。

Web服务器接受请求,通过应用程序服务器执行一个ASP程序,从而实现与客户机进行信息资源的交互。

数据库服务器用来存储管理信息系统中所用到的各种数据。

系统的客户端只需要一个浏览器即可。

相关人员通过浏览器来增加、修改、删除数据,对信息进行管理。

2系统实现关键技术

本网上考试系统设计遵循软件工程的基本原则,经过可行性分析、需求分析、数据库分析与设计、系统实现、系统测试等几个阶段。

系统实现的关键技术包括Web技术、ASP技术、数据库技术、页面布局显示技术,以及试卷的生成与评估的算法等。

下面对涉及的技术和相关理论作一个概述。

2.1Web技术

Web技术的迅猛发展,使全人类都能共享Web上的各类资源,包括功能强大的计算资源、海量信息的数据库资源、五花八门的多媒体信息资源、门类齐全的软件工具资源等,这些使得任何人能在任何时间、任何地点和任何设备上获得所需要的信息资源和服务。

Web技术为Internet的普及与推广起到关键性的作用,例如在远程教育、电子商务、电子政务、办公自动化、掌上电脑、信息家电、嵌入式系统等方面的应用,几乎无所不在。

Web是一个无集中控制、无统一结构、无完整性约束、无事务管理、无标准查询语言和数据模型、可无限扩充的一个松散的分布式信息系统。

Web是在TCP/IP、Mime、Hypertext等技术之上发展起来的,并在此基础之上,开发了HTTP、HTML、URL等技术,但其核心是HTTP。

从本质上讲是各种技术的集成与综合应用,它以TCP/IP协议为基础,使用HTML描述网络的资源,通过超文本(Hypertext)、超媒体(Hypermedia)技术实现超级链接,无论文本、图形,还是动画、声音都能通过文挡中的链接连接到服务器上的其它文档或其它站点,使客户以用交互方式快速地搜索所需要的资料,通过表单供用户填写并通过服务器应用程序提交给数据库等。

2.2ASP技术简介

随着计算机及网络技术的飞速发展,Internet/Intranet应用在全球范围内日益普及,在众多的网络服务中,Web给人耳目一新的感觉,而在这其中,ASP技术则因为可以进行复杂的数据库操作、很强的交互性以及方便用户控制管理且简便易学而备受青睐,成为当前相当热门的网络开发技术。

ASP程序工作在Web服务端,浏览器向服务器发出一个HTTP请求,请求一个.asp文件,Web服务器响应该请求并调用ASP引擎执行该文件,当遇到任何与Active脚本兼容的脚本(如VBScript、JavaScript)时ASP引擎调用相应的脚本引擎解释执行其中的脚本命令,若脚本中含有访问数据库的请求,则通过ODBC连结后台数据库,由数据库访问组件ADO(ActiveDataObject)执行访库操作,最后,ASP依据访数据库的结果集自动生成标准的HTML页面发送到客户浏览器。

此过程如图2•1所示:

 

图2•1客户访问数据过程图

ASP是服务器端脚本编程环境。

使用ASP可以交互HTML页、脚本命令和ActiveX组件组合起来,创建动态的、交互的Web网页和基于Web的功能强大的应用程序。

ASP(ActiveServerPages)是微软公司推出的一种用以取代CGI(CommonGatewayInterface)的技术。

简单讲,ASP是位于服务器端的脚本运行环境,通过这种环境,用户可以创建和运行动态的、交互式的Web应用程序,如交互式的动态网页,包括使用html表单收集和处理信息、上传与下载文件等。

ASP工作原理如图2•2所示:

 

图2•2ActiveServerPages工作原理图

ASP内含于IIS(MicrosoftInternetInformationServer)3.0和4.0之中。

有了ASP就不必担心客户浏览器是否能运行你所编写的代码,因为所有的程序都将在服务器执行,包括所有嵌在普通html中的脚本程序。

当程序执行完毕后,服务器仅将执行的结果返回客户浏览器,这样就减轻了客户浏览器的负担,大大提高了信息交互速度。

从字面上说,ASP包含下面3方面的含义:

Active、Server、Pages。

作为IIS环境下开发WEB应用的一种简单、方便的编程工具,ASP具有如下特点:

(1)使用VBScriptJavaScript等简单易懂的脚本语言,结合html代码,可快速完成网站应用程序的开发;

(2)容易编写,无须编译,可在服务器直接执行;

(3)使用普通的文本编辑器,如windows的记事本,即可进行编辑;

(4)与浏览器无关,只要客户端浏览器能够执行html代码,就可以浏览ASP设计的网页内容。

ASP所使用的脚本语言均在WEB服务器执行,客户端的浏览器不执行这些脚本语言;

(5)ASP需要能够能与任何ActiveXScripting语言相兼容,除了可以使用VBScript或JavaScript脚本语言来设计外,还可以通过plug-in的方式,使用由第三方所提供的其他脚本语言,例如rexx、perl、tcl等,脚本引擎是处理脚本程序的COM组件;

(6)ASP的源程序不会被传到客户浏览器,因而可以避免源程序被剽窃,提高了程序的安全性;

(7)可使用服务器端的脚本来产生客户端的脚本;Actives服务器组件具有无限可扩充性,可以使用VisualBasic、Java、VisualC++、Cobol等编程语言来编写所需的Actives服务器组件。

2.3数据库技术简介

由于本系统涉及到许多数据的处理,这就需要有一个强大的后台数据库管理系统支持。

目前主要的数据库有:

Access、DB2、FoxPro、Informix、Oracle、Sybase、SQLServer、达梦、虚谷等,其中网络型的SQLServer、Oracle产品安全性远远高于桌面型的Access、FoxPro等数据库。

本系统采用的是微软公司的SQLServer2000。

原因如下:

第一,SQLServer与Windows2000Server服务器紧密集成,而Windows2000Server服务器具有很好的安全性,能够排除所有XX的非法用户的访问,确保了SQLServer2000服务器的安全性,符合系统对安全性的要求;第二,用户可以使用Web浏览器查询存储在SQLServer2000数据库中的数据,符合系统远程访问数据库的要求。

第三,容量庞大,每个数据库中可创建多达20万个数据表,数据表中的记录的行数只受服务器硬盘空间的限制,符合系统的考题数目较多的要求。

2.4ASP访问Web数据库原理

ASP是一个服务器的脚本环境,内嵌在HTML页面中的脚本程序在这里运行并建立Web服务器应用程序。

在ASP脚本中可以通过三种方式访问数据库:

传统的IDC(InternetDatabaseConnector)、ADO(ActiveXDataObject)和RDS(RemoteDataServer)。

其中ADO是ASP内置的数据库存取组件,各种脚本和语言均可调用它实现对数据库的直接访问,并利用相应的数据接口显示查询结果。

ADO拥有强大的活力,它是位于ODBC和OLEDB之上的高性能数据库操作接口,提供了开放的数据操作对象模型,允许开发人员使用任何语言和统一的编程模式操作各种与ODBC和OLEDB兼容的数据库,如MicrosoftAccess、FoxPro、MicrosoftSQLServer、Oracle等。

ADO简单易行、应用广泛使之成为ASP访问数据库所采用的最佳选择。

这种对数据库的访问方式是由InternetInformationServer来完成的。

执行过程如图2•3所示:

图2•3ASP访问Web数据库过程

(1)浏览器:

用户通过Web浏览器用HTTP协议向Internet信息服务器(IIS)发出请求。

(2)服务器:

服务器检查网页文件的类型,对扩展名是.asp的文件服务器调用ASP系统程序,解释执行被请求页面文件的所有脚本命令。

若脚本中含有对数据库的请求,服务器就执行连接访问数据库的操作,并将结果以HTML格式送回用户浏览器作为响应。

(3)数据库:

储存了动态交互所需的信息数据,用户可通过指令对其进行查询、修改、添加、删除等操作。

数据库是实现有组织的,动态的存储大量关联数据,方便多用户访问的计算机软硬自愿组成的系统,它与文件系统的重要区别是数据的充分共享,交叉访问,与应用程序的高度独立性。

ADO是一项容易使用并且可扩展的将数据库访问添加到Web页的技术。

可以使用ADO去编写紧凑简明的脚本以便连接到ODBC兼容的数据库和OLEDB兼容的数据源。

ADO包括Command、Connection、Recordset、Fields、Parameters、Property、Error七个对象和一个动态的Properties集合,绝大部分的数据库访问任务都可以通过它们的组合来完成。

一般使用ADO访问数据库的ASP脚本程序使用Connection对象建立并管理与远程数据库的连接;使用Command对象提供灵活的查询;使用Recordset对象访问数据库查询所返回的结果。

这三者是ADO中最基本也是最核心的对象。

使用ASP通过ADO访问数据库,主要有以下步骤:

(1)确定数据源,连接数据库。

ADO提供Connection对象,可以使用该对象建立和管理应用程序和ODBC数据库之间的连接。

Connection对象具有各种属性和方法,可以使用它们打开和关闭数据库连接,并且发出查询请求来更新信息。

要建立数据库连接,首先应创建Connection对象的实例。

(2)使用“Server.CreateObject”建立ADO的连结对象。

(3)通过Connection对象的“Open”方法打开数据库。

(4)表单中提取信息,构造处理数据库的SQL命令并使用“Execute”命令执行访问数据库的操作,并将返回的结果集储存到Recordset中。

(5)使用Recordsets对象提供的方法和属性,完成SQL结果集的处理,并显示结果。

(6)关闭Recordsets结果集和数据库。

2.5页面显示技术CSS和DIV

CSS是CascadingStyleSheets(层叠样式表)的简称。

由W3C的CSS工作组产生和维护,是一种标记语言,它不需要编译,可以直接由浏览器执行(属于浏览器解释型语言)。

在标准网页设计中CSS负责网页内容(XHTML)的表现。

CSS文件也可以说是一个文本文件,它包含了一些CSS标记,CSS文件必须使用css为文件名后缀。

可以通过简单的更改CSS文件,改变网页的整体表现形式,从而减少设计工作量,实现内容与表现分离,有了CSS,网页的内容(XHMTL)与表现就可以分开了。

使网页的表现非常统一,并且容易修改。

CSS支持多种设备,比如手机,PDA、打印机、电视机、游戏机等。

使用CSS可以减少网页的代码量,增加网页的浏览速度,减少硬盘容量。

DIV元素是用来为HTML文档内大块(block-level)的内容提供结构和背景的元素。

DIV的起始标签和结束标签之间的所有内容都是用来构成这个块的,其中所包含元素的特性由DIV标签的属性来控制,或者是通过使用样式表(CSS)格式化这个块来进行控制。

2.6UML概述

UML (统一建模语言)是一套用来设计软件蓝图的标准建模语言,也是一种可视化的面向对象的模型分析语言。

从系统工程角度来看,UML可以说是一种软件结构分析工具。

也就是说,UML是一种从软件分析、设计到编写程序规范的标准化建模语言。

2.6.1UML的概念模型

为了理解UML,需要形成一个语言的概念模型。

UML包括三个主要要素:

UML的基本构建块、支配这些构建块放在一起的规则和一些运用于整个UML的公共机制。

这三部分构成了UML的概念模型。

(1)UML的基本构建块

UML的词汇表中包括三种构建块:

事物、关系和图。

事物是模型中最有代表性的成分的抽象;关系把事物结合在一起;图聚集了相关的事物。

在UML中,事物分为结构事物(包括类、接口、协作、用例、主动类、构件和节点)、行为事物(包括交互和状态机)、分组事物(包)和注释事物(注解);有四种关系:

依赖关系、关联关系、泛化关系、实现关系:

及可归纳为两类的九种图:

一类是结构图,用于描述系统的静态方面,包括用例图、类图、对象图、构件图和部署图;另一类是行为图,用来描述系统的动态方面,包括顺序图、协作图、状态图和活动图。

(2)UML规则

UML用于描述事物的语义规则分别是:

为事物、关系和图命名;给一个名字以特定含义的语境,即范围;怎样使用或看见名字,即可见性;事物如何正确、一致地相互联系,既完整性;运行或模拟动态模型的含义是什么,即执行。

另外,UML还允许在一定的阶段隐藏模型的某些元素、遗漏某些元素以及保证模型的完整性,但模型逐步地要达到完整和一致。

在软件开发的生命周期内,随着系统细节的展开和变动,不可避免地要出现一些不太规范的模型。

UML的规则鼓励(不是强迫)你专注于最重要的分析、设计和实现问题。

这些问题将促使模型随时间的推移而具有良好的结构。

(3)UML的公共机制

有四种在整个UML语言中一致应用的机制,使该语言变得较为简单。

这四种机制是规格说明、修饰、通用划分和扩展机制。

2.6.2UML的建模机制

从应用的角度看,当采用面向对象技术设计系统时,首先是描述;其次根据需求建立系统的静态模型,以构造系统的结构;第三步是描述系统的行为,其中在第一步与第二步中所建立的模型都是静态的,包括用例图、类图(包含包)、对象图、构件图和部署图等5个图形,是标准建模语言UML的静态建模机制。

其中第三步中所建立的模型或者可以执行,或者表示执行时的时序状态或交互关系。

它包括状态图、活动图、顺序图和协作图等4个图形,是标准建模语言UML的动态建模机制。

因此,标准建模语言UML的主要内容也可以归纳为静态建模机制和动态建模机制两大类。

(l)静态建模机制

任何建模语言都以静态建模机制为基础,标准建模语言UML也不例外。

UML的静态建模机制包括用例图(usecasediagram)、类图(classdiagram)、对象图(objeetdiagram)、包(Paekage)、构件图(Compnentdiagram)和部署图(Deploymentdiagram)。

用例图:

用例图展现了一组用例、参与者以及它们之间的关系。

可以用用例图描述系统的静态使用情况。

在对系统行为组织和建模方面,用例图是相当重要的。

类图:

类图展现了一组类、接口和协作及它们间的关系,在建模中所建立的最常见的图就是类图。

用类图说明系统的静态设计视图,包含主动类的类图专注于系统的静态进程视图。

系统可有多个类图,单个类图仅表达了系统的一个方面。

要在高层给出类的主要职责,在低层给出类的属性和操作。

对象图:

对象图展示了一组对象及它们间的关系,用对象图说明类图中所反映的事物实例的数据结构和静态快照。

对象图表达了系统的静态设计视图或静态过程视图,除了现实和原型方面的因素外,它与类图作用是相同的。

构件图:

构件图展现了一组构件之间的组织和依赖,用于对原代码、可执行的发布、物理数据库和可调整的系统建模。

部署图:

部署图展现了对运行时处理节点以及其中构件的配置。

它描述系统硬件的物理拓扑结构(包括网络布局和构件在网络上的位置),以及在此结构上执行的软件(即运行时软件在节点中的分布情况)。

用部署图说明系统结构的静态部署,即说明分布、交付和安装的物理系统。

(2)动态建模机制

系统的动态行为主要是由交互图(顺序图和协作图)、状态图和活动图来表达。

顺序图:

顺序图展现了一组对象和由这组对象收发的消息,用于按时间顺序对控制流建模。

用顺序图说明系统的动态视图。

协作图:

协作图展现了一组对象,这组对象间的连接以及这组对象收发的消息。

它强调收发消息的对象的结构组织,按组织结构对控制流建模。

状态图:

状态图展现了一个特定对象的所有可能状态以及由于各种事件的发生而引起的状态间的转移。

一个状态图描述了一个状态机,用状态图说明系统的动态视图。

它对于接口、类或协作的行为建模尤为重要,可用它描述用例实例的生命周期。

活动图:

活动图是一种特殊的状态图,描述需要做的活动、执行这些活动的顺序(多为并行的)以及工作流(完成工作所需要的步骤)。

它对于系统的功能建模特别重要,强调对象间的控制流程。

高层活动图用于表示需要完成的一些任务,即用于分析用例,理解涉及多个用例的工作流、多线程及并行,显示相互联系的行为整体,还可用于对企业过程建模,对系统的功能建模。

低层活动图用于表示类的方法。

但活动图不适用于描述动作与对象间的关系,显示对象间的合作以及显示对象在生命周期内的运转情况。

3系统需求分析

软件需求是指用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。

通过对问题及其环境的理解与分析,为问题涉及的信息、功能及系统行为建立模型,将用户需求精确化、完全化。

3.1系统功能需求分析

网上考试系统的基本功能是使用计算机来代替人工完成考试中需要完成的一系列任务,达到考试智能化。

为了保证系统能够长期、安全、稳定、可靠、高效的运行,系统应该满足以下的性能需求:

首先,采用开放、动态的系统架构,将传统的考试模式与先进的网络应用相结合。

在考试之前建立有关学科的试题库,并设置考试参数和信息。

其次,由于考试是面向特定的某些对象,所以考生进入系统应该进行身份验证。

考生进入考试系统后,应该能根据自己的需要选择考试科目,所以该系统还应具有考试科目选择的功能。

在线考试与一般的单机考试是不同的。

鉴于考试环境一般为机房,考试者之间的距离很近,为了在线考试的规范性,对于每个应试者来说,试卷的题型和题量都应是相同的,但试题并不相同。

在线考试基于网络环境,试卷应该从服务器的试题库随机抽取试题后动态生成的。

考虑到本考试系统的实用性,从考试内容设计上,题型不能单一,既要有选择题、判断题等客观题,又要有填空题、简答题等主观题。

所以一定要考虑题型在数据库中的保存及主观题和客观题的评分问题。

另外,系统还应该对考试时间进行控制,时间到了会要求考试者交卷。

考试者选择提交后,应该由计算机自动判卷,并将成绩保存。

考试完毕后,可以返回登录界或继续考试。

考试系统还应当根据考试情况对试题区分度、难度进行评估,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1