在线考试系统毕业答辩论文(共32页)

上传人:txadgkn****dgknqu... 文档编号:62384486 上传时间:2022-03-14 格式:DOC 页数:31 大小:102KB
收藏 版权申诉 举报 下载
在线考试系统毕业答辩论文(共32页)_第1页
第1页 / 共31页
在线考试系统毕业答辩论文(共32页)_第2页
第2页 / 共31页
在线考试系统毕业答辩论文(共32页)_第3页
第3页 / 共31页
资源描述:

《在线考试系统毕业答辩论文(共32页)》由会员分享,可在线阅读,更多相关《在线考试系统毕业答辩论文(共32页)(31页珍藏版)》请在装配图网上搜索。

1、在线考试系统毕业答辩论文在线考试系统毕业论文目录1:前言2:第一章 系统设计相关原理3:第二章 需求分析4:第三章 系统总体设计5:第四章 系统实现前言随着网络技术的飞速发展,现在很多国外的大学和社会其他部门都已经开设了远程教育,通过计算机网络实现异地教育和培训。现在,计算机硬件技术的发展已经达到了相当高的水平。但是,远程教育软件的开发目前还处于起步阶段,随着这项技术的不断深入发展,就要求有更好、更完善的软件系统应用到远程教育当中去,这就给软件设计人员提出了更高的设计要求。远程教育包括很多环节,例如教学系统、答疑系统和考试系统等等。其中很重要的一个环节就是在线考试系统,同时它也是最难实现的环节

2、。在我国,虽然远程教育已经蓬勃地发展起来,但是目前学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。随着计算机应用的迅猛发展,网络应用不断扩大,如远程教育和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。人们迫切要求利用这些技术来进行在线考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证、客

3、观,更加激发学生的学习兴趣。例如目前许多国际著名的计算机公司所举办的各种认证考试绝大部分采用这种方式。在线考试是现阶段研究开发的一个热点。它是建立在国际互联网上的应用系统,客户端的配置可以极为简单,使考试不受地域的局限。一个完备的在线考试系统可以使用户在网上学习过后及时检验自己的学习效果,已发现自己的不足,使得学习效率得到很大提高。在线考试系统中题目的生成、试卷的提交、成绩的批阅等都可以在网络上自动完成。只要形成一套成熟的题库就可以实现考试的自动化。这样一来,教师所要做的只是精心设计题目、维护题库,而不是组织考试,从而大大减轻了教师的负担,这表明其经济性是相当可观的。为了适应新形势的发展,我进

4、行了这一系统的初步设计工作,也可以说是做一个初步的探索,希望它能够在各类考试中发挥高效、便捷的作用,把老师从繁重的工作中解脱出来!目前,网络应用软件运行的模式主要有二类:Client/server模式,Browser/Web模式。前者主要的缺点是维护、升级较麻烦,后者是近几年伴随Internet迅速发展起来的一种技术,它与客户/服务器方式类似,客户端是一个标准的浏览器,服务器端是Web Server ,而Web Server与数据库和应用服务器的紧密结合,使得这种模式的应用范围不断扩大,它已不仅仅用于网上查询,有很多部门的业务系统、企业的MIS系统纷纷采用这种模式,它的主要优点是便于扩充应用、

5、升级维护简便。另外,考试系统的软件也必将不断的更新;同时软件产品本身就要经过一个不断自我完善的过程。基于上述考虑,用Browser/Web模式来设计考试系统比较合适,服务器端我们采用Access数据库系统和ASP组件来构成考试的应用服务系统;客户端采用浏览器来完成考试全过程,同时可进行远程系统维护和管理。利用网络和数据库技术,结合目前硬件价格普遍下跌与宽带网大力建设的有利优势,应用Active Server Page技术,我开发了基于B/S模式多用户在线考试系统这一程序。它运用方便、操作简单,效率很高(同时,它要求计算机配置也很高,尤其是服务器端)。现阶段虽只实现了试卷的客观题部分,但已具有用

6、户注册、用户个人信息修改、多用户同时在线考试、动态随机出题、时间控制、自动判卷,试题录入、修改题库、用户管理、试卷管理、分数管理等重要功能,也就是说实现了真正的无纸化考试,满足任何授权的考生随时随地考试并迅速获得成绩,同时也大大减轻了教师出题、出题和判卷等繁重的工作量。第一章 系统设计相关原理该在线考试系统主要采用ASP3.0、HTML、Access数据库、VBScript、JavaScript、SQL等技术和工具,以及整合当今流行的网页程序开发集成工具DreamWeaver,整体设计遵循软件工程的方法,经过需求分析、总体设计、文档和代码的编制、模块测试和系统实现几个阶段。下面就对这几种技术和

7、方法做一个概述。1.1 ASP技术介绍Microsoft Active Server Pages 即我们所称的ASP,其实是一套微软开发的服务器端脚本环境。Active Server Page 是创建动态网页的一个很好的工具,它起一种编程语言的作用,可以利用它编写动态产生HTML的程序代码。因此,只要用户浏览Web站点并请求一个ASP页,Web服务器就可以处理相应的ASP代码,生成HTML代码,然后将它传递到用户浏览器并显示出网页。ASP内含于IIS3.0和4.0之中,通过ASP我们可以结合HTML网页、ASP指令和ActiveX元件建立动态、交互且高效的WEB服务器应用程序。有了ASP就不必

