网络工程专业精品毕业论文基于web的在线测试系统毕业设计教务系统学生成绩管理模块分析与设计_第1页
网络工程专业精品毕业论文基于web的在线测试系统毕业设计教务系统学生成绩管理模块分析与设计_第2页
网络工程专业精品毕业论文基于web的在线测试系统毕业设计教务系统学生成绩管理模块分析与设计_第3页
网络工程专业精品毕业论文基于web的在线测试系统毕业设计教务系统学生成绩管理模块分析与设计_第4页
网络工程专业精品毕业论文基于web的在线测试系统毕业设计教务系统学生成绩管理模块分析与设计_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

摘 要网络化考试是在互联网的基础上兴起的。随着WEB数据库技术的发展日趋成熟,国内的网络化考试正在逐渐兴起。在对WEB开发、ASP技术、数据库等进行了较深入的学习和应用的基础上,主要完成在线测试系统的需求分析、数据库设计、系统模块设计,并成功实现了该系统。该在线测试系统是一个小型的标准化测试系统,以组织客观、公正、科学合理的考试为目的。考生在注册后,可以在规定的期间内选择最佳状态时期参加考试,系统会为每一个考生分配相同难度系数下的不同试卷,测试结束,现场反馈测试结果; 管理员可以在任何一个地方进行试题结构、试题内容的维护、考生信息管理和评卷工作。本系统采用B/S结构,界面简洁,操作方便,安全可靠,达到了在线测试系统的基本要求,具有实际意义。关键词:在线测试 ASP AccessAbstractOnline testing developed based on the Internet. The examination of the domestic network is gradually rising with the maturity of WEB database technology day by day. With in-depth study and application in WEB, ASP technology, databases, etc, complete the needs analysis, database design and module design in main, and succeed in achieving implementation of the system.The online testing system is a small-scale standardized testing system, to organize an objective, impartial, scientific and reasonable examination for the purpose. After registration of candidates, you can choose the period stipulated in the best condition to participate in the examination period, the system will be allocated for each of the candidates under the same degree of difficulty of the different papers to test ,after finish the exam, the test results will be on-site feedback; Administrators can do the maintenance of test structure and the contents in any place, the management of students information, and marking work of examination. The system uses B / S structure, which is simple and easy to operate, safe and reliable to the online testing system of the basic requirements, and it is of practical significance.Key words: online testing; ASP; Access目录1. 绪论11.1 课题开发背景11.2 国内外研究现状11.3 研究目标和意义22. 开发环境与相关技术42.1 总体开发环境简介42.2 B/S模式简介52.3 ASP简介62.3.1 ASP技术特点62.3.2 ASP内置对象72.4 结构化查询语言(Structured Query Language)82.5 IIS简介83. 系统分析93.2 可行性分析103.3 系统需求分析103.3.1 业务流程分析103.3.2 数据流分析114. 系统设计134.1 数据库设计134.1.1 概念结构设计134.1.2 逻辑结构设计144.1.3 数据库建立与连接164.2 系统模块设计175. 系统实现205.1 系统实现概况205.2 系统功能实现215.2.1 文件结构图215.3 关键技术实现235.3.1 考生信息模块235.3.2 在线测试模块245.3.3 后台管理模块295.4 其他模块简介325.5 系统主界面335.5.1 系统首页335.5.2 考试界面345.4.3 管理界面356. 系统测试366.1 软件测试综述366.2 数据库测试366.2 系统测试用例设计366.2.1 单元测试376.2.2 组装测试376.2.3 确认测试376.3 测试结果分析377. 系统展望387.1 目前系统存在的问题387.2 系统改进方案及展望388. 结语39参考文献40致谢41411. 绪论1.1 课题开发背景纵观计算机化测试的研究和应用的历史,可以看到,随着计算机技术的发展,计算机在测试中的应用从当初单纯的判分,到IRT模型出现后的自适应考试,再到现在的基于网络的情境化、模拟化测试, 发挥的作用越来越大。试题的形式也在此过程中发生着变化,从固定在单一试卷中的试题发展到了可以自由组合的题库,再到现在的多媒体试题库。随着题库的建立,组卷变得方便了,测试的形式也发生着变化,由所有学生同考一张试卷的大规模的集体测试发展到了同一场考试使用等同考查效力的不同试卷的小组测试。 组织一次考试至少要经过五个步骤,即人工出卷、考生考试、人工阅卷、成绩评估和试卷分析。这种工作将是一件十分烦琐和容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。随着计算机应用的迅猛发展,网络应用不断扩大,远程教育和虚拟大学先后出现,并逐步深入到千家万户。人们迫切要求利用网络系统来进行在线考试,以减轻教师的工作负担提高工作效率,以达到提高考试的质量的目的,并使考试趋于公证、公平、客观,来激发学生的学习兴趣。在线测试系统的实现及应用是未来信息社会发展应用的一种趋势,在此本着探索的原则,设计一个简单的考试系统,既使原来的知识学有所用,又学到了新的知识,为向更高层次的学习和研究写下开端。1.2 国内外研究现状国际上,基于计算机的考试蓬勃发展,对于题库建设的理论研究不断深入,实用考试系统也层出不穷。美国心理协会在1986年出版了关于如何开发、使用计算机化考试以及解释考分的指南,成为了考试和软件开发者的事实标准。投入实际使用的例子有,1982年采有远距离教育方式的美国学院(American College)考试使用计算机进行测试;1993年美国教育考试中心(Eraduade Record Examination简称 ETS)考试;从1994年开始,美国护理证书考试完全在计算机上进行。目前,国外许多大型测验出版机构、地区教育主管部门和专业资格认证机构都以某种测量理论为指导建立题库、设计考试系统,并进行各项相关研究。 除了这类行业专用的大型考试系统之外,供普通教师使用的通用考试系统软件也有相应的研究和产品。如英国Question Mark Computing,Ltd公司出品的Question Mark,就是一种基于项目反应理论的,可供广大教师使用的通用的考试系统。在我国,计算机考试系统和题库的理论研究和实践应用起步比较晚。但发展也比较迅速,研究和开发活动比较活跃。北京师范大学、华北师范大学等高等院校都有教师在进行教育测量理论应用于题库建设方面的研究。清华大学、上海交通大学、北京师范大学等高校,也有教师在组织力量致力于实用考试系统的研究和开发工作,其中使用专用在线考试系统影响较大的考试有:1994年开始,国家教务组织的全国计算机等级考试;1996年,教育部考试中心举办的全国计算机应用技术证书考试(National Applide Information Technology Certificate 简称NIT);微软授权培训中心(Microsoft Authorized Training Center 简称ATC)组织的认证考试等。 面向普通教师使用的通用题库系统也有“海北智能助教系统”和国家“九五”重点攻关项目“计算机辅助教学软件研制开发与应用”,“中小学课件的研制与开发”专题中的“通用题库生成管理系统”等。以上考试系统各自实现了试题的计算机管理,抽题成卷,无纸化考试,自动判卷,对考试结果进行统计分析等各项功能的一部分,但也都存在一定的问题和局限性:1.我国的专用考试系统主要针对计算机考试,其他行业和科目的考试系统太少2.计算机在线考试系统由于操作类题目自动出题有较大的难度,基本没有实现题库化的管理。3.系统对传统的客观题虽然一般建有题库但不大,多采用随机抽题组卷的方式,缺乏教育测量理论作为依据。4.考试完成后,分数和试题统计分析比较简单,没有充分挖掘数据所包含的信息。5.通过考试系统或题库系统对最终用户即教师的需求分析做的不够透彻,忽略老师们渴望能自由地操纵试题库的需求,没有完全实现用户自主初始化试题库、自主维护试题库、自主调用试题库的功能。加上软件实用水平和商品化工作方面的不足。通用系统并没有被广大教师认可和使用。总的来说,我国在线考试系统发展比较迅速,但总体水平不高,与发达国家相比,在理论和实践上都存在一定的差距。1.3 研究目标和意义计算机技术和通信技术的发展使得以网络为中心的信息系统获得广泛的使用,web系统和数据库是网络化信息服务的基础。Web能用及时和友好的方式向人们提供大量有用的信息,伴随着大量信息,就需要庞大数据库的管理技术,Web和数据库结合是WWW信息服务技术和分布式数据库技术发展的大势所趋。把数据库同WWW服务器连接起来的一体化信息网络系统是新一代Internet开发的前沿技术。Internet的发展,使得基于网络技术的远程网络考试成为可能。基于WWW模式的网上考试以英特网为桥梁,缩短了教师和学生在时间和空间上的距离,突破了传统课堂上面对面考试方式的限制,是将考试课堂有教室和实验室延伸到英特网所覆盖的任何一个场所的新型考试模式。ASP是近年来新兴的动态站点设计技术,它的诱人之处在于甩开了陈旧的Web技术,集HTML, ODBC数据库访问和其他许多新颖技术于一身,实现了网页的可编程化。它使内置对象与客户进行高效交互;使用服务组件ADO只需少量代码即可页面上执行一系列的访库操作;服务器的功能可以编写组件不断扩展。ASP文件驻留在WEB服务器土,实现复杂应用逻辑的脚本,组件也由Web服务器执行,因此对构造二层结构的Web应用系统提供了很好的支持。ASP配合HTML、VBScript、Jscript可实现各种复杂功能,并使主页呈现丰富多变的风格。利用ASP进行Web设计具有开发周期短、功能完各、形式完美的特点。本课题研究并实现了基于WEB的在线测试系统,该系统可以通过在Web上实现教师对题库的管理、试卷生成、试卷批改、在线测试,管理人员系统进行维护,以及考生查看分数等功能,以Internet网络作为载体,不受时间、科目和地域的限制,给考生、评卷人和出题者带来巨大的便利,同时也使考试成为真正意义上的平等、公开。它可以杜绝试题泄露、评卷不公、考生作弊。考生可以在规定的期间内选择最佳状态时期参加考试,系统会为每一个考生同样的试卷,同时当场给出成绩, 评卷人和出题者可以在世界任何一个地方进行试题结构、试题内容的维护和进行评卷工作。2. 开发环境与相关技术2.1 总体开发环境简介该系统的目标是开发一个小型的标准化测试系统,以组织客观、公正、科学合理的考试为目的。开发环境:系统前台界面是以Dreamweaver为平台开发的ASP动态网页;后台数据库是利用功能强大的Microsoft Access 2003开发的,并且以ADO的方式进行数据库连接。采用ADO存取数据的最大好处是只需少量代码即可页面上执行一系列的数据库操作。 开发设计思想:1.系统的优点不仅仅要体现在功能上,还要在使用上具有方便、快捷、高效的特点2.系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于系统的维护。3.在服务器、数据库等多个层次上提供行之有效的安全防范措施,可确保系统安全稳定地运行。4.具有高度的灵活性和良好的可扩充性,可随着用户需求的变化在功能和规模两方面随时进行扩展和升级。系统总体架构:2-1 系统总体架构图2.2 B/S模式简介B/S(浏览器/服务器)是由浏览器、Web服务器、应用服务器和数据库服务器组成的多层结构体系。B/S模式具有以下特点:(1) 用户界面简单易用。用户使用单一的浏览器软件,通过鼠标即可访问文本、图像、声音、电影及数据库等信息,特别适合非计算机人员使用。(2) 易于维护与升级。由于客户端无需专用的软件,所以,系统的维护和升级工作简单。(3) 具有良好的开放性。浏览器/服务器结构采用标准的TCP/IP、HTTP协议,能够与遵循这些标准协议的信息系统及其网络很好的结合,具有良好的开放性,保护了用户的投资。(4) 信息共享度高。HTML是数据格式的一种开放标准,目前信息系统中大多数流行的软件均支持HTML。(5) 扩展性好。TCP/IP、HTTP的标准性使得浏览器/服务器结构可直接接入Internet,具有良好的扩展性。(6) 网络适应性强。无论是PSTN、DDN、帧中继、X.25、ISDN、还是CATV、ADSL,浏览器/服务器结构均能适应。(7) 安全性好。防火墙技术保证了浏览器/服务器结构的安全性。2.3 ASP简介2.3.1 ASP技术特点Microsoft Active Server Pages 即ASP,其实是一套微软开发的服务器端脚本环境。Active Server Page 是创建动态网页的一个很好的工具,它起一种编程语言的作用,可以利用它编写动态产生HTML的程序代码。因此,只要用户浏览Web站点并请求一个ASP页,Web服务器就可以处理相应的ASP代码,生成HTML代码,然后将它传递到用户浏览器并显示出网页。ASP内含于IIS之中,通过ASP可以结合HTML网页、ASP指令和ActiveX元件建立动态、交互且高效的WEB服务器应用程序。有了ASP就不必担心客户的浏览器是否能运行所编写的代码,因为所有的程序都将在服务器端执行,包括所有嵌在普通HTML中的脚本程序。当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。以下罗列了ASP所独具的一些特点:1.使用VBScript 、JavaScript等简单易懂的脚本语言,结合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程序代码,可以防止别人抄袭程序。2.3.2 ASP内置对象ASP提供了可以在脚本中使用的内置对象,这些对象能够使用户更容易收集浏览器发送的请求信息,响应浏览器和存储用户的信息。ASP提供了六大内置对象,分别为Request对象、Response对象、Serve对象r、Application对象、Session对象和ObjectContext对象。它们在ASP中具有很重要的作用,下面对各个对象作简要说明。Request对象用来处理用户做出的请求,就是处理用户要求浏览器查看特定的网页或Web应用时做出的请求。此请求可以HTML的形式输入或仅以URL的形式作出。Response对象用来处理从Web服务器向用户发送信息并对此信息进行控制。Serve对象用来代表服务器自身。因此它提供几个与Web服务器可能要完成的任务相关的常用功能,诸如建立新对象和设置脚本的超时特性等。还有通过将不合法字符转化为合法字符,把字符串转换为URL和HTML正确的使用格式的方法。Application对象用来代表应用,可用它来管理诸如应用目录这一类的东西。Session对象用来代表用户会话,并存储该会话的信息。可利用Session对象来管理如Web服务器在用户“请求”之间等待的时间等。ObjectContext对象用来管理事务处理。它目前已经集成到Windows2000操作系统中了。它包含了所有ASP其他对象,可通过ObjectContext引用ASP的每个对象。2.4 结构化查询语言(Structured Query Language)结构化查询语言(Structured Query Language)即SQL,是一种标准的关系型数据库查询语言。SQL语言的主要功能就是同各种数据库建立联系,进行沟通。按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据库管理系统的标准语言。SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。目前,绝大多数流行的关系型数据库管理系统,如Oracle, Sybase, Microsoft SQL Server, Access等都采用了SQL语言标准。虽然很多数据库都对SQL语句进行了再开发和扩展,但是包括Select, Insert, Update, Delete, Create,以及Drop在内的标准的SQL命令仍然可以被用来完成几乎所有的数据库操作。SQL可用于所有用户的DB活动模型,包括系统管理员、数据库管理员、 应用程序员、决策支持系统人员及许多其它类型的终端用户。SQL为许多任务提供了命令,包括:1.查询数据2.在表中插入、修改和删除记录3.建立、修改和删除数据对象4.控制对数据和数据对象的存取5.保证数据库一致性和完整性2.5 IIS简介IIS是Internet Information Server的缩写,是微软公司主推的服务器,IIS与WindowNT Server完全集成在一起,因而用户能够利用Windows NT Server和NTFS(NT File System,NT的文件系统)内置的安全特性,建立强大,灵活而安全的Internet站点。IIS支持HTTP(Hypertext Transfer Protocol,超文本传输协议),FTP(File Transfer Protocol,文件传输协议)以及SMTP协议,通过使用CGI和ISAPI,IIS可以得到高度的扩展。IIS支持与语言无关的脚本编写和组件,通过IIS,开发人员就可以开发新一代动态的,富有魅力的Web站点。IIS不需要开发人员学习新的脚本语言或者编译应用程序,IIS完全支持VBScript,JavaScript开发软件以及Java,它也支持CGI和WinCGI,以及ISAPI扩展和过滤器。IIS支持服务器应用的Microsoft BackOffice系列,Microsoft BackOffice系列包括以下内容:1.Microsoft Exchange Server 客户/服务器通讯和群组软件;2.Mirrosoft Proxy Server 代理服务器;3.用于连接IBM企业网络的Microsoft SNA Server;4.用于集中管理分布式系统的Microsoft Systems Management Server;IIS的一个重要特性是支持ASP。IIS 3.0版本以后引入了ASP,可以很容易的张贴动态内容和开发基于Web的应用程序。对于诸如VBScript,JScript开发软件,或者由Visual Basic,Java,Visual C+开发系统,以及现有的CGI和WinCGI脚本开发的应用程序,IIS都提供强大的本地支持。3. 系统分析3.1 系统基本功能描述 本测试系统的主要用途是供校园内部考试、或者机关单位的培训考试之用,其规模比较小。其用户有考生用户、系统管理员两类。对于考生用户来说,要提供方便、快捷、高效的考试操作功能,考试应该让考生充分发挥其知识水平,不应因为客观原因而影响考生的正常状态。系统反应灵敏迅速,如在执行用户注册、用户登陆、试卷提取、成绩查询等功能时,应快速做出响应。对系统管理员来说,要提供方便统一的管理功能,管理员可以浏览、查询、添加、删除、修改、统计考生的基本信息,管理员面对的是众多考生,要对考场、考生、试题做统一的控制,负责整个系统的正常运行,对试卷的保密、数据的安全与完整性等方面有比较高的要求。系统还应提供一定的留言功能,以便出题者和考生之间能够进行有效的信息反馈与交流,这也是本系统需要改进的地方。3.2 可行性分析1技术可行性:本系统的配置(IIS与Microsoft Acess 2003)在这种中小规模的情况下能够提供较快的数据访问,技术上可行。 2经济可行性:系统的配置,不需要昂贵的EJB服务器,大部分软件都是可以免费获得,开发成本低。 3操作可行性:访问系统的主要有两种:考生,管理员。目前资源的利用情况和可操作性,只需少量的对数据库中的表的直接操作就可以实现系统的完整、稳定的运行,不会造成系统的巨大压力。3.3 系统需求分析通过对系统需求进行分析,我们可以确定系统中有两类类用户:管理员、考生。两类用户的具体描述如下:1.管理员:操作员管理、课程档案管理、试题档案管理管理、考试计划管理、考生档案管理等2.考生:新考生注册、在线修改个人登陆密码、查看个人信息、查询考试成绩、选择考试科目进行考试等。3.3.1 业务流程分析系统总体流程图如图所示:图3-1 系统总体流程图3.3.2 数据流分析数据流程图(Data Flow Diagram,简称DFD)是新系统逻辑模型的主要组成部分,它可以反映出新系统的主要功能、系统与外部环境间的输入输出、系统内部的处理、数据传送、数据存储等情况。它的绘制依据是现行系统流程图,数据流程图是系统总体设计图。 本系统的分层数据流程图如图3-2所示 图3-2 顶层数据流程图考生用户和管理员用户有着各自的功能模块,模块与模块之间又有着相互联系。根据用户的功能关系,有如下第一层关系数据流程图。 图3-3 一层数据流程图4. 系统设计4.1 数据库设计 数据库在一个信息管理系统中占有非常重要的地位,数据库设计的好坏将直接影响到系统的效率以及实现的效果。合理的数据库结构设计可以提高数据库的存储效率,保证数据的完整性和一致性。4.1.1 概念结构设计 测试系统涉及的主要实体及属性有:1.管理员信息:管理员ID、管理员姓名、密码、管理员权限(0为所有权限,1为维护试题,2为维护考生档案,4为维护考试计划,8为维护课程档案)、管理员邮箱2.课程信息:课程ID、名称3.考试过程中的试题信息:ID(主键)、考试计划ID(与考试计划关联)、试题ID考生答案(从低位到高位分别代表先择题的A,B,C,D. 是非题为1/0 -1为未答题)、试题排列序号、考生ID(与考生表关联)4.考试过程中的学生信息:ID(主键)、考试计划ID、考生ID、成绩、考试状态(0 代表还没有进行考试,1代表已经进行过考试,2代表正在进行考试)、开始考试时间、结束考试时间5.试卷信息:试卷ID、试卷的课程ID、单选题的数量(用于自动生成试卷)、多选题的数量(用于自动生成试卷)、是非题的数量(用于自动生成试卷)、开始考试时间、结束考试时间、试卷的名称、考试时间限制(单位为分钟)、本次计划设置时间、设置本次计划的管理员6.考生信息:考生编号、考生学号、考生姓名、考生班级、考生性别、考生分数、考生IP地址、登陆标记、提交标记7.试题信息:ID、题目内容、题目类型(1为单选题,2为多选题,3为是非题)、可选项、正确答案(从低位到高位依次表示选项1,2,3.;是非题为1/0形式)、题目所属的课程ID得到上面的数据项和数据结构以后,结合各个实体的联系就得到系统的总体E-R图。图4-2 系统总体E-R图4.1.2 逻辑结构设计根据以上的分析,将E-R模型转换成逻辑模型,设计出本系统数据库。根据需要在ACCESS里创建数据库,建立的数据表如下所述:1. 为了便于管理员登录,安全管理和维护数据库,建立admin表,如图4-3所示:字段名称数据类型说明备注adminid自动编号管理员ID主键,非空adminname文本管理员用户名非空adminpwd本文管理员密码非空adminpurview数字管理员权限非空email文本管理员邮箱非空 图4-3 admin表2. 为了存储课程信息,建立course表,如图4-4所示:字段名称数据类型说明备注courseid 自动编号课程ID主键,非空coursename文本课程名称非空图4-4 course表3. 为了存储考试过程中的考试信息,建立prj_prcess表,如表4-5所示:字段名称数据类型说明备注id自动编号ID主键,非空prjid数字与project表关联外键,非空subid数字试题ID外键,非空answer数字考生答案orderid数字试题排列号非空studentid数字与student表关联外键,非空图4-5 prj_prcess表4. 为了存储考试过程中的考生信息,建立prj_student表,如图4-6所示:字段名称数据类型说明备注id自动编号ID主键,非空prjid数字与project表关联外键,非空studentid数字与student关联外键,非空mark数字成绩非空state数字考试状态非空starttime日期/时间开始考试时间非空endtime日期/时间结束考试时间非空图4-6 prj_student表5. 为了存储考试计划信息,方便试卷管理与查阅,建立project表,如图4-7所示:字段名称数据类型说明备注prjid自动编号试卷ID主键,非空courseid数字试卷的课程ID外键,非空ss_count数字单选题的数量非空ms_count数字多选题的数量非空b_count数字是非题的数量非空starttime日期/时间开始考试的时间非空endtime日期/时间结束考试的时间非空prjname文本试卷名称非空limittime数字本次考试的限制时间非空settime日期/时间本次计考试设置时间非空setadmin数字本次考试设置的管理员非空图4-7 project表6. 为了存储学生信息,方便学生信息管理与查阅,建立student表,如图4-8所示:字段名称数据类型说明备注studentid自动编号考生编号主键,非空username文本考生登录名非空studentname文本真实姓名非空email文本邮箱tel文本电话号码studenttype数字考生状态非空studentpwdd文本登陆密码非空sex是/否性别,男为true,女为false非空birthday日期/时间出生日期非空图4-8 student表7. 存储试题信息,方便试题管理与添加,建立subject表,如图4-9所示:字段名称数据类型说明备注subjectid自动编号试题编号主键,非空content备注试题内容非空type数字题目类型非空option1文本可选项1非空option2文本可选项2 非空option3文本可选项3option4文本可选项4option5文本可选项5option6文本可选项6answer数字正确答案非空courseid数字试题所属的课程ID外键,非空图4-9 subject表4.1.3 数据库建立与连接按照要求建立好数据库后,需要建立网站页面与后台数据库的连接。代码如下:因为这段代码几乎在后面的每个动态页面中都要使用,所以现在把它单独封装为文件,命名为conn.asp。后面如果需要与数据库建立连接,只需要在页面代码的前面将这个文件名包含进去就可以了。4.2 系统模块设计模块设计的主要方法是结构化方法,主导思想是以系统的逻辑功能设计和数据流关系为基础,采用“自顶向下,逐步求精”的设计方法,将本系统分解为功能明确,易于修改,大小适中的模块结构。 本系统主要分为三大模块:考生信息模块、在线测试模块、后台管理模块。系统各模块功能图如图4-10所示。图4-10 系统总体结构图系统各模块说明:1考生信息模块设计:(1) 新用户注册模块设计测试系统主要实现的功能就是用户在注册后通过管理员验证再次登陆系统进行相应的测试,所以用户注册模块的设计对考生信息的保存就显得很重要。用户注册主要填的信息由用户名,真实姓名,性别,出生日期,邮箱,在点击提交后,用户注册的信息反馈给管理员,并在通过管理员验证后方可登陆,若点击退出则退出登陆回到首页。(2) 登录模块设计为了数据库使用的安全,预先将用户名和口令存放在数据库的用户口令表中,用户登录前要求输入用户名和口令并执行一次数据库的查询,验证用户身份。为了维护考试系统的安全,确保系统用户的个人信息,防止非法用户登录,系统在登录界面设置了用户登录密码机制。本系统的登录机制分两部分:考生登录模块和管理员登录模块。该机制的设计是在用户登录窗口设置了文本框,供用户输入个人信息。用户只有通过浏览器的文本框输入用户账号和密码,经过系统检测正确后,才能登录考试系统。当输入信息不合法时,系统自动返回到登录界面要求用户重新登录。(3)修改信息模块 考生成功登陆后,可根据自己的需要更改自己的信息,比如修改自己的用户名,密码等,因为在线测试无法实现人工考试的监考与阅卷,个人信息的保密就显得尤为重要,而经常修改自己的信息在一定程度上保护了考生及用户的隐私。考生修改数据后,提交到相应的数据库并将修改保存。(4)成绩查询模块考生点击交卷后,即将考生答案与数据库中的正确答案进行比较,并计时生成分数,学生端可看到每个题目的正确答案以及自己选择的答案,以及系统核算的总分。在首页中也有成绩查询模块,其中设置了考试科目选择的下拉菜单,供考生查询。考生可以选择考试科目,查询自己已经考试过的成绩。其设计思想是:当系统接收到用户输入的登陆信息时,将其与数据库的成绩表进行从上到下进行比较,当找到与考生ID相同的数据项,将该项返回到WEB页面呈现在用户面前。2.在线测试模块(1)试卷生成模块在后台试题管理中,选择添加试题,在添加选项有一项是题目数量,即根据各种类型的题目数量来自动生成试卷。题量较小时,可以一次列出所有的试题;题量较大时,则选一个知识点,列出考察该知识点的试题。这样做的好处在于:(1)突出试题的主要考察点,试题虽然涉及了多个知识点,但考察的知识会有所侧重(2)避免试题重复。(2)考试监控模块学生端一旦进入考试页面开始考试,计时器就开始计时,在页面跳转时,计时暂停,待新页面载入后继续计时,到了规定的时间,自动上缴试卷。学生可以修改已作答的试题。最后学生上交试卷,或者到时自动上交。系统实现自动批阅(包括判断题、选择题等客观题),主观题则提交给教师批阅。这样不仅提高了工作效率,而且使得考试具有严肃性和公平性。3.后台管理模块(1)操作员管理模块超级管理员成功登陆后,可对所有管理员进行管理,比如更改管理员名字,密码以及权限等,后台管理条目较多,若能给各个管理员分配不同的权限,实行分类管理,则有利于资源的优化配置。在数据库设计时,就考虑到了这一点,比如在对应管理员权限时,0为所有权限,1为维护试题,2为维护考生档案,4为维护考试计划,8为维护课程档案。(2)课程档案模块课程档案的管理主要有添加课程,和修改。添加课程时,只需键入课程名字,自动生成课程ID,将数据提交到相应的数据库中,点击修改,则可实现课程名字的修改,点击删除,会出现是否确认删除的对话框。(3)试题管理模块考试科目管理作为一个单独的模块,在设计过程中是为系统下一步题库管理和试卷自动生成服务的。为了实现科目的添加、删除和修改,设计时在该模块中设置了一个添加考试科目的文本框和几个功能按钮,利用ASP技术来实现考试科目的添加、删除和修改。管理员登录后,可以添加考试科目,输入有误时可以及时修改,在对已考过的科目可以执行删除命令,以维护系统的数据稳定。(4)考试计划模块教师完成组卷后,考试计划尚未发布,学生端还看不到试卷,在发布前,教师可以随时修改试卷,一旦发布,该试卷就不能再更改。发布的过程就是在学生端为每个学生创建一份试卷,把所有的试题信息,包括题干,选项(其实是试题和选项的id),试题顺序,选项顺序写入每个学生的试卷表中。(5)考生数据管理模块 管理员登陆后应能对考生数据进行系统管理,浏览全部考生,包括用户名,真实姓名,性别,出生日期等,并能对考生的数据进行相关的修改。5. 系统实现5.1 系统实现概况 系统实现应遵循以下两个基本的原则:1、结构化程序编码原则 系统实现遵循结构化程序设计的思想,为了确保每个模块的逻辑清晰,应该尽量使各个模块使用单入口,单出口和顺序、选择和循环三种基本控制结构。另外为了增强系统的编码效率,也采用扩展的结构程序设计,即除了使用三种基本的控制结构以外,还使用多分支的选择结构和下部判断循环条件的循环结构。2、良好的程序编写风格 为了提高程序的可读性和易维护性,关键是使程序结构简单清晰,因此在程序编写过程中应保持良好的程序设计风格。主要在以下方面体现:采用序言性和描述性两种注释对程序进行解释;变量说明尽量使其具有实际意义;程序语句构造应该简单直接,应直接反映意图,不必过于巧妙和深奥。 5.2 系统功能实现5.2.1 文件结构图 文件结构的良好设计,对自己的开发过程有很大的好处,在设计的最初,应该想到自己要用的文件资源。如图5-1是本系统的文件结构图。图5-1 文件结构图如图示 css是样式文件,examdatas中存放系统数据库文件,images文件夹中存放系统要用的图片,inc文件夹中存放要用很多次的文件,如实现计时的ChangeTime.asp,用于数据库连接的conn,asp,验证登陆的loginV.asp等,只要在其他ASP文件中包含即可5.3 关键技术实现 5.3.1 考生信息模块 考生可通过首页的入口进行新用户注册,实现注册功能的页面为student_reg.asp,此后将用户提交的信息给student_regpost.asp处理,并提交给admin_student.asp,管理员在后台浏览课进行相应的操作。注册成功后的处理登陆的界面是student_login.asp,系统将根据用户提交的信息与数据库中的信息进行对比,若匹配则登陆成功,否则登陆失败,这是由student_loginout处理的。成功登陆后,考生可对自己的信息进行相应的修改,这是由文件student_modifyinfo.asp和student_modifyped实现的。其流程图如图5-3所示: 图5-3 考生信息模块流程图5.3.2 在线测试模块在线测试模块是整个系统最重要的模块之一。其核心页面是testing.asp,该页面通过调用数据库中的题库信息和试题信息来生成试卷,并要验证是否存在本次考试,是否在开始时间,是否有其他考试,取得考试状态,生成试卷,以及考生是否参加过此次考试,若参加过则不能再次进行此门考试,并对时间进行监控,考试结束或者达到考试结束时间则结束考试,由test_saveanswer.asp保存答案提交到数据库,最后交由 test_finish显示成绩。其流程图如图5-4所示:图5-4 在线测试模块流程图关键代码:(1) 读取考试信息:通过连接到后台的数据库读取此次考试的相关信息,以便后面的进一步操作。strSqlTest = select starttime,endtime,limittime,prjname,ss_count,ms_count,b_count from project where prjid= & intPrjIDset rsTest = server.createobject(ADODB.Recordset)rsTest.open strSqlTest,G_CONN,1,1(2)验证是否存在本次考试:由于过了考试时间或者管理员删除此次考试计划等,可能会使此次考试不存在,此功能就是验证是否存在本次考试,若不存在就不能进行测试。if rsTest.bof and rsTest.eof thenresponse.write alert(此次考试不存在!);window.open(index_main.asp,_self);rsTest.closeset rsTest = n

温馨提示

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

评论

0/150

提交评论