在线考试系统_第1页
在线考试系统_第2页
在线考试系统_第3页
在线考试系统_第4页
在线考试系统_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

PAGE29目录毕业设计任务书 3毕业设计开题报告 12毕业设计答辩资格审查表 16学士学位设计原创性申明 17设计版权使用授权书 18毕业设计正文 19外文资料泽文 39外文资料原文 42毕业设计开题报告题目:在线考试系统选题的依据和意义计算机技术没有应用到考试上时,组织一次考试至少要经过五步,人工出题、考生考试、人工阅卷、成绩评估和试卷分析。教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常轻易出错的事情,明显的传统的考试方式已经不能适应现代考试的需要。随着计算机应用的迅猛发展,应用不断扩大,如教学和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。人们迫切要求利用这些技术来进行等级考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证、客观,更加激发学生的学习爱好。例如目前许多国际闻名的计算机公司所举办的各种认证考试绝大部分采用这种方式。等级考试是建立在国际互联网上的应用系统,一个完备的等级考试系统可以使用户在网上学习过后及时检验自己的学习效果,已发现自己的不足,使得学习效率得到很大提高。等级考试系统中题目的生成、试卷的提交、成绩的批阅等都可以在上自动完成。只要形成一套成熟的题库就可以实现考试的自动化。这样一来,教师所要做的只是精心设计题目、维护题库,而不是组织考试,从而大大减轻了教师的负担,这表明其经济性是相当可观的。目前,网络应用软件运行的模式主要有二类:Client/server模式,Browser/server模式。前者能充分发挥客户端PC的处理能力,很多工作可以在客户端处理后再提交给服务器,但需要高昂的维护成本且投资大;后者客户端不用维护,成本降低,选择更多,运用方便,操作简单。基于等级考试的特征,用Browser/server模式来设计考试系统比较合适。二、国内外研究现状及发展趋势(含文献综述)20世纪70年代,美国考试委员会着手进行计算机模拟考试的研究工作,并于1983年编制出有效的模拟考试系统,当时的名称是计算机辅助考试系统。1990年8月,美国加利福尼亚、得克亚斯等十个州创建各州以及各高等院校相互认可的学位证书以及相应的教学体系,从而正式拉开了网络远程考试的序幕。与西方发达国家的突发猛进相比,国内的计算机考试技术研究工作开展的相对较晚,但国内在网络远程教学研究工作发展相当迅速。通过对国内外计算机考试系统的调查,我们发现他们具有以下特点:(1)C/S结构和B/S结构并存,但基本上可以在网络上使用;(2)大都提供自动组卷和自动评卷功能,但水平参差不齐;(3)均采用开放式试题库,扩充比较容易;(4)对试题库的分析管理部分都提供了最基本的功能。三、本课题研究内容本系统开发的初衷在于实现一个在线的考试系统,例如管理员添加试题,学生登录系统进行考试,点击交卷后自动评分,老师查阅学生的分数等。本系统的具体流程图如下图所示:登陆界面管理员登录学生登录登陆界面管理员登录学生登录管理员界面学生信息管理题库信息管理学生成绩管理学生信息的增删改试题的增删改学生成绩的查阅用户界面在线答题页面提交后查询成绩本系统根据软件工程的研究方法大致可分为以下几个阶段:(1)可行性的研究和项目开发计划:最主要的任务就是“要解决的问题是什么”,了解用户的需求,从技术上、经济上和社会上进行系统开发并认证软件系统的可行性。(2)需求分析:确切地回答“软件系统是做什么的问题”,把要解决哪些问题、要满足用户哪些具体的信息需求调查、分析清楚,从逻辑上或从功能需求上提出系统的方案。(3)概要设计:①就是设计软件的结构,理清楚结构由哪些模块组成,这些模块的层次结构又是怎样的,各个模块的功能是什么,以及各模块间的调用关系,及其系统总体的数据结构和数据库结构。②本系统在设计时采用结构化程序的设计方法,系统的总体结构采用菜单调用表单的方式,利用表单来对信息进行管理、数据处理、信息查询、系统维护等操作。(4)系统实现:开发平台:操作系统平台(WindowsXP)、数据库(SQL)、开发工具(MyEclipse)及其它硬件环境。五、研究目标、主要特色及工作进度根据当前管理信息系统科学的、实用的理论,用我所学知识力求能开发出对工资支付管理现代化水平的有所提高的管理软件,完善工资管理,提高工资管理效率。本文研究主要分几个阶段:第一阶段:主要了解搜集关于基于MyEclipse开发之在线考试系统的发展形势,制定合适的任务安排。第二阶段:熟悉在线考试系统所需的环境,完成备忘录系统开发并进行运行调试。第三阶段:对调试运行结果进行分析,提出可行性意见,对基于MyEclipse开发之在线考试系统进行完善。第四阶段:进行总结。六、参考文献[1]汤一平主编Java语言程序设计.[M].北京:科学出版社,[2006][2]周亚辉主编Java数据库系统项目开发实践.[M].北京-科学出版社.[2005][3]陈志泊,李冬梅,王春玲主编数据库原理及应用教程.[M].北京-人民邮电出版社.[2007][4]牛丽平、郭新志、宋强、杨继萍主编UML面向对象设计与分析.[M].北京-清华大学出版社.[2007][5]许家珆主编软件工程――方法与实践.[M].北京-电子工业出版社.[2007][6]袁然,郑自国,邹丰义主编Java案例开发集锦.[M].北京-电子工业出版社.[2005][7]邵鹏鸣主编Java面向对象程序设计:基础、设计、实现与应用程序开发.[M].北京:清华大学出版社,[2006][8]施伯乐,丁宝康,汪为主编数据库系统教程(第三版).[M]高校教育出版社.[2008][9]张泊平主编现代软件工程.[M]清华大学出版社,北京交通大学出版社.[2009][10]刁成嘉主编UML系统建模与分析设计.[M]机械工业出版社.[2007][11]张广彬,孟红蕊,张永宝主编Java课程设计案例精编.[M]北京:清华大学出版社.[2007][12]陈天河主编Java数据库高级编程宝典.[M]北京:电子工业出版社.[2006][13]刘亚滨,杨红主编精通Eclipse.[M北京:电子工业出版社.[2004][14]朱福喜,傅建明,唐晓军主编Java项目设计与开发范例.[M]北京:电子工业出版社.[2009][15]美)JohnW.Satzinger,(美)RobertB.Jackson,(美)StephenD.Burd著李芳等译系统分析与设计.[M]北京:电子工业出版社.[2006]宜春学院2011届毕业设计答辩资格审查表题目在线考试系统学生姓名周苏专业计算机科学与技术班级07计科学号0731301107检查内容设计完成情况良好开题报告有外文资料翻译有中、英文摘要所需设备、图书齐全软硬件验收良好设计期间考勤情况全勤累计旷课时间无学生自查说明完成了在线考试系统分析、设计和实现。本论文资料齐全,包括任务书、开题报告、正文以及中外文资料。在线考试系统的设计实现良好,代码完整。学生签名:年月日指导教师意见(说明是否进行答辩及评定成绩)指导教师签名:成绩年月日宜春学院设计原创性申明本人郑重申明:所呈交的设计是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本设计不包含任何其他个人或集体已经发表或撰写的成果。对本文的研究作出重要贡献的个人和集体,均在文中以明确方式表明。本人完全意识到本申明的法律责任,其后果由本人承担。作者签名:日期:设计版权使用授权书本设计完成者完全了解学校有关保留、使用设计的规定,同意学校保留并向国家有关部门或机构送交设计复制品及设计说明书,允许设计说明书被查阅和借阅。本人授权宜春学院可以将本设计的设计说明书全部或部分内容编入数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本设计的设计说明书。作者签名:日期:导师签名:日期:在线考试系统宜春学院数学与计算机科学学院计算机科学与技术专业周苏指导老师:吴志男摘要随着计算机应用的迅猛发展,应用不断扩大,人们迫切要求利用在线考试系统及时检验自己的学习效果,已发现自己的不足,使自己的学习效率得到很大提高。等级考试系统中题目的生成、试卷的提交、成绩的批阅等都可以在上自动完成。只要形成一套成熟的题库就可以实现考试的自动化。基于等级考试的特征,用Browser/server模式来设计考试系统比较合适。此系统实现了考生进入考试以及管理员管理功能,简单的列出了几个主界面图以及主要的功能的设计,分析和实现代码以及数据库表的设计。关键词在线考试系统;考生;管理员AbstractWiththerapiddevelopmentofcomputerapplications,applicationscontinuetoexpand,Peopleurgentlyrequiretheuseofonlineexaminationsystemtotesthislearningtimehasbeenfoundwanting,sothattheirlearningefficiencyisgreatlyimproved.ExaminationSysteminthesubjectgenerated,papersubmissions,markingandsoresultscanbeautomaticallycompleted.Examaslongastheformationofamaturetestautomationcanbeachieved.Basedonthecharacteristicsofgradeexams,withBrowser/servermodeltodesigntheexaminationsystemmoreappropriate.Thissystemimplementsthecandidatesentertheexamination,andadministratormanagementfunctions,thesimplediagramshowsthemaininterfaceandseveralkeyfeaturesofthedesign,analysisandimplementationofthecodeanddatabasetabledesign.Keywords:Onlineexaminationsystem;candidates;Manager1前言在线考试系统主要是应用于各种等级认证考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证、客观,更加激发学生的学习爱好。等级考试是现阶段研究开发的一个热点。它是建立在国际互联网上的应用系统,客户端的配置可以极为简单,使考试不受地域的局限。一个完备的等级考试系统可以使用户在网上学习过后及时检验自己的学习效果,已发现自己的不足,使得学习效率得到很大提高。等级考试系统中题目的生成、试卷的提交、成绩的批阅等都可以在上自动完成。只要形成一套成熟的题库就可以实现考试的自动化。这样一来,教师所要做的只是精心设计题目、维护题库,而不是组织考试,从而大大减轻了教师的负担,这表明其经济性是相当可观的。为了适应新形势的发展,我进行了这一系统的初步设计工作,也可以说是做一个初步的探索,希望它能够在各类考试中发挥高效、便捷的作用,把老师从繁重的工作中解脱出来!作为一名计算机专业的学生.为了锻炼自己的能力,把平时学的知识与实际结合起来,我选择开发一个在线考试系统来作为自己的毕业设计。之所以选择这个题目做为毕业设计,是考虑明显的传统的考试方式已经不能适应现代考试的需要。随着计算机应用的迅猛发展,应用不断扩大,如教学和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。人们迫切要求利用这些技术来进行等级考试。2背景知识2.1java技术Java,是由SunMicrosystems公司于1995年5月推出的Java程序设计语言和Java平台的总称。Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Javaapplet。2.1.1平台构架Java平台由Java虚拟机(JavaVirtualMachine)和Java应用编程接口(ApplicationProgrammingInterface、简称API)构成。Java应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。现在Java平台已经嵌入了几乎所有的操作系统。这样Java程序可以只编译一次,就可以在各种系统中运行。2.1.2主要特性1、Java语言是简单的。Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用Java。另一方面,Java丢弃了C++中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,Java语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理里而担忧。2、Java语言是一个面向对象的。Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。Java语言全面支持动态绑定,而C++语言只对虚函数使用动态绑定。总之,Java语言是一个纯的面向对象程序设计语言。3、Java语言是分布式的。Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(javanet),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。4、Java语言是健壮的。Java的强类型机制、异常处理、废料的自动收集等是Java程序健壮性的重要保证。对指针的丢弃是Java的明智选择。Java的安全检查机制使得Java更具健壮性。5、Java语言是安全的。Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。除了Java语言具有的许多安全特性以外,Java对通过网络下载的类具有一个安全防范机制(类lassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类SecurityManager)让Java应用设置安全哨兵。6、Java语言是体系结构中立的。Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件),然后可以在实现这个Java平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。7、Java语言是可移植的。这种可移植性来源于体系结构中立性,另外,Java还严格规定了各个基本数据类型的长度。Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSIC实现的。8、Java语言是解释型的。如前所述,Java程序在Java平台上被编译为字节码格式,然后可以在实现这个Java平台的任何系统中运行。在运行时,Java平台中的Java解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。9、Java是高性能的。与那些解释型的高级脚本语言相比,Java的确是高性能的。事实上,Java的运行速度随着JIT(Just-In-Time)编译器技术的发展越来越接近于C++。10、Java语言是多线程的。在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。通常有两种方法来创建线程:其一,使用型构为Thread(Runnable)的构造子将一个实现了Runnable接口的对象包装成一个线程,其二,从Thread类派生出子类并重写run方法,使用该子类创建的对象即为线程。值得注意的是Thread类已经实现了Runnable接口,因此,任何一个线程均有它的run方法,而run方法中包含了线程所要运行的代码。线程的活动由一组方法来控制。Java语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为synchronized)。11、Java语言是动态的。Java语言的设计目标之一是适应于动态变化的环境。Java程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有利于软件的升级。另外,Java中的类有一个运行时刻的表示,能进行运行时刻的类型检查。Java语言的优良特性使得Java应用具有无比的健壮性和可靠性,这也减少了应用系统的维护费用。Java对对象技术的全面支持和Java平台内嵌的API能缩短应用系统的开发时间并降低成本。Java的编译一次,到处可运行的特性使得它能够提供一个随处可用的开放结构和在多平台之间传递信息的低成本方式。特别是Java企业应用编程接口(JavaEnterpriseAPIs)为企业计算及电子商务应用系统提供了有关技术和丰富的类库。2.2数据库操纵语言SQLSQL(StructuredQueryLanguage)是目前关系数据库领域中主流查询语言,它不仅能够在单机环境下提供对数据库的各种操作访问,而且还能作为一种分布式数据库语言用于客户机/服务器模式数据库应用的开发。对数据库来说,一个简单的数据获取要求被定义为一个查询,通常需要为此开发特定的查询语言。SQL的概念是1974年由Boyce和Chamberlin提出的,1986年成为一个ANSI标准,1987年成为ISO标准,目前它广泛应用于数据库管理系统里。SQL是一种数据库编程语言,一个SQL查询至少包括以下3个元素:(1)一个动词,它决定了操作的类型,例如SELECT。(2)一个宾语,由它指定操作的目标,是一个或者多个字段,是一个或者多个表对象。(3)一个介词短语,由它来决定操作的对象,是数据库的某个对象,例如一个表,或者一个视图。一个SQL语句被传送给一个基于SQL的查询引擎,产生查询结果集,结果集以行和列的形式给出。2.2.1SQL命令SQL命令包括以下几种:(1)SELECT命令:用于在数据库中查找满足特定条件的记录,形成特定的查询结果集。这是所有SQL语句中最常使用的SQL命令。(2)CREATE命令:用于创建数据库的特定对象,如表、索引、视图。(3)DROP命令:用于删除数据库中的特定对象。(4)ALTER命令:用于调整数据库对象的结构。(5)INSERT命令:用于在数据库中向特定表添加一行记录。(6)DELETE命令:用于删除数据库中表的某些记录。(7)UPDATE命令:用于修改数据库中表的某些记录。2.2.2SQL从句SQL使用从句来指定查询条件,SQL从句包括如下几种类型:(1)FROM从句:用于指定从其中选定记录的表的名称。(2)WHERE从句:用于指定所选定记录必须满足的条件。(3)GROUPBY从句:用于指定查询结果集按照特定的列分成不同的组。(4)HAVING从句:用于说明每个组需要满足的条件,一般同GROUPBY从句一起使用。(5)ORDERBY从句:用于指定查询结果集按照特定的列排序。2.2.3SQL运算符SQL使用的运算符主要有两类:逻辑运算符和比较运算符。a.逻辑运算符逻辑运算符通常出现在WHERE从句里,用于组合查询的条件。SQL语句中经常出现的逻辑运算符主要是如下三种:1.AND:对条件表达式进行“与”操作;2.OR:对条件表达式进行“或”操作;3.NOT:对条件表达式进行“非”操作。b.比较运算符比较运算符用于比较两个表达式的值,从而得到一个条件表达式。下面是常用的SQL比较运算符:(1)<:小于;(2)>:大于;(3)<=:不大于;(4)>=:不小于;(5)=:等于;(6)BETWEEN:指定值的范围;(7)LIKE:用于模糊查询;(8)IN:用于指定数据库中的记录。3系统需求分析3.1功能性需求根据在线考试系统的需要,要求系统具有以下功能:(1)管理员具有以下功能:查增删考生信息、查增删试题信息以及对考生考试成绩的管理以及密码的修改(2)考生成功登陆系统后可进行考试并正确提交。本系统的层次方框图如下图3-1所示:登陆界面登陆界面管理员界面考生界面查看考生信息添加考生信息删除考生信息查看试题信息添加试题信息删除试题信息修改密码在线考试在线考试系统提交试卷图3-1层次方框图下面是以角色为基础得到的用例图,如图3-2所示:图3-2用例图说明:(1)管理员用户包含四个用例:登陆、考生信息管理、试题管理、密码修改;(2)考生用户包含两个用例:登陆、考试。其中考生信息管理用例和试题管理用例包括以下功能,如图3-3所示:图3-3管理员用例图说明:1)考生信息管理包含四个用例:考生信息管理、考生信息删除、考生信息查看以及查询考生分数。2)试题信息管理包含三个用例:查看试题信息、增加试题信息、删除试题信息。3.2开发环境(1)采用MyEclipse开发应用程序;(2)采用SQLServer2000作为数据库平台;(3)操作系统WindowsXP。总体设计本系统开发的初衷在于实现一个在线的考试系统,例如管理员有考生信息管理、试题信息管理以及密码修改等功能,学生登录系统进行考试,点击交卷后自动评分,管理员查阅学生的分数等。本系统中业务流程图如下图4-1所示:图4-1系统业务流程图说明:(1)本图所示为软件的具体操作过程;(2)主要分为两方面:管理员业务流程图和考生业务流程图。4.1数据库设计设计数据库时应该首先充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。用户的需求具体体现在各种信息的提高,保存,更新和查询等方面。这就要求数据库结构能够充分满足各种信息的输入与输出。一般数据库设计要利用实体关系模型,分析出实际应用中的各种实体是数据库设计的关键,每个实体具有其属性,根据属性就可以确定数据模式,从而设计出数据库表。系统的需求具体体现在对各种信息的保存,修改和查询等方面。因此,一个满足系统要求的数据库必须充分照顾到对各种信息的输入输出,以免遗漏导致开发时返工。通过对系统功能的分析,在线考试系统需要包含以下数据库信息:(1)考生表:包括考生编号、考生姓名、密码和分数;(2)管理员表:包括管理员编号、管理员姓名、密码;(3)试题表:包括试题号、试题主干、选项及正确答案。数据库的概念结构设计是根据用户需求设计数据库的概念数据模型,概念模型是从用户角度看到的数据库,可用E-R模型表示。本系统的全局E-R如下图4-2所示:nnnn1n1考生试题管理员管理管理考试图4-2系统全局E-R图下面是系统的局部E-R图,包括考生、试题以及管理员实体E-R图。考生实体E-R图如下图4-3所示:图图4-3考生实体E—R图考生编号考生姓名密码分数考生考生数据库设计createtableusera(userIdchar(9)NOTNULL,userNamechar(20)NOTNULL,userPasswordchar(9)NOTNULL,userScorechar(3),PRIMARYKEY(userId));管理员实体E-R图如下图4-4所示:管管理员管理员编号管理员姓名密码图4-4管理员实体E—R图管理员数据库设计:createtableadmin(adminIdchar(10)NOTNULL,adminNamechar(20)NOTNULL,adminPasswordchar(10)NOTNULL,PRIMARYKEY(adminID));试题实体E-R图如下图4-5所示:试题编号试题编号试题题干正确答案试题选项A试题选项B试题选项C试题选项D试题图4-5试题实体E—R图试题数据库设计:createtabletitle(titleIdchar(10)NOTNULL,titleMainchar(500)NOTNULL,titleachar(100)NOTNULL,titlebchar(100)NOTNULL,titlecchar(100)NOTNULL,titledchar(100)NOTNULL,titleAnswerchar(1)NOTNULL,PRIMARYKEY(titleId));详细设计5.1界面设计5.1.1登陆界面系统启动后,初始化完成从数据库中读取信息之后,显示主界面如下图5-1所示:图5-1登陆界面在此页面正确登录之后才能进行相关的操作。5.1.2在登陆界面选择考生身份,输入正确的用户名和密码,即可看到考生须知,仔细阅读完毕后,点击开始考试即考生就可以进行考试了。考生考试界面图如下图5-2所示:图5-2考生考试界面考生做完所有的试题之后点击提交试卷即可,系统自动阅卷,将分数返回界面。5.1.3管理员界面图在登录界面选择管理员身份,正确输入用户名和密码之后就可以进入到管理员界面,管理员界面如下图5-3所示:图5-3管理员界面管理员可以对考生信息、试题信息以及个人信息进行管理。之间点击左边的各项功能即可进行相应的操作。5.2关键用例的UML顺序图为了更加详细地介绍本系统中各个用例的工作过程,接下来我们给出本系统中关键用例的UML顺序图。顺序图反映了各用例的工作流程,以及工作过程中系统各层次间的协作关系,这对编码实现非常重要。5.2.1登陆/退出系统顺序图图5-4登陆/退出的顺序图说明:系统的所有用户都必须经过登陆之后才能使用系统所提供的功能,不登陆则不能正常使用。5.2.2考生测试顺序图图5-5考生测试的顺序图说明:1)该用例实际上分为两部分:第一部分是从试题库当中提取试题信息,随机的生成试卷;第二部分是用户在试题生成之后开始测试,测试完毕之后系统会自动判断测试的结果并把测试分数显示出来。2)测试之后的成绩会被记录至系统数据库中,以便管理员进行查询。5.2.3管理员添加试题顺序图:图5-6添加试题的顺序图说明:1)试题的属性包含试题编号、试题题干、试题选项和试题正确答案。2)试题被输入系统之后,将会被附加在相应的属性信息下。系统将对试题的内容做检查,如果发现内容重复了,将需要重新输入。5.2.4管理员添加考生顺序图:图5-7添加考生顺序图说明:1)考生的属性包括考生编号、考生姓名、分数和密码。2)考生信息被输入系统之后,将会被附加在相应的属性信息下。系统将对考生的信息做检查,如果发现内容重复了,将需要重新输入。5.3用户功能设计在此系统中用户只能登陆系统进行考试。在登陆页面中输入用户号和密码以及选择考生身份点击“登陆”按钮,即可进入图5-8页面:图5-8考生须知页面进入后在页面右上角可以看到自己的编号,认真阅读考试须知之后点击“开始考试”按钮进行考试,考生做完题之后点击“提交试卷”按钮即可以及看到自己的考试分数。从数据库中抽取试题到考生考试页面的数据库语言:Stringsql="selecttop5*fromtitleorderbynewid()";将试题显示在考试页面:<%for(inti=2;i<=n-1;i++){%> <%if(i==3){%><inputtype="radio"name="status1"value="A"><%}%><%if(i==4){%><inputtype="radio"name="status1"value="B"><%}%><%if(i==5){%><inputtype="radio"name="status1"value="C"><%}%><%if(i==6){%><inputtype="radio"name="status1"value="D"><%}%><optionvalue="<%=rsmd.getColumnName(i)%>"><%=rs.getString(i)%>考生提交试卷之后将考生的答案与数据库中的正确答案对比得到考生的分数,将考生的分数更新到数据库中:stmt.executeUpdate(“updateuserasetuserScore=”+s+”whereuserId=”username);再将分数显示给考生。5.4管理员功能设计管理员在此系统可对考生信息,试题信息以及管理员个人信息进行管理。5.4.1考生信息管理考生信息查询:直接对数据库进行读出考生信息显示到页面<%Stringl="jdbc:odbc:testdsn";try{try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); }catch(java.lang.ClassNotFoundExceptionex){ System.err.println(ex.getMessage());}Connectioncon=DriverManager.getConnection(l,"sa","admin");Statementstmt=con.createStatement();Stringsql="select*fromusera";ResultSetrs=stmt.executeQuery(sql);ResultSetMetaDatarsmd=rs.getMetaData();while(rs.next()){for(inti=1,n=rsmd.getColumnCount();i<=n;i++){%> <optionvalue="<%=rsmd.getColumnName(i)%>"><%=rs.getString(i)%></option><%}%><br><%}rs.close(); con.close(); }catch(SQLExceptionex1){ ex1.getMessage(); ex1.getStackTrace(); }%>考生信息添加:图5-9添加考生页面此动作要判断添加的考生编号是否在数据库中已经存在,如果存在则不能添加。Stringsql="select*fromuserawhereuserId="+userid;rs=stmt.executeQuery(sql);if(rs.next()){forward="failure.jsp";RequestDispatcherdispatcher=request.getRequestDispatcher(forward); dispatcher.forward(request,response); }else{stmt.executeUpdate("insertintouseravalues("+userid+","+username+","+userpass+",-1)"); forward="success.jsp"; RequestDispatcherdispatcher=request.getRequestDispatcher(forward); dispatcher.forward(request,response);}考生信息删除:图5-10删除考生页面删除考生时要注意判断此考生是不是在数据库中。Stringsql="select*fromuserawhereuserId="+userid;rs=stmt.executeQuery(sql);if(rs.next()){sql="deletefromuserawhereuserId="+userid;stmt.executeUpdate(sql);RequestDispatcherdispatcher=request.getRequestDispatcher("success.jsp");dispatcher.forward(request,response);}else{RequestDispatcherdispatcher=request.getRequestDispatcher("failure.jsp");dispatcher.forward(request,response);}查询考生分数:只需要到数据库中读取即可。5.4.2试题信息管理查询试题:直接对数据库进行读出试题信息显示到页面。<%Stringl="jdbc:odbc:testdsn";try{ try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); }catch(java.lang.ClassNotFoundExceptionex){ System.err.println(ex.getMessage()); }Connectioncon=DriverManager.getConnection(l,"sa","admin");Statementstmt=con.createStatement();Stringsql="select*fromtitle";ResultSetrs=stmt.executeQuery(sql);ResultSetMetaDatarsmd=rs.getMetaData();while(rs.next()){for(inti=1,n=rsmd.getColumnCount();i<=n;i++){%> <optionvalue="<%=rsmd.getColumnName(i)%>"><%=rs.getString(i)%></option><%}%> <br><%}rs.close(); con.close(); }catch(SQLExceptionex1){ ex1.getMessage(); ex1.getStackTrace(); }%>试题添加:图5-11添加试题页面添加试题时要先查询数据库中是否有相同的题目,查询语句:Stringsql="select*fromtitlewheretitleId="+titleid+"ortitleMain="+titlemian;如果没有即可进行添加,如果有相同的就不能进行添加。试题删除:图5-12删除试题页面删除试题时要注意判断此试题是不是在数据库中。con=DriverManager.getConnection(l,"sa","admin");stmt=con.createStatement();Stringsql="select*fromtitlewheretitleId="+titleid;rs=stmt.executeQuery(sql);if(rs.next()){ sql="deletefromtitlewheretitleId="+titleid; stmt.executeUpdate(sql); RequestDispatcherdispatcher=request.getRequestDispatcher("success.jsp"); dispatcher.forward(request,response);}else{ RequestDispatcherdispatcher=request.getRequestDispatcher("failure.jsp"); dispatcher.forward(request,response);}5.4.3个人密码管理图5-13密码修改页面实现页面修改的部分代码:con=DriverManager.getConnection(l,"sa","admin");stmt=con.createStatement();Stringsql="select*fromadminwhereadminPassword="+u1;rs=stmt.executeQuery(sql);if(u2.equals(u3)){ if(rs.next()){stmt.executeUpdate("updateadminsetadminPassword="+u2+"whereadminPassword="+u1); forward="success.jsp";RequestDispatcherdispatcher=request.getRequestDispatcher(forward); dispatcher.forward(request,response); }}else{ forward="failure.jsp";RequestDispatcherdispatcher=request.getRequestDispatcher(forward); dispatcher.forward(request,response);}总结与展望因为时间关系,简单的实现了在线考试系统的考生考试以及管理员的管理功能。主要完成了以下任务:实现系统需求分析,明确了系统功能;详细设计和实现系统功能。界面操作简单,在技术上应用了目前比较流行而稳定的MyEclipse开发工具和灵活而简单的SQLserver2000数据库管理系统。该软件已经测试。简洁而舒适的界面,灵活的可定制功能充分体现了人性化的软件设计思想。但是本系统还存在待改进之处。谢辞参考文献[1]汤一平主编Java语言程序设计.[M].北京:科学出版社,[2006][2]周亚辉主编Java数据库系统项目开发实践.[M].北京-科学出版社.[2005][3]陈志泊,李冬梅,王春玲主编数据库原理及应用教程.[M].北京-人民邮电出版社.[2007][4]牛丽平、郭新志、宋强、杨继萍主编UML面向对象设计与分析.[M].北京-清华大学出版社.[2007][5]许家珆主编软件工程――方法与实践.[M].北京-电子工业出版社.[2007][6]袁然,郑自国,邹丰义主编Java案例开发集锦.[M].北京-电子工业出版社.[2005][7]邵鹏鸣主编Java面向对象程序设计:基础、设计、实现与应用程序开发.[M].北京:清华大学出版社,[2006][8]施伯乐,丁宝康,汪为主编数据库系统教程(第三版).[M]高校教育出版社.[2008][9]张泊平主编现代软件工程.[M]清华大学出版社,北京交通大学出版社.[2009][10]刁成嘉主编UML系统建模与分析设计.[M]机械工业出版社.[2007][11]张广彬,孟红蕊,张永宝主编Java课程设计案例精编.[M]北京:清华大学出版社.[2007][12]陈天河主编Java数据库高级编程宝典.[M]北京:电子工业出版社.[2006][13]刘亚滨,杨红主编精通Eclipse.[M北京:电子工业出版社.[2004][14]朱福喜,傅建明,唐晓军主编Java项目设计与开发范例.[M]北京:电子工业出版社.[2009][15]美)JohnW.Satzinger,(美)RobertB.Jackson,(美)StephenD.Burd著李芳等译系统分析与设计.[M]北京:电子工业出版社.[2006]外文资料译文:在线考试系统的设计与实现目前.学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情.可以说传统的考试方式已经不能适应现代考试的需要。随着计算机应用的迅猛发展,网络应用不断扩大,且这些应用正逐步深入到千家万户。人们迫切要求利用这些技术来进行在线考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证、客观,更加激发学生的学习兴趣。而在线考试系统正是根据这一思想开发出来。1在线考试系统需求分析要实现一个软件系统,首先应该进行需求分析,这样才能令设计出的软件满足用户的各项功能。下面就对在线考试系统的设计进行需求分析。首先,因为考试是面向特定的某些对象的,所以考生进入系统应该进行身份验证。考生进入考试系统后.应该能根据自己的需要选择考试科目.所以该系统还应具有考试科目选择的功能。在线考试基于网络环境,试卷应该从服务器的数据库随机抽取试题后动态生成的。另外,系统还应该对考试时间进行控制,时间到了会要求考生交卷。考生选择答案提交后,应该由计算机自动判卷,得到成绩后显示出来。考试完毕后,可以返回登录界面或继续考试。此外,应该能够方便、快捷的对在线考试系统管理。其次,系统应该具备的基本功能:(1)考生数据信息的管理:管理员可以增删考生;(2)试题数据信息管理:分科目,对单选、多选,判断三种题型试题库的管理,使试题的增删、编辑更为简便;(3)在线考试:系统严格控制整个考试过程,实行时间的监控与权限的控制,考生需要在限定的考试时间内交卷;(4)计算机自动阅卷:本系统只考虑客观题,要求计算机能自动阅卷,然后马上显示出考生分数。(5)成绩查阅:考生考完以后,管理员应该能对所有纪录进行查询,并应该可以删除指定纪录。除了实现上述功能以外,在线考试系统还应该具有友好、简洁的界面,安全性要高,稳定性要强,能够满足多人同时及进行在线考试。2在线考试系统总体设计2.1基本简介该系统是专门用于考生登录、参加在线考试以及管理员进行试题录入、修改、删除、成绩查询、管理用户的ASP应用程序。它应该具有开放性、方便性和灵活性。管理员不仅可以轻松地向题库添加、修改和查询试题,而且还可以自动新增科目并建立相应的数据;它还允许用户根据自己的需求,选取考试科目。考生进行有效的身份验证登录后,选择考试科目,并要求在规定的时间内进行答题,当达到规定的时间后,系统将自动予以提示。一旦考生做完交卷后便能立即看到自己的考试成绩,并且其分数将被记入库中以供审核和查阅:另外.还可完全由计算机自动灵活、随机的抽取试题库中的各类试题组成各种形式的试卷,其内容会随着库中试题的改变而改变,而且,不同的考生生成的试题是不同的。2.2系统结构图根据需求分析,在线考试系统的结构如图1。登陆界面登陆界面数据管理界面在线考试系统进入页面考生数据管理题库信息管理系统配置管理考生登陆管理考试时间控制当前试题界面图1在线考试系统结构图2.3详细设计详细设计是整个设计过程中.最重要的步骤之一。下面就分如下几个部分对系统进行详细设计:(1)试题设计(2)数据库中表的设计(3)考生、管理员权限(4)功能模块详细设计(5)在线考试系统考试模块框图.(1)试题设计鉴于主观题的主观性.目前无法实现系统自动判卷,所以本系统只作客观题部分。一般情况下,单选题往往在四个供选的答案A、B、C、D中选择唯一正确的答案:多选题是在供选答案中有多个选择;而判断题实质上就相当于有两个选项的单选题。因而,本系统中所涉及的单选题和多选题跟过去的大体相同,并且假设多选题一般情况下也是最多提供四个备选答案,标准答案至少有一个。(2)数据库中表的设计通常,每一类型的试题都应有~个表结构。我们采用把全部试题集中在一起的方案来建立数据表,而每一份试题都集中在一个表中,每道客观题均有四个备选答案项f除判断题外),每个试题均具有题目、备选答案等数据段表示其属性。字段名一般是相应的英文单词。这样,查询起来较方便,会节约时间,也不致于造成数据十分杂乱等。(3)管理员权限在此系统中可以由若干个管理员,即系统管理员。他们具有一般考生所没有的权限,即具有管理考生、试题以及试卷等内容的权力。它不需注册,在数据库有一个表来存放相关信息,可由以存在的管理员添加或删除管理员。管理员可以向题库中添加各种类型且符合要求的试题,也可以对它们进行修改和删除。同时,管理员也能对科目、考生、考试记录等数据进行管理。(4)试题管理首先,管理员选择试题所属科目。若菜单中没有该科目,则可以新增一个。返回、刷新一次页面,即可看到新增的科目名称。而且,在本系统中其它需要选择科目的地方也会自动更新。其次,每道试题有类型、试题内容与选项和答案等栏目。管理员输入完以后,即可看到预览效果。如果输入不合法,或者该科题库中已有该试题编号和内容等,则系统给出相应的提示或警告,以待更正。管理员还可以对试题进行修改。不过,对于各表中的主键不用修改,避免了造成系统中的数据混乱,或者覆盖其它有用数据的现象。如果用户执行了非法操作,则必须重新操作。管理员可以删除不再需要的试题。2.4功能模块设计2.4.1考生登录模块考生的数据要在管理员添加在数据库后才可以进行登录,因为本系统是针对学校内部的学生而设计的,所以它的用户受到一定的限界面进行考试。在点击“确定”按钮后,首先会进入“考生考试注意事项”的提醒界面,当考生阅读完毕后进人在线考试系统。2.4.2在线考试模块进入在线考场是本系统最重要的部分之一。因为一个系统如果涉及到现实的话,就必须考虑得十分周到、完善。考生登录后,只要选择考试科目以后,就可以调出试卷进行在线考试。为了实现动态随机不重复的抽取试题,需要在选题过程中每选出一题.就要在试题库中作相应的标志,以便下次不会重复取出此题。试卷出来后要对试题库中的标志位复原。这样就会使每个考生的试卷都不同。考生的其答题信息通过单、复选按钮选择答案来反映。考试结束采取自主交卷和到了规定的时间自动题示有机结合的方式办法予以实现。制。当考生登录的信息与数据库中的数据相符时就可以进入在线考试3在线考试系统的具体实现在进行了整体设计以后.就开始进行详细的设计及编码工作。也就是设计文件和把他们有机地组织在一起实现所有功能。根据系统总体设计,首先系统要有一个登录界面.在这个登录界面中.考生可以从该界面登录参加考试。管理员也可以进入管理登录界面。在考生正确输入用户名和密码以后,接着应该进入考试科目选择界面。在该界面上,考生选择参加考试的科目,这个人机交互的过程是必不可少的。考生确定考试科目以后,进入开始考试界面,由计算机随机提取试题,显示出来组成试卷,并开始进行计时。考生再次进行考试,答完试题后交卷,进入下一个界面。考生提交答卷后,由计算机进行处理—判卷,得出考试分数.显示出来.并把该生考试记录存人数据库。在这个界面上应该可以返回继续进行考试或回到登录界面。以上是系统进行考试功能的部分.要对系统进行管理,如试题数据管理、考生数据管理、系统配置管理等就需要设计一些管理界面。下面就来逐步进行设计。要进行管理首先要有管理员登陆验证,这里另外设计了一个界面,使它与考生登录区别开来。这个界面与用户登录界面表面上很相似,但是他们是从不同的表中提取数据进行验证的.以便于系统扩充和增加安全性。管理员登录以后,应该有一个管理项目选择菜单,其中包括考生数据管理、试题数据管理、系统配置管理。考生数据管理下拉菜单中包括全部考生浏览、添加考生数据、考生数据初始、考生考试监控,管理员在此可以对用户进行管理。试题数据管理可以实现题库信息浏览、添加题库建表、浏览选择试题、添加试题数据、试题后台设置等功能。最后是系统配置管理界面,它可以对系统页面、密码权限进行设置,同时可以实现数据的备份与还原,登录或退出系统。4结束语随着教学改革的不断深化.素质教育必然将取代传统的应试教育。加强素质教育的有力措施之一就是要改革传统的考试模式。计算机网上考试系统是一种有益的考试尝试.它能充分利用Intem~的资源。实现考试的的网络化.这对教学方法、教学手段的改革将起到积极的促进作用。另外,本系统实现了无纸化、网络化考试,极大地减轻了教师的阅卷、评分和试卷分析等劳动,为确保考试的规范化、标准化提供了一个网络化途径。外文资料原文:OnlineExaminationSystemDesignandImplementationPresent,Avarietyofschoolsandthecommunitymostofthetraditionaltestexaminations,inthisway,theorganizationofatestatleastfivestepstogothroughthatmanualatitle,examcandidates,artificialgrading,performanceevaluationandanalysispapers.Clearly,asthetypeofexaminationandexaminationrequirementsofincreasingthecontinuousimprovementwillbeincreasingtheworkloadofteachersandtheirworkwillbeaverycumbersomeanderrorpronetodo.Canbesaidthatthetraditionaltestmethodscannotmeettheneedsofmodernexaminations.Withtherapiddevelopmentofcomputerapplications,webapplicationscontinuetoexpand,andtheseapplicationsaregraduallydeepintomillionsofhouseholds.Peopleurgentlyrequiretheuseofthesetechnologiestoconductonlineexaminations,toreducetheworkloadofteachersandimproveworkefficiency,whilealsoimprovingthequalityoftheexamination,sothattendstobemorenotaryexam,objective,andmoretostimulatestudentsinterestinlearning.Theonlineexaminationsystemisdevelopedbasedonthisidea.1onlineexaminationsystemneedsanalysisToimplementasoftwaresystemneedsanalysisshouldbeconductedfirst,socanthedesignofsoftwaretomeetuser'svariousfunctions.Herethedesignoftheonlineexaminationsystemneedsanalysis.First,becauseexaminationofsomespecificobject-oriented,socandidatesshouldbeauthenticatedintothesystem.Afterthecandidatesentertheexaminationsystem.Shouldbeabletochooseaccordingtotheirneedstestsubjects.Sothesystemshouldalsohavethechoiceoffunctionaltestsubjects.Web-basedonlineexamenvironment,papersshouldberandomlyselectedfromthedatabaseserverafterthedynamicallygeneratedquestions.Inaddition,thesystemshouldalsocontrolthetimeofexamination,Timewillrequirecandidatestocarryoutanassignment.Candidatesselectedtosubmittheanswer,youshouldautomaticallybyacomputergraders,getresultsoutaftertheshow.Aftertheexam,youcanreturntologinscreenorcontinuetotest.Inaddition,shouldbeabletoeasilyandfaston-lineexaminationsystemmanagement.Second,thesystemshouldhavethebasicfunctions:(1)candidatedatamanagement:Administratorscanaddordeletecandidate;(2)Testdataandinformationmanagement:sub-subjects,ontheradio,checkbox,todeterminethreekindsofTestBankQuestionsmanagement,thequestionsoftheadditionsanddeletions,editingeasier;(3)onlineexam:systemsofstrictcontrolovertheentireexaminationprocess,theimplementationofTimemonitoringandcontrolprivileges,candidatesneedtocarryoutanassignmentwithinthetimelimitofthetest;(4)computerautomatedscoring:Thesystemonlyconsidertheobjectivequestions,askthecomputertoautomaticallymarking,andthenimmediatelyshowingcandidatesscore.(5)resultsat:candidatesfinished,theadministratorshouldbeabletoquery

温馨提示

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

评论

0/150

提交评论