8、担心客户的浏览器是否能运行所编写的代码,因为所有的程序都将在服务器端执行,包括所有嵌在普通HTML中的脚本程序。当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。以下罗列了ASP所独具的一些特点:1.使用VBScript 、JScript等简单易懂的脚本语言,结合HTML代码,即可快速地完成网站的应用程序。2.无须编译,容易编写,可在服务器端直接执行。3.使用普通的文本编辑器,如Windows的记事本,即可进行编辑设计。4.与浏览器无关,用户端只要使用可执行HTML码的浏览器,即可浏览ASP所设计的网页内容。ASP所使用的脚本语言(

9、VBScript 、Jscript)均在WEB服务器端执行,用户端的浏览器不需要能够执行这些脚本语言。5.ASP能与任何ActiveX scripting语言相容。除了可使用VBScript或JScript语言来设计外,还通过plug-in的方式,使用由第三方所提供的其他脚本语言,譬如REXX、Perl、Tcl等。脚本引擎是处理脚本程序的COM(Component Object Model)物件。6.ASP的源程序,不会被传到客户浏览器,因而可以避免所写的源程序被他人剽窃,也提高了程序的安全性。7.可使用服务器端的脚本来产生客户端的脚本。8.物件导向(Object-oriented)。9.Ac

10、tiveX Server Components(ActiveX服务器元件)具有无限可扩充性。可以使用Visual Basic 、Java 、Visual C+ 、COBOL等编程语言来编写你所需要的ActiveX Server Component。10.另外,ASP技术的处理速度相当快,并且其安全性也很高。ASP最重要的优点是能够建立对诸如时间、地点、用户标志、以前的选择和活动等因素敏感的页面。换句话说,可针对每个用户的个别需求,用ASP定制网页,能够满足用户的各种需求。总之,ASP包含三方面含义:1.Active:ASP使用了微软的ActiveX技术。ActiveX(COM)技术是现在Mic

11、rosoft软件的重要基础。它采用封装对象,程序调用对象的技术,简化编程,加强程序间合作。ASP本身封装了一些基本组件和常用组件,有很多公司也开发了很多实用组件。只要你可以在服务器上安装这些组件,通过访问组件,你就可以快速、简易地建立自己的WEB应用。2.Server:ASP运行在服务器端。这样就不必担心浏览器是否支持ASP所使用的编程语言。ASP的编程语言可以是VBSCRIPT和JSCRIPT。VBSCRIPT是VB的一个简集,会VB的人可以很方便的快速上手。然而Netscape浏览器不支持客户端的VBSCRIPT,所以最好不要在客户端使用VBSCRIPT。而在服务器端,则无需考虑浏览器的支

12、持问题。Netscape浏览器也可以正常显示ASP页面。3.Pages:ASP返回标准的HTML页面,可以正常地在常用的浏览器中显示。浏览者查看页面源文件时,看到的是ASP生成的HTML代码,而不是ASP程序代码。这样就可以防止别人抄袭程序。由此可以看出,ASP是在IIS下开发WEB应用的一种简单、方便的编程工具。在了解了VBSCRIPT的基本语法后,只需要清楚各个组件的用途、属性、方法,就可以轻松编写出自己的ASP系统。 运行 ASP 所需的环境如下:Microsoft Internet Information Server version 3.0/4.0 on Windows NT Ser

13、verMicrosoft Internet Information Server version 4.0/5.0 on Windows 2000 Professional ServerMicrosoft Personal Web Server on Windows 95/98与一般的程序不同,ASP程序无须编译。ASP程序的控制部份,是使用VBScript、JScript等脚本语言来设计的,当执行ASP程序时,脚本程序将一整套命令发送给脚本解释器(即脚本引擎),由脚本解释器进行翻译并将其转换成服务器所能执行的命令。当然,同其他编程语言一样,ASP程序的编写也遵循一定的规则,如果你想使用你所喜爱

14、的脚本语言编写ASP程序,那么你的服务器上必须要有能解释这种脚本语言的脚本解释器。当你安装ASP时,系统提供了两种脚本语言:VBSrcipt和JScript,而VBScript则被作为系统默认的脚本语言。ASP程序其实是以扩展名为.asp的纯文本形式存在于WEB服务器上的,可以用任何文本编辑器打开它,ASP程序中可以包含纯文本、HTML标记以及脚本命令。只需将.asp程序放在Web服务器的虚拟目录下(该目录必须要有可执行权限),就可以通过WWW的方式访问ASP程序了。要学好ASP程序的设计,必须掌握脚本的编写,那么究竟什么是脚本呢?其实脚本是由一系列的脚本命令所组成的,如同一般的程序,脚本可以

