资源描述
摘要摘 要随着社会的进步和商品经济的不断发展,社会对劳动者和技术人员的知识和能力水平的要求越来越高。考试作为衡量人的能力的重要手段,在现代生活中的地位进一步提高,并深入到社会的各个方面。计算机应用迅猛发展,网络应用不断扩大,如远程教育和虚拟大学的出现等,使得基于Web的在线考试系统成为现实。在线考试系统是集合现代考试理论、方法和现代信息技术手段的智能化网上考试系统,为学生个性化学习提供灵活、方便、科学、公平的个别化考试服务,学生可以随时随地进行课程结业考试,它可以节约考试成本,提高考试工作的效率。本论文叙述了在线考试系统开发过程中的主要技术,包括基于 B/S的服务模式、ASP语言和Access 2003数据库管理系统等,重点介绍了在线考试系统的开发过程:包括系统分析、系统调查、数据流程分析、功能设计、数据库设计、系统物理配置方案、系统实现、系统调试和测试。关键词:在线考试 ASP Access数据库 Web 自动评分目录目录摘 要1目录3第一章 序言61.1选题背景61.2在线考试系统的技术路线61.2.1ASP基本对象简介61.2.2SQL Server语句简介6第二章 系统设计相关原理82.1ASP技术82.1.1 ASP的特点82.1.2 ASP处理流程82.2Javascript82.3Access 2003数据库82.4SQL语句82.5B/S模式及其优势8第三章 系统设计103.1系统需求分析103.1.1考生使用在线考试系统流程103.1.2系统特点103.1.3系统目标103.2系统功能结构图103.2.1系统总体结构设计103.2.2系统模块设计103.2.3前台功能模块103.2.4后台功能模块103.3数据库的分析与设计103.3.1表设计113.3.2创建表间关系11第四章 系统实现124.1前台功能的实现124.1.1登录页面124.1.2注册页面124.2后台功能的实现124.2.1后台登录页面124.2.2后台管理首页12致 谢13参考文献14第一章 序言1.1选题背景现今,不管是国内还是国外的各大机构,都不断的推出了一系列大型的认证考试,如微软的MCSE、Cisco的CCNA以及我们国家的自学考试和各省市的各种考试等,这些考试都在朝着网络化的方向发展,只有这样才符合大规模考试省时省力以及公正公开的要求。所以,网上考试系统的研制是当今教育信息化建设的一项重要课题,目的是充分利用学校现有的计算机软、硬件资源和网络资源实现无纸化考试以弥补传统手工考试的不足。基于Web的网络考试已成为大势所趋,与传统考试模式相比,网上考试渗入了更多的技术环节,对实现安全性的途径、方法也提出了更高的技术要求,它在教育现代化的进程中具有很重要的现实意义。传统考试要求老师刻试卷、印试卷、安排考试、监考、收集试卷、评改试卷、讲评试卷和分析试卷,这是一个漫长而复杂的过程,已经越来越不适应现代教学的需要,于是产生了大量的在线考试系统。它应用ASP等网络软件开发工具进行研发,并充分利用了B/S结构的特点,其功能目标是实现将现有的纸张答题式考试向基于Internet的无纸化考试系统的转变,具有良好的开放性,允许系统管理员对试题库进行管理与开发,有效地保证了题库的时效性。通过Internet/Intranet来实现网上考试,可以实现教考分离以及考务工作的全自动化管理,可以有效利用校园网的软硬件资源,使其发挥最大效力,更好的为学校的教学、科研、管理服务,它可以将传统考试过程中的试卷组织、审定印制、传送收集、登记发放、评判归档各个环节缩小到一至两个环节,几乎屏蔽了所有人工直接干预考试活动的可能性,不但能够节约大量的时间、人力、物力与财力,而且还可以大幅度提高考试成绩的客观性和公正性。利用ASP技术开发的基于WEB的多用户在线考试系统具有用户注册、多用户同时在线考试、考试时间控制、对客观题自动判卷、题库维护、考卷制定、用户管理、成绩管理等功能1.2在线考试系统的技术路线1.2.1ASP基本对象简介ASP有7个固有对象,这7个固有对象分别是Request、Response、Server、Application、Session、ASPError和ObjectContext。Request对象用来处理用户做出的请求,就是处理用户要求浏览器查看特定的网页或Web应用时做出的请求。此请求可以HTML的形式输入或仅以URL的形式作出。Response对象用来处理从Web服务器向用户发送信息并对此信息进行控制。Serve对象用来代表服务器自身。因此它提供几个与Web服务器可能要完成的任务相关的常用功能,诸如建立新对象和设置脚本的超时特性等。还有通过将不合法字符转化为合法字符,把字符串转换为URL和HTML正确的使用格式的方法。Application对象用来代表应用,可用它来管理诸如应用目录这一类的东西。Session对象用来代表用户会话,并存储该会话的信息。可利用Session对象来管理如Web服务器在用户“请求”之间等待的时间等。ObjectContext对象用来管理事务处理。它目前已经集成到Windows2000操作系统中了。它包含了所有ASP其他对象,可通过ObjectContext引用ASP的每个对象。ASPError对象包含ASP脚本或asp.dll本身产生的任何错误的详细内容。1.2.2SQL Server语句简介SQL Server是一个后台数据库管理系统。它的功能强大、操作简便、日益为广大数据库用户所受喜爱。越来越多的开发工具提供了与SQL Server的接口。了解和掌握SQL Server的功能,对于一个数据库开发管理人员来说是非常必要的。1.2.3SQL语句简介SQL可用于所有用户的DB活动模型,包括系统管理员、数据库管理员、 应用程序员、决策支持系统人员及许多其它类型的终端用户。SQL为许多任务提供了命令,包括:(1)查询数据(2)在表中插入、修改和删除记录(3)建立、修改和删除数据对象(4)控制对数据和数据对象的存取(5)保证数据库一致性和完整性系统设计第二章 系统设计相关原理2.1ASP技术ASP是Active Server Pages的简称,中文意思是动态服务器网页,它是一种在微软公司的WEB服务器IIS(Internet Information Server)上开发交互网页的新技术。2.1.1 ASP的特点 (1)无需编译:SP脚本集成于HTML当中,容易生成,无需编译或链接即可直接解释执行。(2)易于生成:使用常规文本编辑器(如WINDOWS下的记事本),即可进行*.asp页面的设计。若从工作效率来考虑,不妨选用具有可视化编辑能力的Visual InterDev。(3)独立于浏览器:用户端只要使用可解释常规HTML码的浏览器, 即可浏览ASP所设计的主页。ASP脚本是在站点服务器端执行的,用户端的浏览器不需要支持它。因此,若不通过从服务器下载来观察*.asp 主页,在浏览器端见不到正确的页面内容。(4)面向对象:在ASP脚本中可以方便地引用系统组件和ASP的内置组件,还能通过定制 ActiveX Server Component(ActiveX服务器组件)来扩充功能。(5)与任何ActiveX scripting 语言兼容:除了可使用VBScript 和JScript语言进行设计外,还可通过Plug-in的方式,使用由第三方所提供的其它scripting 语言。(6)源程序码不会外漏:ASP脚本在服务器上执行,传到用户浏览器的只是ASP执行结果所生成的常规HTML码,这样可保证辛辛苦苦编写出来的程序代码不会被他人盗取。2.1.2 ASP处理流程 用户在地址栏中请求一个asp程序。浏览器向ASP服务器请求这个asp程序,而不是像html一样直接处理一个自身的html程序,不需要在服务器上的运行。ASP程序中的服务器端脚本开始运行。 ASP程序连续的执行这个请求文件中的所有语句,然后生成一个HTML文件。2.2JavascriptJavascript是一种由Netscape的LiveScript发展而来的面向对象的客户端脚本语言,主要目的是为了解决服务器端语言,比如Perl,遗留的速度问题,为客户提供更流畅的浏览效果。当时服务端需要对数据进行验证,由于网络速度相当缓慢,只有28.8kbps,验证步骤浪费的时间太多。于是Netscape的浏览器Navigator加入了Javascript,提供了数据验证的基本功能。2.3Access 2003数据库微软公司的Access 2003数据库管理系统,是Office 2003里面的一个组件,能满足基本的Web站点和企业数据处理系统存储和分析数据的需求。Access是与Windows和Internet结合紧密的数据库软件,随着它的Security Wizard 的不断改进,在 Access 中实现安全性已变得非常简单。2.4SQL语句SQL全称是“结构化查询语言(Structured Query Language)”。SQL(Structured Query Language)是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。SQL是高级的非过程化编程语言,允许用户在高层数据结构上工作。他不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统可以使用相同的SQL语言作为数据输入与管理的接口。它以记录集合作为操作对象,所有SQL语句接受集合作为输入,返回集合作为输出,这种集合特性允许一条SQL语句的输出作为另一条SQL语句的输入,所以SQL语句可以嵌套,这使他具有极大的灵活性和强大的功能,在多数情况下,在其他语言中需要一大段程序实现的功能只需要一个SQL语句就可以达到目的,这也意味着用SQL语言可以写出非常复杂的语句。2.5B/S模式及其优势整个系统采用Browser/Web/DataBase的3层体系结构。Browser/Server的系统中,用户可以通过浏览器向分布在网络上的服务器发出请求,服务器对浏览器的请求进行处理,将用户所需信息返回到浏览器。B/S结构简化了客户机的工作,客户机上只需配置Web浏览器即可。服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。浏览器发出请求,而其余如数据请求、加工、结果返回以及动态网页生成等工作全部由Web Server完成。Browser/Server三层体系结构,如图所示。第三章 系统设计3.1系统需求分析3.1.1考生使用在线考试系统流程考生使用在线考试系统流程图如图所示:3.1.2系统特点根据考试管理的实际要求,结合试卷管理的工作流程,系统应实现以下特点:(1)掌握本考试范围内所有考生的基本情况,包括学号、姓名、成绩等。(2)试卷的自动生成,答题完成后,系统对照正确答案,给出试卷分数。(3)对试题库进行增加、删除、修改等更新操作。(4)不同用户的管理功能不同。管理员类用户可以创建试卷、策划每期考试题型及分数、对试题库进行维护、批准补考、查询学生以往考试成绩等功能。考生类用户可以参加考试,完成答卷。3.1.3系统目标本在线考试系统具体实现了以下功能:(1)学生在线注册成功后可以登录到考试中心,参加由系统按最新一期试卷的设置随机产生的试题的考试。(2)学生提交答题,系统自动对照数据库正确答案算出分数,即学生当期考试的成绩提交到成绩库中。(3)学生只能对每一期考试提交一次成绩,如果不及格,后台管理员(教师)可以设置补考机会,一个人一期考试只能有一次补考机会。(4)题库的维护(包括判断题、选择题和填空题)、试卷的维护、成绩的统计、学生的查询与管理等。3.2系统功能结构图3.2.1系统总体结构设计在线考试系统总体构架图,如图所示。3.2.2系统模块设计根据在线考试的特点,可以将其分为前台和后台两个部分进行设计,分别对应普通用户即考生和管理员。前台主要用于考生在线考试和查询成绩;后台主要用于管理员对考试信息、学生信息等进行管理。3.2.3前台功能模块 此模块对学生类用户开放。学生类用户可以浏览自己以往的学习成绩,也可以参加考试,对创建的试卷中的题目进行回答。答题完毕,系统自动对照数据库正确答案算出分数,即学生当期考试的成绩提交到成绩库中。3.2.4后台功能模块此模块只对管理员(教师)类用户开放。管理员(教师)类用户可以对题库(包括判断题、选择题和填空题)进行增加、删除、修改等操作。如果当前浏览部分不能满足管理员(教师)的要求,提供搜索条件可以在现有信息中进行查询。不仅可以对策划试卷的题型、分数等进行创建、修改和删除操作,而且可以对考试成绩进行查询,根据实际情况对具有补考资格的学生批准补考,还可以对学生资料进行查找和删除。3.3数据库的分析与设计本次开发的数据库包括4方面。(1)题库数据:包括了判断题、选择题和填空题 3 种类型题目。包括题目的题干、答案和加入日期信息。(2)管理员、学生资料信息数据:包括姓名、密码、性别、班级和学号等基础数据。(3)成绩资料表数据:包括学生学号、分数、考试日期和是否补考等基础数据。(4)考试题型数据:包括考题数据,每题分数等基础数据。本系统将使用SQL Server 2000作为数据库管理系统。安装SQL Server 2000,打开企业管理器,新建一个数据库,将其命名为test。test数据库中包含的数据表及其相应功能如表3.1所示。3.3.1表设计管理员(教师)信息表用于存放管理员(教师)类用户的基本信息,包括管理员(教师)姓名(admin)、管理员(教师)密码(adminpassword)两项基本信息。在已创建的SQL Server数据库test中,右击“表”创建一个表,名为admin。向表中添加字段admin和adminpassword。其中,admin(姓名)字段作为该表的主关键字(primary key),惟一标识了一个管理员(教师)用户记录的信息。管理员(教师)信息数据表结构如表3.2所示。3.3.2创建表间关系从实际关系来说,学习成绩信息表中的试卷编号、学生学号与考试题型信息表中的试卷编号和学生信息表中的学生学号存在着必然的联系。因此需要建立examination表、test表、student表相对应字段的关系。定义下列两组参照关系:examination表中的examinationid字段与test表中的examinationid字段为多对一关系。examination表中的studentnumber字段与student表中的studentnumber字段为多对一关系。第四章 系统实现基于Web的在线考试系统主要分为前台和后台两个部分,分别对应普通用户即考生和管理员。前台主要用于考生在线考试和查询成绩;后台主要用于管理员对考试信息、学生信息等进行管理。4.1前台功能的实现前台是本系统的核心模块,该模块所有文件均存放于文件夹test_online的根目录下,功能包括考生注册、考生登录、在线考试、查询以往成绩等。4.1.1登录页面登录页面是在线考试系统的首页,考生登录后才可进入内部。考生在相应的文本域分别输入用户名和密码后,点击【提交】按钮,系统会根据提交的信息判断其合法性而决定是否允许进入内部。登录验证的基本思想是:如果用户输入的用户名和密码均不为空,则对数据表进行搜索,若用户输入的以上两项数据与数据库中保存的数据相符,则表明用户登录成功,可以开放全部前台子系统;如果不符,则登录失败。该页面还有提供学生注册的超链接,考生可以点击“新学生注册”超链接进行注册。在该页面顶部嵌入top.html文件,底部嵌入adv.html文件,并设置“后台管理入口”为超链接,管理员点击该超链接,就可以进入后台登录页面。这两个文件为公共文件,在前台各页面中均有嵌入,在下面的论述中不再重复介绍。4.1.2注册页面用户注册页面主要用于用户完成用户注册。注册成功后,用户才可以进入在线考试系统。4.2后台功能的实现后台管理系统是专为管理员设计的模块,该模块的所有文件均存放在文件夹test_online的子文件夹admin内。管理员登录成功后,可以管理题库、管理学生、管理考卷、阅卷评分、设置考生补考、查阅各期考试情况等。4.2.1后台登录页面管理员点击在线考试系统首页的“后台管理入口”超链接,就可以进入后台登录页面,登录成功后才可以进入内部。其基本思想与前台登录页面的思想一致,不同的只是增加了验证码验证,该验证码嵌在代码里,主要是为了增强系统的安全性。系统验证用户名、密码和验证码三者都正确无误后方可进入后台管理系统内部。点击“退出”超链接转到前台考试系统的登录页面。4.2.2后台管理首页只有管理员登录成功后,才转到该页面。后台管理页面采用框架结构,当用户点击左边的导航菜单时,只会在右边的框架内跳转到对应该超链接的页面,方便用户的操作。第五章 结论及存在的问题随着计算机技术的普及和网络的发展,社会越来越重视信息化建设,利用先进的计算机和网络技术改善内部管理,提高运营效率,建成对市场快速反应的现代企业。网络存在的实际价值就在于它给了人们一个交流的机会,交流最有价值的东西就是知识。越来越多的人投入在线考试系统这方面的研究,它必将随着网络的发展,而变得更加完善。本人结合实际需求,利用毕业设计的机会,开发这套在线考试系统。该系统经多次测试,能在 Windows XP 操作系统、IIS5.1 的调试环境下正常运行,基本上实现了数据管理功能,运行测试结果良好。本课题使用ASP技术开发的基于Web的在线考试系统,实现了题库和考试的有机结合,做到了方便地管理试题、学生、成绩等信息,实现考生登录、无纸化的考试、客观题自动判分、主观题手动阅卷、在线成绩查询等功能。致 谢在论文完成之际,我首先向关心帮助和指导我的指导老师副教授表示衷心的感谢并致以崇高的敬意! 在论文工作中,我的在线考试系统的开发源程序实现及其论文已经完成,编写程序之前所有设定的功能都已经实现,达到了预期的目的。在对在线考试系统的系统分析过程中,我查阅了大量的在线考试系统的相关资料,同时,还使用多种系统分析工具,如:E-R图、功能模块图、数据流程图,为系统设计阶段的工作奠定基础。系统设计阶段的任务包括:系统开发环境的配置,数据库的设计,系统的程序设计。系统进入编程阶段时,遇到了许多的困难,我查阅了大量资料,花费了大量的时间和精力,经过老师的指点、与同学相互讨论以及自己的不断努力,最终解决了所有问题。在此期间积累的解决各种难题的经验,也将成为我职业生涯宝贵的财富,这次毕业设计是我从理论走向实践迈出的坚实的一步。从分析、设计到具体实现,四年所学的知识对我有很大的指导,我也发现了其中有很多不足的地方,我会更加努力的提高自己的水平。通过这次毕业设计,我也深深体会到,一个好的程序设计人员必须具有认真、谨慎的作风,与人合作的精神,和坚忍不拔的毅力,我也会向着这个方向去努力。在学校的学习生活即将结束,回顾两年多来的学习经历,面对现在的收获,我感到无限欣慰。为此,我向热心帮助过我的所有老师和同学表示由衷的感谢!在我即将完成学业之际,我深深地感谢我的家人给予我的全力支持!最后,感谢论文评审委员会的老师们百忙之中对我的设计和论文的悉心指正。由于时间仓促和笔者的水平有限,论文中难免存在错误,敬请各位老师和同学批评指正。衷心地感谢在百忙之中评阅论文和参加答辩的各位专家、教授!参考文献1.屈喜龙、李正庚.ASP+Access开发动态网站实例荟萃M. 北京:机械工业出版社,2006.2.项宇峰ASP+SQL Server典型网站建设案例M.北京:科学出版社,2006.3.萨师煊、王珊.数据库系统概论(第三版)M.北京:高等教育出版社,2000.57
展开阅读全文