基于interent的考试系统毕业设计论.doc_第1页
基于interent的考试系统毕业设计论.doc_第2页
基于interent的考试系统毕业设计论.doc_第3页
基于interent的考试系统毕业设计论.doc_第4页
基于interent的考试系统毕业设计论.doc_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕业设计(论文)基于internet的考试系统学 院: 计算机学院专 业: 姓 名: 指导老师: 计算机科学与技术 学 号: 职 称: 讲师二一一年五月XXXXXXXXX学院毕业设计诚信承诺书本人郑重承诺:我所呈交的毕业设计基于Internet的考试系统是在指导教师的指导下,独立开展研究取得的成果,文中引用他人的观点和材料,均在文后按顺序列出其参考文献,设计使用的数据真实可靠。承诺人签名: 日期: 年 月 日北京理工大学珠海学院2011届本科生毕业设计基于internet的考试系统 摘 要 随着计算机技术的迅猛发展,学校教学和管理的信息化发展也有长足的进步,这就要求各个环节都均衡发展,从软硬件双方面把学校建设成一流的信息管理、教育教学的平台。本文设计开发的考试管理系统也是其中重要的一个方面。该系统本着减轻教师工作负担、提高工作效率、优化学生考试的流程,增强参加考试学生的身份识别,比传统的考试模式节省人力财力和时间。 系统分为三大模块:用户注册模块、考试模块和系统管理模块。其中系统管理模块是进行题目的添加、存储和删除,是系统运行的基础;查询子模块实现了对学生考试信息远程查询。考试模块是客户端学生或教师通过自己的姓名和学号以及密码登陆系统,进入界面时由系统按照出题教师预先设置好的试卷结构从题库中随机抽取适合的题目,形成试卷。 关键词:考试 试卷 自动 系统 ASP DESIGN OF EXAM SYSTEM BASED ON THE INTERNET ABSTRACT With the rapid development of computer technology, school teaching and management of information technology development has made great progress, which requires a balanced development of all aspects, from hardware and software both sides School put information into a first-class management, education and teaching platform. In this paper, design and development of test management system is one of important aspect. The system is based on reducing the workload of teachers, improve work efficiency, and optimize the flow of students in examinations, and enhance the students take part in the examination of identity recognition, than the traditional mode of examination to save human and financial resources and time.System is divided into three modules: User Registration module, test module and system management module. One of system management module is to add a topic, store and delete, are the basic system is running; query module the students achieve a remote query exam information. Examination module is a client of students or teachers, through their own name and study number, and password login system, to enter the interface by the system in accordance with pre-set questions of teachers from the best papers in the structure of randomly selected questions suitable topic papers formed.Keywords: automated system ASP exam papers目 录摘要IABSTRACTII引言1 1系统设计相关原理3 1.1 ASP技术介绍3 1.2 Access数据库介绍51.2.1 Access数据库的用途5 1.2.2 Access数据库的优点61.3 ASP与Access数据库链接7 1.4 ASP查询Access数据库72需求分析9 2.1 系统需要解决的主要问题9 2.2 系统应该具备的基本功能93 系统总体设计103.1基本简介10 3.2运行环境与系统结构103.3系统结构图113.4 详细设计 113.4.1试题设计113.4.2数据库详细设计113.4.3功能模块详细设计164 系统实现184.1 系统流程图设计 18 4.2 各文件功能介绍及详解 184.2.1 18 4.2.220 4.2.3234.2.4244.2.526 4.2.6294.2.730 4.2.8334.2.9365.结论40结束语40参考文献41谢 辞4242 引 言随着技术的飞速发展,现在很多国外的大学和社会其他部门都已经开设了教学,通过计算机实现异地教育和培训。现在,计算机硬件技术的发展已经达到了相当高的水平。但是,教学软件的开发目前还处于起步阶段,随着这项技术的不断深入发展,就要求有更好、更完善的软件系统应用到教学当中去,这就给软件设计人员提出了更高的设计要求。教学包括很多环节,例如教学系统、答疑系统和考试系统等等。其中很重要的一个环节就是基于Internet的考试系统,同时它也是最难实现的环节。在我国,虽然教学已经蓬勃地发展起来,但是目前学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。随着计算机应用的迅猛发展,应用不断扩大,如教学和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。人们迫切要求利用这些技术来进行考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证、客观,更加激发学生的学习兴趣。例如目前许多国际著名的计算机公司所举办的各种认证考试绝大部分采用这种方式。基于Internet考试是现阶段研究开发的一个热点。它是建立在国际互联网上的应用系统,客户端的配置可以极为简单,使考试不受地域的局限。一个完备的考试系统可以使用户在网上学习过后及时检验自己的学习效果,已发现自己的不足,使得学习效率得到很大提高。在考试系统中题目的生成、试卷的提交、成绩的批阅等都可以在internent上自动完成。只要形成一套成熟的题库就可以实现考试的自动化。这样一来,教师所要做的只是精心设计题目、维护题库,而不是组织考试,从而大大减轻了教师的负担,这表明其经济性是相当可观的。为了适应新形势的发展,我进行了这一系统的初步设计工作,也可以说是做一个初步的探索,希望它能够在各类考试中发挥高效、便捷的作用,把老师从繁重的工作中解脱出来。目前,应用软件运行的模式主要有二类:Client/server模式,Browser/Web模式。前者主要的缺点是维护、升级较麻烦,后者是近几年伴随Internet迅速发展起来的一种技术,它与客户/服务器方式类似,客户端是一个标准的浏览器,服务器端是Web Server ,而Web Server与数据库和应用服务器的紧密结合,使得这种模式的应用范围不断扩大,它已不仅仅用于网上查询,有很多部门的业务系统、企业的MIS系统纷纷采用这种模式,它的主要优点是便于扩充应用、升级维护简便。另外,考试系统的软件也必将不断的更新;同时软件产品本身就要经过一个不断自我完善的过程。基于上述考虑,用Browser/Web模式来设计考试系统比较合适,服务器端我们采用Access数据库系统和ASP组件来构成考试的应用服务系统;客户端采用浏览器来完成考试全过程,同时可进行远程系统维护和管理。利用和数据库技术,结合目前硬件价格普遍下跌与宽带网大力建设的有利优势,应用Active Server Page技术,我开发了基于B/S模式多用户在线考试系统这一程序。它运用方便、操作简单,效率很高(同时,它要求计算机配置也很高,尤其是服务器端)。现阶段虽只实现了试卷的客观题部分,但已具有用户注册、多用户同时在线考试、动态随机出题、时间控制、自动判卷,试题录入、修改题库、用户管理、科目管理、管理员管理、分数管理等重要功能,也就是说实现了真正的无纸化考试,满足任何授权的考生随时随地考试并迅速获得成绩,同时也大大减轻了教师出题、出题和判卷等繁重的工作量。 1 系统设计相关原理该在线考试系统主要采用ASP、HTML、Access数据库、VBScript、SQL等技术和工具,整体设计遵循软件工程的方法,经过需求分析、总体设计、文档和代码的编制、模块测试和系统实现几个阶段。下面就对这几种技术和方法做一个概述。1.1 ASP技术介绍Microsoft Active Server Pages 即我们所称的ASP,其实是一套微软开发的服务器端脚本环境。Active Server Page 是创建动态网页的一个很好的工具,它起一种编程语言的作用,可以利用它编写动态产生HTML的程序代码。因此,只要用户浏览Web站点并请求一个ASP页,Web服务器就可以处理相应的ASP代码,生成HTML代码,然后将它传递到用户浏览器并显示出网页。ASP内含于IIS3.0和6.0之中,通过ASP我们可以结合HTML网页、ASP指令和ActiveX元件建立动态、交互且高效的WEB服务器应用程序。有了ASP就不必担心客户的浏览器是否能运行所编写的代码,因为所有的程序都将在服务器端执行,包括所有嵌在普通HTML中的脚本程序。当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。以下罗列了ASP所独具的一些特点:1.使用VBScript 、JScript等简单易懂的脚本语言,结合HTML代码,即可快速地完成网站的应用程序。2.无须编译,容易编写,可在服务器端直接执行。3.使用普通的文本编辑器,如Windows的记事本,即可进行编辑设计。4.与浏览器无关,用户端只要使用可执行HTML码的浏览器,即可浏览ASP所设计的网页内容。ASP所使用的脚本语言(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.ActiveX Server Components(ActiveX服务器元件)具有无限可扩充性。可以使用Visual Basic 、Java 、Visual C+ 、COBOL等编程语言来编写你所需要的ActiveX Server Component。10.另外,ASP技术的处理速度相当快,并且其安全性也很高。ASP最重要的优点是能够建立对诸如时间、地点、用户标志、以前的选择和活动等因素敏感的页面。换句话说,可针对每个用户的个别需求,用ASP定制网页,能够满足用户的各种需求。总之,ASP包含三方面含义:1.Active:ASP使用了微软的ActiveX技术。ActiveX(COM)技术是现在Microsoft软件的重要基础。它采用封装对象,程序调用对象的技术,简化编程,加强程序间合作。ASP本身封装了一些基本组件和常用组件,有很多公司也开发了很多实用组件。只要你可以在服务器上安装这些组件,通过访问组件,你就可以快速、简易地建立自己的WEB应用。2.Server:ASP运行在服务器端。这样就不必担心浏览器是否支持ASP所使用的编程语言。ASP的编程语言可以是VBSCRIPT和JSCRIPT。VBSCRIPT是VB的一个简集,会VB的人可以很方便的快速上手。然而Netscape浏览器不支持客户端的VBSCRIPT,所以最好不要在客户端使用VBSCRIPT。而在服务器端,则无需考虑浏览器的支持问题。Netscape浏览器也可以正常显示ASP页面。3.Pages:ASP返回标准的HTML页面,可以正常地在常用的浏览器中显示。浏览者查看页面源文件时,看到的是ASP生成的HTML代码,而不是ASP程序代码。这样就可以防止别人抄袭程序。与一般的程序不同,ASP程序无须编译。ASP程序的控制部份,是使用VBScript、JScript等脚本语言来设计的,当执行ASP程序时,脚本程序将一整套命令发送给脚本解释器(即脚本引擎),由脚本解释器进行翻译并将其转换成服务器所能执行的命令。当然,同其他编程语言一样,ASP程序的编写也遵循一定的规则,如果你想使用你所喜爱的脚本语言编写ASP程序,那么你的服务器上必须要有能解释这种脚本语言的脚本解释器。当你安装ASP时,系统提供了两种脚本语言:VBSrcipt和JScript,而VBScript则被作为系统默认的脚本语言。ASP程序其实是以扩展名为.asp的纯文本形式存在于WEB服务器上的,可以用任何文本编辑器打开它,ASP程序中可以包含纯文本、HTML标记以及脚本命令。只需将.asp程序放在Web服务器的虚拟目录下(该目录必须要有可执行权限),就可以通过WWW的方式访问ASP程序了。要学好ASP程序的设计,必须掌握脚本的编写,那么究竟什么是脚本呢?其实脚本是由一系列的脚本命令所组成的,如同一般的程序,脚本可以将一个值赋给一个变量,可以命令Web服务器发送一个值到客户浏览器,还可以将一系列命令定义成一个过程。要编写脚本,你必须要熟悉至少一门脚本语言,如VBScript。脚本语言是一种介于HTML和诸如JAVA、Visual Basic、C+等编程语言之间的一种特殊的语言,尽管它更接近后者,但它却不具有编程语言复杂、严谨的语法和规则。如前所述ASP所提供的脚本运行环境可支持多种脚本语言,譬如:JScript、REXX、PERL等等,这无疑给ASP程序设计者提供了广泛的发挥余地。ASP的出现使得广大Web设计者不必在为客户浏览器是否支持而担心,实际上就算在同一个.asp文件中使用不同的脚本语言,都无须为此担忧,因为所有的一切都将在服务器端进行,客户浏览器得到的只是一个程序执行的结果,而你也只需在文件中声明使用不同的脚本语言即可。ASP的对象和组件:1.ASP有7个固有对象这7个固有对象分别是Request、Response、Server、Application、Session、ASPError和ObjectContext。2.Microsoft Data Access ComponentMDAC作为操作系统的组成部分的组件,与ASP一起提供。此组件中包含一组称为ActiveX Data Object(ADO)的对象,他们对于查看不同平台上的各种数据(数据库、表单、文本文件)是必不可少的。ADO主要有3个对象,分别是Connection、Command和Recordset。3.活动服务器组件活动服务器组件是与ASP一起免费带来的组件或DLL,他们有着广泛的用途。主要包括AD Rotator、Browser Capabilities、Content Link、Content Rotator、Counters、logging Utility、MyInfo、Page Counter、permission Checker、tools等组件。由于本次设计用到的不多,在此就不详细介绍了4.ASP脚本对象他们分别是Dictionary、FileSystemObject和TextStream.由于本设计用到的也不多,在此就不详细介绍了。1.2 Access数据库介绍 Microsoft Office Access是由微软发布的关联式数据库管理系统。是一款操作简单,易学的数据库。它结合了 Microsoft Jet Database Engine 和 图形用户界面两项特点,是 Microsoft Office 的系统程式之一。Assess能够存取 Access/Jet、Microsoft SQL Server、Oracle,或者任何 ODBC 兼容数据库内的资料。熟练 Microsoft Office Access的软件设计师和资料分析师利用它来开发应用软件,而一些不熟练的程序员和非程序员的进阶用户则能使用它来开发简单的应用软件。1.2.1 Access数据库用途 Microsoft Access在很多地方得到广泛使用,例如小型企业,大公司的部门,和喜爱编程的开发人员专门利用它来制作处理数据的桌面系统。它也常被用来开发简单的WEB应用程序这些应用程序都利用ASP技术在Internet Information Services运行。比较复杂的WEB应用程序则使用PHP/MySQL或者ASP/Microsoft SQL Server它的使用方便程度和强大的设计工具为初级程序员提供许多功能。不过,这种便于使用可能使人误解。这类开发者都是没有在应用或者数据设计方面训练的办公室从业人员。因此许多人以为这样的开发者能够创造可用的系统,但也有很多人认为工具本身的局限性产生了这样的误导。一些专业的应用程序开发人员使用 Access 用作快速应用开发,特别是给街道上的推销员制作一个初型或独立应用程序的工具。可是如果是透个网络存取数据的话,Access 的可扩放性并不高因此当程序被较多使用者使用时,他们的选择多会是倾向于一些客户端-服务器为本的方案,例如 Oracle、DB2、Microsoft SQL Server、Windows SharePoint Services、PostgreSQL、MySQL、Alpha Five、MaxDB,或者Filemaker。无论如何,不少 Access 的功能(表单,报告,序列和VB代码)可以用作其他数据库的后期应用,包括 JET(档案为主的数据库引擎,Access 缺省使用)、Microsoft SQL Server、Oracle和任何其他跟ODBC兼容的产品。这种方法允许开发者把一个成熟的应用的数据移动到一台更大功率的服务器而没有已经在适当的位置牺牲发展。很多开发者谁使用Microsoft Access使用Leszynski命名约定,虽然这不普遍;它是一次编程大会,并非一个DBMS实施的规章。1.2.2 Access数据库优点 Access 是微软公司推出的基于Windows的桌面关系数据库管理系统(RDBMS),是Office系列应用软件之一。它提供了表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。Access是一种关系型数据库管理系统,其主要特点如下:(1)存储方式单一Access管理的对象有表、查询、窗体、报表、页、宏和模块,以上对象都存放在后缀为(.mdb)的数据库文件种,便于用户的操作和管理。(2)面向对象Access是一个面向对象的开发工具,利用面向对象的方式将数据库系统中的各种功能对象化,将数据库管理的各种功能封装在各类对象中。它将一个应用系统当作是由一系列对象组成的,对每个对象它都定义一组方法和属性,以定义该对象的行为和外国,用户还可以按需要给对象扩展方法和属性。通过对象的方法、属性完成数据库的操作和管理,极大地简化了用户的开发工作。同时,这种基于面向对象的开发方式,使得开发应用程序更为简便。(3)界面友好、易操作Access是一个可视化工具,是风格与Windows完全一样,用户想要生成对象并应用,只要使用鼠标进行拖放即可,非常直观方便。系统还提供了表生成器、查询生成器、报表设计器以及数据库向导、表向导、查询向导、窗体向导、报表向导等工具,使得操作简便,容易使用和掌握。(4)集成环境、处理多种数据信息Access基于Windows操作系统下的集成开发环境,该环境集成了各种向导和生成器工具,极大地提高了开发人员的工作效率,使得建立数据库、创建表、设计用户界面、设计数据查询、报表打印等可以方便有序地进行。(5)Access支持ODBC(开发数据库互连,Open Data Base Connectivity),利用Access强大的DDE(动态数据交换)和OLE(对象的联接和嵌入)特性,可以在一个数据表中嵌入位图、声音、Excel表格、Word文档,还可以建立动态的数据库报表和窗体等。Access还可以将程序应用于网络,并与网络上的动态数据相联接。利用数据库访问页对象生成HTML文件,轻松构建Internet/Intranet的应用。1.3 ASP与Access数据库链接1.4 ASP查询ACCESS数据库1. ASP查询ACCESS数据的常用语句1).SELECT 语句:命令数据库引擎从数据库里返回信息,作为一组记录。2)INSERT INTO 语句:添加一个或多个记录至一个表。3)UPDATE 语句:创建更新查询来改变基于特定准则的指定表中的字段值。4)DELETE 语句:创建一个删除查询把记录从 FROM 子句列出并符合 WHERE 子句的一个或更多的表中清除。5)EXECUTE 语句:用于激活 PROCEDURE(过程)2.建立记录集对象setrs=server.createobject(adodb.recordset)rs.openSQL语句,conn,3,23.ACCESS数据库常用命令使用方法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值22)更新数据记录:sql=update数据表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)数据记录统计函数:COUNT(*字段名)对数据行数的统计或对某一栏有值的数据行数统计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将记录指针从当前的位置向上移一行rs.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添加记录到数据表末端rs.update更新数据表记录2 需求分析要实现一个软件系统,首先应该进行需求分析,这样才能令设计出的软件满足用户的各项功能。下面就对在线考试系统的设计进行需求分析。2.1 系统需要解决的主要问题首先,因为考试是面向特定的某些对象的,所以考试者进入系统应该进行身份验证。考试者进入考试系统后,应该能根据自己的需要选择考试科目,所以该系统还应具有考试科目选择的功能。在线考试于一般的单机考试是不同的。鉴于考试环境一般为机房,考试者之间的距离很近,为了在线考试做到规范,对于每个应试者来说,试卷的试题和题量都应是相同的,但试题并不相同。在线考试基于环境,试卷应该从服务器的数据库随机抽取试题后动态生成的。另外,系统还应该对考试时间进行控制,时间到了会要求考试者交卷。考试者选择答案提交后,应该由计算机自动判卷,得到成绩后显示出来。考试完毕后,可以返回登录界面或继续考试。此外,应该能够方便、快捷的对在线考试系统管理,此外,用户还应能进行远程注册。2.2 系统应该具备的基本功能 用户注册:用户可以进行注册,然后登录。用户信息的管理:管理员可以增删用户试题模型设置:设置各科目试题的每种题型的数量和分值。试题库管理:分科目,对单选、多选两种题型试题库的管理,使试题的增删、编辑更为简便。试卷生成:可以指定试卷的各题型的数量,从试题库里随机抽取试题生成一份原始试卷。在线考试:系统严格控制整个考试过程,实行时间的监控与权限的控制,考生需要在限定的考试时间内交卷。 计算机自动阅卷:本系统只考虑客观题,要求计算机能自动阅卷,然后马上显示出考生分数。成绩查阅:考生考完以后,管理员应该能对所有纪录进行查询,并应该可以删除指定纪录。3 系统总体设计3.1基本简介 基于Internet考试系统适用于远处教育的方式,参加考试的学生不需要聚集在一个考场内进行考试。学生使用教师或者考试管理员分配的账号登录考试系统,然后选择需要参加的考试科目。选定考试科目后,开始答题。系统自动计算学生已经参考的时间,如果在考试时间内没有答完试卷,系统自动交卷。交卷后,系统马上批阅试卷,并给出考试结果。3.2运行环境与系统结构 基于internet考试系统前台基于asp设计而成,后台基于acess数据库。整个系统采用Browser/Web/DataBase的3层体系结构。Browser/Server的系统中,用户可以通过浏览器向分布在网络上的服务器发出请求,服务器对浏览器的请求进行处理,将用户所需信息返回到浏览器。B/S结构简化了客户机的工作,客户机上只需配置Web浏览器即可。服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。浏览器发出请求,而其余如数据请求、加工、结果返回以及动态网页生成等工作全部由Web Server完成。在Browser/Server三层体系结构下,表示层(presentatioon)、功能层(business logic)、数据层(data service)被割成3个相对独立的单元。a) 第一层(表示层):Web浏览器。在表示层中包含系统的显示逻辑,位于客户端。它的任务是由Web浏览器向网络上的Web服务器提出服务请求,Web服务器对用户身份进行验证后用HTTP协议把所需的主页传送给客户端,客户机接受传来的主页文件,并把它显示在Web浏览器上,系统采用IE浏览器。b) 第二层(功能层):具有应用程序扩展功能的Web服务器。在功能层中包含系统的事务处理逻辑,位于Web服务器端。它的任务是接受用户的请求,首先需要执行相应的扩展应用程序与数据库进行连接,通过SQL等方式向数据库服务器提出数据处理申请,而后等数据库服务器将数据处理的结果提交给Web服务器,再由Web服务器传送回客户端。c) 第三层(数据层):数据库服务器。在数据层中包含系统的数据处理逻辑,位于数据库服务器端。它的任务是接受Web服务器对数据库操纵的请求,实现对数据库查询、修改、更新等功能,把运行结果提交给Web服务器。系统采用acess 2000数据库。3.3系统结构图后台管理管理员信息管理员信息系统判断题管理试卷管理考试系统管理学生信息管理unli成绩管理学生资料系统新生注册管理前台管理参加考试考试系统成绩显示 图3-1 系统结构图3.4 详细设计详细设计是整个设计过程中,最重要的步骤之一。下面就分如下几个部分对系统进行详细设计:(1)试题设计(2)数据库详细设计(3)功能模块详细设计3.4.1试题设计鉴于主观题的主观性,目前无法实现系统自动判卷,所以本系统只作客观题部分。一般情况下,单选题往往在四个供选的答案A、B、C、D中选择唯一正确的答案;3.4.2数据库详细设计 创建数据库用 Microsoft Access 建立一个名为 data.mdb 的空数据库在Windows中用鼠标左键双击Access图标,启动Access。并按以下步骤创建数据库:(1)从“文件”菜单选取“新建数据库”选项;(2)在文件名框中键入自定文件名(如DBI);(3)单击“创建”按钮,Access便会创建一个扩展名为MDB的数据库文件。在Access中,一个数据库应用有6个基本构成部分:表、查询、窗体、报表、宏和模块。现在它们都是空的。创建创建表单击数据库窗口上边的“表”选项卡,并单击“新建”按钮,会出现一个“新建表”对话框,双击其中的“设计视图”选项。表设计视图中每一行是对一个字段的详细定义。1)admin表结构 表3-1 admin表字段名称类型说明Name文本字段大小50Password文本字段大小50Id自动编号常整型,递增,主键各字段说明:name字段代表管理员的名字。password字段代表密码。id字段为管理员的标志号。 图3-2 admin表2)question表结构通常,每一类型的试题都应有一个表结构。但考虑到目前系统存贮空间可以很大,也为了更加方便。我们采用把全部试题集中在一起的方案来建立数据表,每道客观题均有四个备选答案项,字段名一般是相应的英文单词。这样,查询起来较方便,会节约时间,也不致于造成数据十分杂乱等。详细设计如下表所示: 表3-2 question 表 字段名称类型说明ID自动编号常整型,递增,主键Question文本字段大小200A文本字段大小50B文本字段大小50C文本字段大小50D文本字段大小50Answer文本字段大小50 type文本字段大小8subjectname文本字段大小8各字段说明:ID是问题的id号,用来唯一标志该问题,把它设为主键,类型为自动编号。Question字段为问题内容,类型为文本。A字段代表选项A的内容B字段代表选项B的内容C字段代表选项C的内容D字段代表选项D的内容Answer字段表示答案选项Type表示题目类型subjectname字段表示科目 图3-3 question表3) score表结构 表3-3 score表字段名称类型说明Studentname文本字段大小50subjectname文本字段大小50Score数字常整型Id自动编号常整型,递增,主键endtime日期/时间考生考试的时间各字段说明:studentname字段代表在某次考试记录中学生的名字。Subjectname 表示科目score字段为某次考试纪录中考试分数。id字段为某次考试纪录的标志号。endtime字段代表考试的结束时间。 图3-4 score表4)student表结构 表3-4 student表字段名称类型说明Studentname文本字段大小50studentpassword文本字段大小50id文本字段大小8各字段说明:studentname字段代表学生的名字。studentpassword字段代表密码。Id表示自动编号 图3-5 student表3.4.3 功能模块详细设计下面,对各个功能模块分别进行详细讨论,具体情况见系统源程序。 管理模块管理员可以向题库中添加各种类型且符合要求的试题,也可以对它们进行修改和删除。同时,管理员也能对科目、用户、考试记录等数据进行管理。1试题管理(1)试题录入首先,试题的录入是通过一个页面中的web服务器控件:GridView完成的。GridView控件是.net framework2.0新增加的一个数据绑定控件。它的功能比.net framework1.1中的DataGrid控件的功能进一步加强,并且效率也有所提高。(2)试题修改管理员还可以对试题进行修改。不过,对于各表中的主键不用修改,避免了造成系统中的数据混乱,或者覆盖其它有用数据的现象。如果用户执行了非法操作,则必须重新操作。对于对数据库数据的修改,在以前的asp页面中比较麻烦,要想修改一条记录,必须写很长的代码。在中,几乎可以不写一行代码,就可以对数据库记录进行修改。(3)试题删除管理员可以删除不再需要的试题。通过在每一条记录的后面放置一个button按钮并提示用户是否要删除,来完成试题的删除。2 用户管理管理员可以通过管理界面添加或删除用户。在线考试模块进入在线考场是本系统最重要的部分之一。因为一个系统如果涉及到现实的话,就必须考虑得十分周到、完善。考生登录后,只要选择考试科目以后,就可以调出试卷进行在线考试。系统所选的题是随机选出的,这样就会使每个考生的试卷都不同。考生的其答题信息通过单选按钮选择答案来反映。考试结束采取自主交卷的方式办法予以实现。系统会在考试时间结束前提示考生交卷。 4系统实现4.1 系统流程图设计普通用户登陆管理员登陆重新登陆注册用户进入系统进入系统答题系统自动评卷核对用户YN管理核对用户NY试题管理用户管理 图4-1 系统流程图4.2 各文件功能介绍及详解4.2.1% if Request.Form(submit)=登 录 then学生登录的处理 dim rs,sql set rs = server.createobject(adodb.recordset)sql=select * from student where studentname= & Request.Form(studentname) & and studentpassword= & Request.Form(studentpassword) & rs.open sql,conn,1,1if err.number0 then response.write 数据库操作失败:&err.descriptionelse if rs.bof and rs.eof thenresponse.write 对不起,请输入正确的用户名和密码。 rs.close elsers.closesession(studentname)=request.form(studentname)set rs=nothingcall endConnection()Response.Redirect selectsubject.aspend if end if用户注册 elseif Request.Form(submit)=

温馨提示

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

评论

0/150

提交评论