15、将一个值赋给一个变量,可以命令Web服务器发送一个值到客户浏览器,还可以将一系列命令定义成一个过程。要编写脚本,你必须要熟悉至少一门脚本语言,如VBScript。脚本语言是一种介于HTML和诸如JAVA、Visual Basic、C+等编程语言之间的一种特殊的语言,尽管它更接近后者,但它却不具有编程语言复杂、严谨的语法和规则。如前所述ASP所提供的脚本运行环境可支持多种脚本语言,譬如:JScript、REXX、PERL等等,这无疑给ASP程序设计者提供了广泛的发挥余地。ASP的出现使得广大Web设计者不必在为客户浏览器是否支持而担心,实际上就算在同一个.asp文件中使用不同的脚本语言,都无须为

16、此担忧,因为所有的一切都将在服务器端进行,客户浏览器得到的只是一个程序执行的结果,而你也只需在文件中声明使用不同的脚本语言即可。ASP的对象和组件:1.ASP有7个固有对象这7个固有对象分别是Request、Response、Server、Application、Session、ASPError和ObjectContext。Request对象用来处理用户做出的请求,就是处理用户要求浏览器查看特定的网页或Web应用时做出的请求。此请求可以HTML的形式输入或仅以URL的形式作出。Response对象用来处理从Web服务器向用户发送信息并对此信息进行控制。Serve对象用来代表服务器自身。因此它提

17、供几个与Web服务器可能要完成的任务相关的常用功能,诸如建立新对象和设置脚本的超时特性等。还有通过将不合法字符转化为合法字符,把字符串转换为URL和HTML正确的使用格式的方法。Application对象用来代表应用,可用它来管理诸如应用目录这一类的东西。Session对象用来代表用户会话,并存储该会话的信息。可利用Session对象来管理如Web服务器在用户“请求”之间等待的时间等。ObjectContext对象用来管理事务处理。它目前已经集成到Windows2000操作系统中了。它包含了所有ASP其他对象,可通过ObjectContext引用ASP的每个对象。ASPError对象包含ASP

18、脚本或asp.dll本身产生的任何错误的详细内容。2.Microsoft Data Access ComponentMDAC作为操作系统的组成部分的组件,与ASP一起提供。此组件中包含一组称为ActiveX Data Object(ADO)的对象,他们对于查看不同平台上的各种数据(数据库、表单、文本文件)是必不可少的。ADO主要有3个对象,分别是Connection、Command和Recordset。Connection对象就是使ADO与数据库之间建立一个通道,也就是实现与数据库的连接。Command对象就是对数据库进行发号施令,比如建立新的索引,执行查询等,它可以通过标准的SQL数据库操作

19、语言得以实现。Recordset对象是一个数据记录集,它包含了我们检索出来的记录数据,通过它可以直接对数据库进行修改。3.活动服务器组件活动服务器组件是与ASP一起免费带来的组件或DLL,他们有着广泛的用途。主要包括AD Rotator、Browser Capabilities、Content Link、Content Rotator、Counters、logging Utility、MyInfo、Page Counter、permission Checker、tools等组件。由于本次设计用到的不多,在此就不详细介绍了4.ASP脚本对象他们分别是Dictionary、FileSystemOb

20、ject和TextStream.由于本设计用到的也不多,在此就不详细介绍了。后记:笔者需要建议的一点就是:学ASP之前你得知道HTML、CSS、VBScript等小知识点,并且最好熟练地掌握它们。(注:学会它们的基础知识不是很难,本人就花了一个周看书外加四个通宵搞定。)除此之外,我还将附带最新的几个网络编程名词:Dhtml=Html+Css+VBScript+JavaScript,VRML,XML,XHTML,PHP,JSP,XSP等等不知何物的技术们,是不是发觉要学的太多了。1.2 SQL语句介绍SQL全称是“结构化查询语言(Structured Query Language)”,最早的是I

21、BM的圣约瑟研究实验室为其关系数据库管理系统SYSTEM R开发的一种查询语言,它的前身是SQUARE语言。SQL语言结构简洁,功能强大,简单易学,所以自从IBM公司1981年推出以来,SQL语言,得到了广泛的应用。如今无论是像Oracle ,Sybase,Informix,SQL server这些大型的数据库管理系统,还是像Visual Foxporo,PowerBuilder这些微机上常用的数据库开发系统,都支持SQL语言作为查询语言。Structured Query Language包含4个部分:数据查询语言DQL-Data Query Language SELECT据操纵语言DQL-D

22、ata Manipulation Language INSERT, UPDATE, DELETE 数据定义语言DQL-Data Definition Language CREATE, ALTER, DROP数据控制语言DQL-Data Control Language COMMIT WORK, ROLLBACK WORK 1.2.1 SQL的优点SQL广泛地被采用正说明了它的优点。它使全部用户,包括应用程序员、DBA管理员和终端用户受益非浅。1.非过程化语言SQL是一个非过程化的语言,因为它一次处理一个记录,对数据提供自动导航。SQL允许用户在高层的数据结构上工作,而不对单个记录进行操作,可操

23、作记录集。所有SQL 语句接受集合作为输入,返回集合作为输出。SQL的集合特性允许一条SQL语句的结果作为另一条SQL语句的输入。 SQL不要求用户指定对数据的存放方法。 这种特性使用户更易集中精力于要得到的结果。所有SQL语句使用查询优化器,它是RDBMS的一部分,由它决定对指定数据存取的最快速度的手段。查询优化器知道存在什么索引,哪儿使用合适,而用户从不需要知道表是否有索引,表有什么类型的索引。 2.统一的语言SQL可用于所有用户的DB活动模型,包括系统管理员、数据库管理员、 应用程序员、决策支持系统人员及许多其它类型的终端用户。基本的SQL 命令只需很少时间就能学会,最高级的命令在几天内

24、便可掌握。 SQL为许多任务提供了命令,包括:查询数据在表中插入、修改和删除记录 建立、修改和删除数据对象 控制对数据和数据对象的存取 保证数据库一致性和完整性 以前的数据库管理系统为上述各类操作提供单独的语言,而SQL将全部任务统一在一种语言中。3.是所有关系数据库的公共语言由于所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RDBMS转到另一个。所有用SQL编写的程序都是可以移植的。SQL是PostgreSQL(和大多数其它关系型数据库)用做查询语言的语言。它是可以移植的,并且容易学习使用。但是所有SQL语句都必须由数据库服务器独立地执行。这就意味着客户端应用必

25、须把每条查询发送到数据库服务器,等待它处理这个查询,接收结果,做一些运算,然后给服务器发送另外一条查询。所有这些东西都会产生进程间通讯,并且如果客户端在另外一台机器上甚至还会导致网络开销。如果使用了 PL/pgSQL,那么可以把一块运算和一系列查询在数据库服务器里面组成一个块,这样就拥有了过程语言的力量并且简化SQL的使用,因而节约了大量的时间,因为用不着付出客户端/服务器通讯的过热。通过使用PL/pgSQL,应用可以获得可观的性能提升。 1.2.2 SQL的使用1. ASP与Access数据库连接:2.ASP与SQL数据库连接:建立记录集对象:setrs=server.createobjec

26、t(adodb.recordset)rs.openSQL语句,conn,3,23.SQL常用命令使用方法:(1)数据记录筛选:sql=select*from数据表where字段名=字段值orderby字段名descsql=select*from数据表where字段名like%字段值%orderby字段名descsql=selecttop10*from数据表where字段名orderby字段名descsql=select*from数据表where字段名in(值1,值2,值 3)sql=select*from数据表where字段名between值1and值2(2)更新数据记录:sql=update

27、数据表set字段名=字段值where条件表达式sql=update数据表set字段1=值1,字段2=值2字段n=值nwhere条件表达式(3)删除数据记录:sql=deletefrom数据表where条件表达式sql=deletefrom数据表(将数据表所有记录删除)(4)添加数据记录:sql=insertinto数据表(字段1,字段2,字段3)values(值1,值2,值3)sql=insertinto目标数据表select*from源数据表(把源数据表的记录添加到目标数据表)(5)数据记录统计函数:AVG(字段名)得出一个表格栏平均值COUNT(*字段名)对数据行数的统计或对某一栏有值的数

28、据行数统计MAX(字段名)取得一个表格栏最大的值MIN(字段名)取得一个表格栏最小的值SUM(字段名)把数据栏的值相加引用以上函数的方法:sql=selectsum(字段名)as别名from数据表where条件表达式setrs=conn.excute(sql)用rs(别名)获取统的计值,其它函数运用同上。(5)数据表的建立和删除:CREATETABLE数据表名称(字段1类型1(长度),字段2类型2(长度)DROPTABLE数据表名称(永久性删除一个数据表)4.记录集对象的方法:rs.movenext将记录指针从当前的位置向下移一行rs.moveprevious将记录指针从当前的位置向上移一行r

29、s.movefirst将记录指针移到数据表第一行rs.movelast将记录指针移到数据表最后一行rs.absoluteposition=N将记录指针移到数据表第N行rs.absolutepage=N将记录指针移到第N页的第一行rs.pagesize=N设置每页为N条记录rs.pagecount根据pagesize的设置返回总页数rs.recordcount返回记录总数rs.bof返回记录指针是否超出数据表首端,true表示是,false为否rs.eof返回记录指针是否超出数据表末端,true表示是,false为否rs.delete删除当前记录,但记录指针不会向下移动rs.addnew添加记录

30、到数据表末端rs.update更新数据表记录1.3 VBScript介绍Microsoft Visual Basic Scripting Edition是程序开发语言Visual Basic家族的最新成员,它将灵活的Script应用于更广泛的领域,包括Microsoft Internet Explorer中的 Web 客户机 Script 和 Microsoft Internet Information Server 中的 Web 服务器 Script。VBScript使用ActiveX Script与宿主应用程序对话。使用ActiveX Script,浏览器和其他宿主应用程序不再需要每个Sc

31、ript部件的特殊集成代码。ActiveX Script使宿主可以编译Script、获取和调用入口点及管理开发者可用的命名空间。通过ActiveX Script,语言厂商可以建立标准Script运行时语言。Microsoft将提供VBScript的运行时支持。Microsoft正在与多个Internet组一起定义ActiveX Script标准以使Script引擎可以互换。ActiveX Script可用在Microsoft Internet Explorer和Microsoft Internet Information Server中。VBScript只有一种数据类型,称为Variant。V

32、ariant 是一种特殊的数据类型,根据使用的方式,它可以包含不同类别的信息。因为Variant是VBScript中唯一的数据类型,所以它也VBScript 中所有函数的返回值的数据类型。最简单的Variant可以包含数字或字符串信息。Variant用于数字上下文中时作为数字处理,用于字符串上下文中时作为字符串处理。这就是说,如果使用看起来象是数字的数据,则VBScript会假定其为数字并以适用于数字的方式处理。与此类似,如果使用的数据只可能是字符串,则VBScript将按字符串处理。当然,也可以将数字包含在引号()中使其成为字符串。除简单数字或字符串以外,Variant可以进一步区分数值信息

33、的特定含义。例如使用数值信息表示日期或时间。此类数据在与其他日期或时间数据一起使用时,结果也总是表示为日期或时间。当然,从Boolean值到浮点数,数值信息是多种多样的。Variant包含的数值信息类型称为子类型。大多数情况下,可将所需的数据放进Variant中,而Variant也会按照最适用于其包含的数据的方式进行操作。声明变量的一种方式是使用Dim语句、Public语句和Private语句在Script中显式声明变量。另一种方式是通过直接在Script中使用变量名这一简单方式隐式声明变量。这通常不是一个好习惯,因为这样有时会由于变量名被拼错而导致在运行Script时出现意外的结果。因此,最

34、好使用Option Explicit语句显式声明所有变量。 1.过程 在VBScript中,过程被分为两类:Sub过程和Function过程。 (1)Sub过程Sub过程是包含在Sub和End Sub语句之间的一组VBScript语句,执行操作但不返回值。Sub过程可以使用参数(由调用过程传递的常数、变量或表达式)。(2)Function过程Function过程是包含在Function和End Function语句之间的一组VBScript语句。Function过程与Sub过程类似,但是Function过程可以返回值。Function过程可以使用参数(由调用过程传递的常数、变量或表达式)。如果

35、Function过程无任何参数,则Function语句必须包含空括号()。Function过程通过函数名返回一个值,这个值是在过程的语句中赋给函数名的。Function 返回值的数据类型总是Variant。2.VBScript中可使用下列循环语句:Do.Loop:当(或直到)条件为True时循环。While.Wend:当条件为True时循环。For.Next:指定循环次数,使用计数器重复运行语句。For Each.Next:对于集合中的每项或数组中的每个元素,重复执行一组语句。3.在VBScript中可使用以下条件语句:If.Then.Else 语句Select Case 语句第二章 需求分析

36、要实现一个软件系统,首先应该进行需求分析,这样才能令设计出的软件满足用户的各项功能。下面就对在线考试系统的设计进行需求分析。2.1 系统需要解决的主要问题首先,因为考试是面向特定的某些对象的,所以考试者进入系统应该进行身份验证。考试者进入考试系统后,应该能根据自己的需要进行个人信息的修改、考试系统的进入,以及考分的查看。在线考试于一般的单机考试是不同的。鉴于考试环境一般为机房,考试者之间的距离很近,为了在线考试做到规范,对于每个应试者来说,试卷的试题和题量都应是相同的,但试题并不相同。在线考试基于网络环境,试卷应该从服务器的数据库随机抽取试题后动态生成的。另外,系统还应该对考试时间进行控制,时

37、间到了会要求考试者交卷。考试者选择答案提交后,应该由计算机自动判卷,得到成绩后显示出来。考试完毕后,可以返回登录界面或继续考试。此外,应该能够方便、快捷的对在线考试系统管理,此外,用户还应能进行远程注册。2.2 系统应该具备的基本功能用户注册:用户可以进行注册,然后登录。用户信息的修改:用户可以根据需要修改个人信息。用户信息的管理:管理员可以增删改用户。试卷模型设置:设置试题的每种题型的数量和分值以及考试的总时间。试题库管理:对单选、多选两种题型试题库的管理,使试题的增删、编辑更为简便。试卷生成:可以指定试卷的各题型的数量,从试题库里随机抽取试题生成一份原始试卷。在线考试:系统严格控制整个考试

38、过程,实行时间的监控与权限的控制,考生需要在限定的考试时间内交卷。 计算机自动阅卷:本系统只考虑客观题,要求计算机能自动阅卷,然后马上显示出考生分数。成绩查阅:考生考完以后,管理员应该能对所有纪录进行查询,并应该可以删除指定纪录。除了实现上述功能以外,在线考试系统还应该具有友好、简洁的界面,安全性要高,稳定性要强,能够满足人以上同时及进行在线考试。第三章 系统总体设计3.1基本简介该系统是专门用于用户注册、登录、参加在线考试以及管理员进行试题录入、修改、删除、成绩查询、管理用户的ASP应用程序。它应该具有开放性、方便性和灵活性。管理员可以轻松地向题库添加、修改和删除试题。考生进行有效的身份验证

39、登录后,选择进入考试系统,并要求在规定的时间内进行答题,当达到规定的时间后,系统将自动予以提示。一旦考生做完交卷后便能立即看到自己的考试成绩,并且其分数将被记入库中以供审核和查阅;另外,还可完全由计算机自动灵活、随机的抽取试题库中的各类试题组成各种形式的试卷,其内容会随着库中试题的改变而改变,而且,不同的考生生成的试题是不同的。用户可以是学校等单位的教师及学生和企事业单位的培训部门(因企事业单位每年要对员工进行素质、安全教育与技能等方面的培训及考试等)。3.2 运行环境与系统结构为了保证系统运行的效率和可靠性,系统服务器端应具有较高的软硬件配置,客户端的要求不是很高。此应用程序可广泛运行于国际

40、互联网即Internet,也可适用于内部的局域网。其运行要求如下:软件环境:客户端: Windows95/98,Internet Explorer(IE)等服务器端:Windows NT/Windows2000,Internet Information Server (IIS)4.0及其以上版本,IE等;或者Windows98,Personal Web Server(PWS),IE等。数据库:采用Access,运行于服务器端。硬件环境:服务器 CPU:PIII 500以上 ,内存:256M以上客户机 CPU:P200MMX以上,内存:32M以上 3.2 系统结构图根据需求分析,在线考试系统的结

41、构图如下:在线考试系统系统管理在线考试用户注册用户管理试卷管理纪录管理试题管理 图3-1 在线考试系统结构图3.3 详细设计 详细设计是整个设计过程中,最重要的步骤之一。下面就分如下几个部分对系统进行详细设计:(1)试题设计(2)数据库中表的设计(3)用户、管理员权限(4)功能模块详细设计(5)在线考试系统考试模块框图3.3.1试题设计鉴于主观题的主观性,目前无法实现系统自动判卷,所以本系统只作客观题部分。一般情况下,单选题往往在四个供选的答案A、B、C、D中选择唯一正确的答案;多选题是在供选答案中有多个选择;而判断题实质上就相当于有两个选项的单选题。因而,本系统中所涉及的单选题和多选题跟过去

42、的大体相同,由于时间的关系,判断题部分没有做。并且假设多选题一般情况下也是最多提供四个备选答案,标准答案至少有一个。故各题型的样题设计如下:单选题:password的意思是: A、密码 B、经过 C、单词 D、通路正确答案为A多选题:下面的表达式为真的有:A、12 B、7%5=2 C、sin(30)=1/2 D、Cint(7/5)=1正确答案为B、C、D3.3.2数据库中表的设计1.question表结构通常,每一类型的试题都应有一个表结构。但考虑到目前系统存贮空间可以很大,也为了更加方便。我们采用把全部试题集中在一起的方案来建立数据表,每道客观题均有四个备选答案项,每个试题均具有题型,分值等

43、数据段表示其属性。字段名一般是相应的英文单词。这样,查询起来较方便,会节约时间,也不致于造成数据十分杂乱等。但注意不要和数据库中的关键字重复。详细设计如下表所示:表3-1 question 表 字段名称类型说明ID自动编号常整型,递增,主键Haveselect数字常整型Question文本字段大小200A文本字段大小50B文本字段大小50C文本字段大小50D文本字段大小50Answer文本字段大小50Type文本字段大小50各字段说明:(1) ID是问题的id号,用来唯一标志该问题,把它设为主键,类型为自动编号。(2)haveselect字段代表在随机选题时是否已经被某用户选过,类型为数字。(

44、3)Question字段为问题内容,类型为文本。(4)A字段代表选项A的内容(5)B字段代表选项B的内容(6)C字段代表选项C的内容(7)D字段代表选项D的内容(8)Answer字段表示答案选项(9)Type字段表示试题类型2.subject表结构表3-2 subject表字段名称类型说明Multiper数字常整型Singleper数字常整型multinumber数字常整型singlenumber数字常整型Testtime数字常整型Id自动编号常整型,递增,主键各字段说明:(1)multiper字段代表在某考试科目的考试题中每个多选题的分值。(2)singleper字段代表在某考试科目的考试题

45、中每个单选题的分值。(3)multinumber字段为某科的多选题题量。(4)singlenumber字段为某科的多选题题量(5)testtime字段代表某科的考试总时间。3.score表结构表3-3 score表字段名称类型说明Studentname文本字段大小50Subjectname文本字段大小50Score数字常整型Endtime日期/时间各字段说明:(1)studentname字段代表在某次考试记录中学生的名字。(2)subjectname字段代表在某次考试纪录中考试科目名。(3)score字段为某次考试纪录中考试分数。(4)endtime字段代表考试的结束时间。4.student表

46、结构表3-4 student表字段名称类型说明name文本字段大小50pwd文本字段大小50repwd文本字段大小50truename文本字段大小50zcnumber数字长整型class文本字段大小50phone数字长整型mobile数字长整型email文本字段大小50url文本字段大小50power文本字段大小50各字段说明:(1)name字段代表学生的名字。(2)pwd字段代表密码。(3)repwd字段代表重复密码(4)truename字段代表学生真实姓名(5)zcnnumber字段代表学生的学号(6)class字段代表学生的班级(7)phone字段代表联系电话(8)mobile字段代表移

47、动电话(9)email字段代表电子邮件(10)url字段代表学生的个人网站(11)power字段代表学生的权限,默认值为student3.3.3 用户、管理员权限管理员:在本系统中只有一个管理员,即系统管理员。他们具有一般用户所没有的权限,即具有管理用户、试题以及试卷等内容的权力。它不需注册,在数据库中和学生的表放在一起,只不过学生的power值为student,而管理员为admin,而那些可以修改数据库的页面就是通过识别权限进入的。一般用户:主要是指学校的学生和企事业单位的培训对象等。其注册时默认的权限为student。3.3.4 功能模块详细设计下面,对各个功能模块分别进行详细讨论,按照录

48、入出卷进行考试等流程就六个模块分别进行详细讨论具体情况见系统源程序和演示。考虑到数据的保密与安全问题,凡进入系统的用户必须进行登录才能进入,否则不能进入。3.3.4.1 管理模块管理员可以向题库中添加各种类型且符合要求的试题,也可以对它们进行修改和删除。同时,管理员也能对用户、考试题目、考试记录等数据进行管理。1. 试题管理(1)试题录入每道试题有类型、试题内容与选项和答案等栏目。管理员输入完以后,即可看到预览效果。如果输入不合法,或者该科题库中已有该试题编号和内容等,则系统给出相应的提示或警告,以待更正。只要输入新增加的科目的详细名称和表名,即可有系统根据已设定好的字段自动建立新的科目考试表

49、。返回,刷新一次页面,就可看到新增的科目名称,而且,在本系统中其他需要选择科目的地方也会自动更新。(2)试题修改管理员还可以对试题进行修改。不过,对于各表中的主键不用修改,避免了造成系统中的数据混乱,或者覆盖其它有用数据的现象。如果用户执行了非法操作,则必须重新操作。(3)试题删除管理员可以删除不再需要的试题,同时也可增加相映的试题,同时对试题可以做任意的修改(updatatest.asp)。2.用户管理管理员可以通过管理界面添加,删除或修改用户和用户信息。3.考试记录管理系统中的管理员可以查询考试记录,也可以删除不需要的记录,学生可以查阅但是不可以修改和删除(权限不够)。4.考试试卷管理(a

50、dminshijuan.asp)包括试卷的考试时间,单选多选的题量以及单选多选的分值(设定试卷的各项数值).3.3.4.2在线考试模块进入在线考场是本系统最重要的部分之一。因为一个系统如果涉及到现实的话,就必须考虑得十分周到、完善。考生登录后,只要选择考试以后,就可以调出试卷进行在线考试。为了实现动态随机不重复的抽取试题,需要在选题过程中每选出一题,就要在试题库中作相应的标志,以便下次不会重复取出此题。试卷出来后要对试题库中的标志位复原。这样就会使每个考生的试卷都不同。考生的其答题信息通过单、复选按钮选择答案来反映。考试结束采取自主交卷和到了规定的时间自动题示有机结合的方式办法予以实现。3.3

51、.4.3用户注册模块该模块的功能是实现用户远程注册。用户输入想要注册的用户名、密码、重复密码、真实姓名和学号,提交之后由系统判断该用户是否已经存在,如果存在,就给出相应信息,如果不存在,就把用户输入的用户名和密码写到数据库中,完成注册。当然,在进入系统后,无论是系统管理员还是普通用户都可以修改更新自己的个人信息资料。(注:管理员权限)3.3.5 在线考试系统考试模块框图开 始输入用户名和密码是否正确否 是进入考试随机出题形成考试卷答题及交卷判 卷显示考分结 束 图3-2 在线考试系统考试模块框图第四章 系统实现在进行了整体设计以后,就开始进行详细的设计及编码工作。也就是设计文件和把他们有机地组

52、织在一起实现所有功能。4.1 系统流程图设计根据系统总体设计,首先系统要有一个登录界面,用户可以从该界面登录参加考试。管理员也可以从这里进入管理登录界面。此外,这个界面上还应该有一个用户注册的通道链接。在考生正确输入用户名和密码以后,接着应该进入个人信息页面。在该界面上,考生可以修改个人信息,也可以选择参加考试,这个人机交互的过程是必不可少的。考生确定考试以后,进入开始考试界面,由计算机随机提取试题,显示出来组成试卷,并开始进行计时。考生再次进行考试,答完试题后交卷,进入下一个界面。考生提交答卷后,由计算机进行处理-判卷,得出考试分数,显示出来,并把该生考试记录存入数据库。在这个界面上应该可以

53、返回继续进行考试或回到登录界面。以上是系统进行考试功能的部分,要对系统进行管理,如试题管理、用户管理等就需要设计一些管理界面。下面就来逐步进行设计。要进行管理首先要有管理员登陆验证,这里是和普通用户同一个界面,只不过我们设置了管理员的权限和在整个站点全程有效的Session变量。这在以后的管理员页面调用之前判断用户权限时很有作用。管理员登录以后,应该有一个管理项目选择界面,其中包括管理用户选项、管理试题库选项、管理试卷信息选项以及管理考试纪录选项。管理用户的界面可以实现用户的增加、删除和修改的功能,管理员在此可以对用户进行管理。管理试卷信息的界面包括了这场考试的时间,已经多少条单选题,多少条多

54、选题,还有单选多选各占的分值。管理考试纪录界面可以对考生的每次考试进行纪录,管理员可以对考生成绩、时间及考试各相关纪录进行查询和删除。最后是试题库管理界面,通过这个界面管理员可以对题库中的某科试题进行增加、修改或删除。这样就十分方便灵活的对试题库进行管理。下图就是系统流程图:register.asplogin.asploginok.asptest.aspresult.asp adminstu.aspadminloginok.aspadmintest.aspadminshijuan.aspadminscore.asp从注册开始到登录最后到考试再到成绩查看,结束。对题库的管理,可以增加答题数量,删

55、除不需要的题目。图4-1 系统流程图4.2 各文件功能介绍及详解1.该文件实现的是连接数据库和断开连接的功能。文件中主要是定义了两个过程Conn_init()和endConnection()。第一个:是连接数据库,第二个:是实现断开连接。其中conn_init()过程中的连接是通过下面语句实现的:connstr=DBQ= & server.mappath(data.mdb) & ;DRIVER=Microsoft Access Driver (*.mdb);set conn=server.createobject(ADODB.CONNECTION)conn.open connstrconnst

56、r确定了数据文件的路径和数据库驱动程序。Conn的含义是定义了一个变量用,来存放数据库连接所创建的对象。conn.open connstr则真正实现了数据库的连接。该文件主要被包含在其他文件中实现数据库的连接和断开功能。2.该文件的功能是系统登陆的入口,在此可以实现用户注册入口,管理员管理入口以及用户进入考试系统登陆界面的功能。3.该文件实现了用户注册的功能,用户只要填写想要注册的用户名及密码,为了保证密码的安全重要性,要求填写重复密码,并且检测两次密码是否一样,为了以后的忘记密码而设的查找密码页,还要求填写学号和真实姓名。文件首先查看用户名是否已经存在,如果存在就提示该用户名已经存在,否则就

57、将用户输入的信息添加到数据库中的student表内。然后用户就可以使用自己注册的用户名和密码登录在线考试系统进行在线考试。4.该文件是实现用户登录后个人相关信息页面,该文件实现的功能是管理员选择进行管理的项目,也就是管理主界面。普通用户进入后可以进行考试选择,选择后进入考试界面。考试界面文件中当用户按进入考试后,表单提交给test.asp。处理程序从subject表中选出这次考试的相关信息,并都设成session变量。Singlenumber表示单选试题数量,multinumber表示多选试题数量,singleper表示单选试题分值,multiper表示多选试题分值,testtime表示考试总

58、时间。接着进入考试界面。5.该文件实现对用户进行管理(删除或添加)的功能。是一保护页面,先识别用户的权限,否则跳转到6告知权限不够,请返回。6.该文件的功能是实现对考试试卷及相关参数(如考试时间、单选及多选题量和分值)进行管理。7.该文件的功能是对考试记录进行查询或删除。 8. 实现对试题库进行添加,修改和删除的功能。4.3调试过程中遇到的主要问题和解决办法在系统调试的过程中主要遇到一些比较零散的问题,做以下总结:1,设计数据库表时,对学号字段命名采用number,连接更新数据库时出现错误。和关键字重名,解决方法改number为zcnumber。2,如何实现在随机选题的同时保证不重复,本设计最

59、后使用了在question表中设置了一个haveselect字段来标志选过的纪录的办法来解决。3,如何将test.asp中所有试题的id号传到result.asp页中。因为试题数是变值,用一般的使用变量方式实行不通的。本设计采用了将id号以逗号分隔存在字符串变量中,然后到result.asp页面用split()函数拆开存放到数组中的办法进行解决。4,在显示数据库中内容时,当没有该项时会对版面的布局有影响,解决的办法是表格每一段加一空格。4.4 系统测试及实现后主要界面本系统进行各模块测试,经过修改和调整通过以后,进行总体测试。主要界面:题库管理(addnewtest.asp和updatates

60、t.asp)测试结果各项功能均已经或基本达到设计要求也许由于时间和专业知识的缺乏,如有不足望老师批评指出。several group number, then with b a, =c,c is is methyl b two vertical box between of accurate size. Per-23 measurement, such as proceeds of c values are equal and equal to the design value, then the vertical installation accurate. For example a, b, and c valueswhile on horizontal vertical errors for measurement, General in iron angle code bit at measurement level points grid errors, specific method is from baseline to methyl vertical box center line distance for a, to b

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!