基于MVC的在线考试系统的设计与开发 毕业论文.doc

上传人:仙人指路1688 文档编号:3938885 上传时间:2023-03-28 格式:DOC 页数:34 大小:601.50KB
返回 下载 相关 举报
基于MVC的在线考试系统的设计与开发 毕业论文.doc_第1页
第1页 / 共34页
基于MVC的在线考试系统的设计与开发 毕业论文.doc_第2页
第2页 / 共34页
基于MVC的在线考试系统的设计与开发 毕业论文.doc_第3页
第3页 / 共34页
基于MVC的在线考试系统的设计与开发 毕业论文.doc_第4页
第4页 / 共34页
基于MVC的在线考试系统的设计与开发 毕业论文.doc_第5页
第5页 / 共34页
点击查看更多>>
资源描述

《基于MVC的在线考试系统的设计与开发 毕业论文.doc》由会员分享,可在线阅读,更多相关《基于MVC的在线考试系统的设计与开发 毕业论文.doc(34页珍藏版)》请在三一办公上搜索。

1、毕业设计(论文)题 目:基于MVC模式的在线考试系统学生姓名 系(部) 软件学院 专 业 软件开发 指导教师 2011年 05 月 30 日基于MVC的在线考试系统的设计与开发摘 要作为对传统考试方式的改革,网络化考试是近年来研究的一个热点课题。在线考试是网络化考试系统的重要组成部分,本论文的主要工作是设计并实现一个在线考试系统。利用在线考试系统,试卷动态生成,使用计算机自动判卷,大大提高阅卷效率。实现对试题的随机选题,对考生答案自动评分等功能关键词:在线考试,题库,试卷,动态生成THE DESIGN AND DEVELOPMENT OF ONLINE EXAMINATION SYSTEM B

2、ASED ON WEB (BACKGROUND MANAGEMENT)ABSTRACT As the reform of traditional test, the examination system in network is a hot point study in recent years topic. The online examination system is the important part of the examine system in network. The main work of this thesis is design of an on-line exam

3、ination system. With online examination system, test paper can be produced dynamically and can be corrected by computer efficiently. The system provides good security in the fashion of three-tier authorized system including administrator, teacher and student. KEY WORDS: online examination,question d

4、atabase,test papers,produced dynamically目录摘要IABSTRACTII第一章 绪论61.1 研究背景61.2 研究问题的提出61.2.1 研究内容71.2.2 研究目标71.3 研究意义71.4 研究思路与研究方法71.5 论文框架9第二章 相关研究及文献分析102.1 传统考试的概述102.2 在线考试系统的概述102.3 国内外相关研究介绍112.4 研究的“发展趋势”122.5 关键技术122.5.1 Web的结构和工作原理122.5.2 MVC概述13第三章 系统设计143.1 系统需求分析143.1.1 系统可行性分析143.1.2 系统功能需

5、求分析143.2 系统总体设计163.2.1 系统的体系结构163.2.2 在线考试的模块流程163.3 系统详细设计173.3.3 组卷模块173.4.2 数据表设计17第四章 系统实现184.1 开发环境配置184.2 界面制作184.3 程序编码264.3.1 随机选题264.3.2 人工评卷264.3.3 考试计时274.3.4,获取下一题信息274.3.5依据配置文件装载试题284.3.4,获取试题配置题信息284.4 系统测试294.4.1测试环境294.4.2测试过程294.4.3 测试结果30第五章 研究结论与未来研究305.1 研究内容的总结315.2 主要创新点315.3

6、存在的不足点及今后的研究方向32参考文献32致谢33第一章 绪论随着Internet/Intranet技术的飞速发展,基于Web的开发技术得到了极大的应用。为充分利用校园网现有的网络资源,本文开发了一个基于MVC模式的在线考试系统。系统有效解决了传统考试方式所带来的弊端,将传统的书面笔试的出试卷、考试、评阅等多个环节整合成一个集动态出卷、在线考试、自动评阅及成绩查询等多功能为一体的无纸化考试系统。可灵活利用网络完成考生各阶段考试,同时也大大提高了教学与考试质量,减轻教师负担,提高工作效率。1.1 研究背景随着计算机技术的发展和互联网时代的到来,人们已经进入了信息时代,也有人称之为数字化时代。在

7、数字化的网络环境下,学生希望得到个性化的满足,根据自己的情况进行学习,同时希望能够得到科学的评价;老师希望有效改进现有的考试模式,提高考试的效率;教育机构也希望给网上的学生提供更全面灵活的服务,同时希望全面准确地对学生进行跟踪和评价。在线考试系统正式迎合这一市场需求而开发的,它旨在探索一种以互联网为基础的考试模式。通过这种新的模式,为学校创造一种新的考试环境,使考务管理突破时空限制,提高考试工作效率和标准化水平,使学校管理者、教师和学生可以随时、随地通过网络完成考试。1.2 研究问题的提出随着网络技术的飞速发展,现在很多国外的大学和社会其他部门都已经开设了远程教育,通过计算机网络实现异地教育和

8、培训。现在,计算机硬件技术的发展已经达到了相当高的水平。但是,远程教育软件的开发目前还处于起步阶段,随着这项技术的不断深入发展,就要求有更好、更完善的软件系统应用到远程教育当中去,这就给软件设计人员提出了更高的设计要求。远程教育包括很多环节,例如教学系统、答疑系统和考试系统等等。其中很重要的一个环节就是在线考试系统,同时它也是最难实现的环节。在我国,虽然远程教育已经蓬勃地发展起来,但是目前学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会

9、越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。随着计算机应用的迅猛发展,网络应用不断扩大,如远程教育和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。1.2.1 研究内容让系统在操作系统运行稳定,对软、硬件要求低,运行速度快、操作简单、界面友好、易于管理和维护;而且具有较强的针对性、实用性和可操作性,初步解决了校园理论考核层次广、次数多、内容全,以及保密性和公平性差、评卷困难等问题。并对其详细的设计方案、实现技术和运行情况做了分析和研究,最后对未来的工作做了研究与探讨。论文主要围绕系统设计开展研究,保证了考核的公平、公正、公开,有

10、力地促进了理论学习的全面开展。本文重点研究了以下几个方面:(1)系统的体系结构、工作方式、主要功能模块、主要数据的工作流程、数据库配置与连接;(2)系统各功能模块的详细设计、开发及其关键技术4。1.2.2 研究目标我们设计的在线考试系统是一个基于互联网的实时在线考试系统,系统的目标是实现一个基于Internet的智能化远程考试系统,采用开放、动态的系统架构,将传统的考试模式与先进的网络应用相结合5。1.3 研究意义考试是教学中最后也是一个重要的环节,可以帮助教师了解学生对知识的掌握情况,同时也是对自己教学方法的一种检测,利于改进教学。但是这又受到考试本身的各种因素的影响,比如试卷的难易程度、评

11、分标准和考试作弊等。因此在21世纪,推进教育改革的同时,考试改革也是研究的一个重要课题。传统的考试需要经过很多复杂的步骤才能进行。步骤如下:组织教师命题;印刷大量试卷;安排考场、考试时间、监考老师等;进行考试,统计成绩等。这整个过程存在了大量的问题。第一,科学性。试题由部分教师完成,所以出题老师一定对难度和内容的把握非常小心,否则达不到预期的效果。并且每套试题涵盖的知识点固定,造成了对知识考察不全面。第二,保密性。由于从出题到印刷一直到最后的考试,很多人参与,导致保密工作难度较大。第三,公平性。考生考试时所考内容相同,杜绝作弊是考试的一个普遍的难题;考试结束后人工评卷可能造成评分标准较大偏差,

12、从而影响考试的公平性。第四,灵活性。时间地点都是经过统一安排,所以如果考生耽误考试就要参考补考。传统的考试从出题、组卷、印刷,到试卷分发、答题、收卷,再到判卷、公布成绩,整个过程都需要人工参与,周期长,工作量大,容易出错,还要有适当的保密工作,使得整个考试的成本较大。所以组织多人参考的考试相当麻烦。当前网络迅速普及,以Internet技术为代表的信息技术为人们创造了一种新的不受地域、时间和计算机约束的信息交流、共享和协作方式。21世纪是信息化的社会,数据信息应用已进入大规模服务阶段。考试作为最直接体现信息化社会中人们的知识水平的一种方式,是目前使用最为广泛的形式之一。实现无纸化、网络化、自动化

13、的在线考试系统,具有深远的现实意义和实用价值。当前,信息技术的发展突飞猛进,特别是网络技术的兴起,使得考试信息化、自动化成为可能。三层结构的出现为出题、组卷和答题提供了良好的系统架构,从而实现统一管理题库、动态组卷、自动判卷,极大地节省了人力、物力,提高了效率6。本研究是对在线考试系统进行设计并实现。这个题目已经有人在研究,但是现在存在的考试系统,都存在一定的缺陷,没有一个可靠的、实用的在线考试系统。所以本研究具有挑战性和较强的实用性。1.4 研究思路与研究方法论文采用了总体规划、分步实施、软件技术与网络技术相结合,管理模式研究和技术开发相结合,研究与应用相结合的技术路线。首先通过分析在线考试

14、的实际需求,设计考试的组织与管理模式;分析并设计用户登录、考试科目、专业课程等多约束条件下与考试相关的其他信息的关系结构;继而设计考试试卷的组成规则、题型和题量的分布及程序实现方法,分析计算机答卷的技术要求和阅卷评分的准确性要求,并设计解决方案:设计考试系统的模式结构、功能、安全性和网络适应性等;最后,制定系统应用规范。(1)题型和题量的设计在基于互联网的在线考试系统中,题库中的题型设计是一个重要因素,决定了考试是否能够产生科学、合理的测试效果。本系统处理的题型有:单项选择题、多项选择题,并设置有标准答案、试题分值、难度级别,满足考试抽题及自动阅卷的参数要求。同时,通过录入充足的题量,以满足考

15、试抽题的随机选择空间。(2)计算机答卷的技术要求考生试卷中所有试题均为单项选择题、多项选择题。考生答题时,使用鼠标选择各题目中认为正确的选项,单项选择题仅能够选择选中一个答案,多项选择题能够选择两个以上答案。显然,这样的操作技能,针对社会中具有中、高级文化程度的人员来说,不存在任何障碍。因此考生利用计算机进行考试答卷是完全可行的。(3)阅卷评分的准确性保障在在线考试系统中,对于客观题型的阅卷通过将考生答案与试题标准答案进行字符串比较的方式来判别,保证了阅卷的准确性,对于主观题型的阅卷通过教师的人工阅卷评分,评分可通过累计正确答题的试题分值来获得,算法简单、快速、准确,程序编制容易。(4)系统开

16、发及应用模式基于互联网的在线考试,充分利用Internet,采C/S式的数据库体系,仅需下载客户端软件,维护简单。系统开发周期短,应用程序页面简单、轻量,具有很强的伸缩性,对客户端硬件配置要求极低,易于达到要求,可以选择不同厂家的设备和服务。系统资源的冗余度小,部署方便,容易维护且可扩充性良好。(5)选择合适的开发工具开发工具的选择对一个系统来说很重要,既决定了开发人员的开发效率,也对页面的美观和操控性起着重要作用,同时也对系统的易维护性和扩充性有着重要影响。(6)建立多客户环境下数据库应用模式以互联网技术为基础的C/S正日益显现其先进性,当今很多基于大型数据库的应用系统正在采用这种全新的技术

17、模式。C/S式由客户端、服务器组成。在这种模式下,客户端使用一个通用的界面,了形形色色的各种应用软件,用户的所有操作都是通过浏览器进行的。该结构的核心部分是客户端,它负责接受远程(或本地)的请求,然后根据查询的条件到数据库服务器获取相关数据,再将结果和种页面描述语言,传送回提出查询请求的客户端,由后者与数据库联系完成这些工作。1.5 论文框架本文主要分析了现有的在线考试系统的优缺点,并针对这些缺点,我们进行了一些改进。提供了一个人性化,高交互性与高响应性的在线考试系统。本文各章节的主要内容如下:第一章 绪论。主要介绍了本文的研究背景,概述了本文的内容安排和研究目标,并给出了研究意义,研究思路与

18、研究方法。第二章 相关研究及文献分析。本章主要介绍传统考试及在线考试系统概述、国内外研究现状、研究的“发展趋势”及关键技术。第三章 系统设计。介绍了系统的需求分析、总体设计和详细设计。第四章 系统实现。本章介绍了系统的开发环境配置、界面制作、数据表实现、程序编码、系统测试和系统评估。第五章 研究结论与未来研究。介绍了研究内容的总结、主要创新点、存在的不足点及今后的研究方向。第二章 相关研究及文献分析2.1 传统考试的概述现今社会对劳动者和技术人员的知识和能力的要求越来越高。考试作为衡量人们能力的重要手段,并已深入到社会的各个方面9。但是目前学校与社会上的各种考试大都采用传统的考试方式,在此方式

19、下,组织一次完整的考试至少要经历教师出卷、试卷印刷、学生考试、教师改卷、成绩统计等5个步骤。传统纸质考试方法是:任课教师在课程结束前两周,按照考核大纲提交两套试卷(A、B卷)交给系教务员,课程负责人选择印刷的试卷(A卷或B卷)、教务员安排考试时间和地点、学生考试、任课教师领取试卷评分、统分、再将成绩上传到网上的教务系统、学生查询成绩。此种方法存在以下几方面的弊端:(1)试题单一,容易泄题。(2)试卷一样,易作弊。(3)误判、漏判、统错分。(4)成绩上网,不易操作。(5)纸质考试成本高,也不方便管理 10。目前随着考试类型的不断增加和考试要求的不断提高,组织考试的工作量越来越大;管理人员和教师在

20、组织考试的过程中需要花费较多的时间和精力,人为错误率也较高;另外,当考生数量比较大时,对学生成绩统计及分析十分烦琐且容易出错;而且,成绩公布之前学生为查看成绩给教师和教务部门带来的麻烦也不少,考试管理工作效率逐渐降低。可以说,传统的考试方式已经不能适应目前考试的需要。2.2 在线考试系统的概述Internet技术的发展使得考试的手段和媒介发生着变化。从传统的笔试到计算机辅助考试,并发展到基于各种技术的在线考试11。相比传统的考试方式,在线考试系统的好处主要表现在以下几个方面:(1)题库抽题,随机组卷。可以动态地管理各种考试信息,只要准备好足够大的题库,就可以按照要求自动生成各种试卷。从题库中抽

21、题随机组卷,所有人都不知道试卷的内容,只有考试的时候才知道,这样能有效防止教师在复习的时候“勾重点”,真正的实现教考分离,学生必须全面掌握知识,才能通过考试。(2)考试时间和地点灵活,考生可以在规定时间段内的任意时间参加考试;并且基于Web技术的在线考试系统可以借助于遍布全球的Internet进行,因此考试既可以在本地进行,也可以在异地进行,大大拓展了考试的灵活性。(3)在线考试有利于激发考生的学习兴趣,有效地减轻教师和考核部门的工作负担,提高各部门的工作效率。在线考试的最大特点是阅卷快,系统可以在考试结束时当场给出考试结果。计算机判卷,避免人为错误,又节约了成本。考试完成后学生马上可以查看成

22、绩和试卷详细情况,及时知道错在什么地方,了解自己不足之处。这一切都是由电脑完成,减轻了教师的工作量,也有效的避免了人为因素,体现了考试的公平性。(4)提高教学质量。任课教师要查看学生考试情况,学生试题成绩都可直观的反应出来,这样老师就能很好地掌握学生对本门课程的学习情况,以便在以后的教学中注意加强相应部分的辅导。而这一切都是由考试系统完成10,12。(5)能考场监督与容错能力。学生在考试过程中,若考试机出现故障,可以马上启用考场备用机,而前面已做的试题保存在服务器上,在备用机上接着做。和传统的纸质考试相比,利用网络资源开发在线考试系统具有明显的优越性,是对传统的考试方式的重要改革,是值得进一步

23、完善后大力推广。2.3 国内外相关研究介绍 网络化在线考试作为网上远程教育的重要组成部分和发展分支,己经在国内外得到蓬勃发展,人们选学课程和考试都是通过网上进行。特别是Internet业务的普及,构筑高性能、低成本的计算机网络化在线考试,从技术条件和经济条件上己经成熟。虽然目前计算机技术以及网络技术都在高速发展,但在诸多场合现在的Web系统仍不能完全满足用户的需求。比如:WebGIS领域的实时查图功能,这不仅需要足够的带宽支持,而且需要用户有足够的耐心,同时这对服务器也是一个不小的负担。再如:大多数在线考试系统往往由于带宽不足或是服务器配置不够,经常出现种种问题。尤其是各高校在“数字校园”建设

24、中,经常会遇到类似的问题。网络教育是“数字校园”建设中的重要组成部分,由于校园网的用户众多,网络资源也相当有限,这给网络教育系统的建设带来了一定的困难。这种问题在校园网内的在线考试系统突显严重,因为在固定的考试时间内,大批的考生要同时在线答题,考试结束时,所有考生要同时向服务器提交试卷结果,这给服务器带了巨大的负担。因为同时向服务器提交大量的数据,经常致使无法正常提交试卷,造成页面响应超时,甚至造成丢失数据、服务器死机等现象,考生的操作页面此时也是停滞不前,严重影响在线考试的效果13。2.4 研究的“发展趋势”信息技术的发展对教育的影响是巨大的,随着信息技术和网络技术的迅速发展,教育信息化和网

25、络化也将成为必然的趋势。作为教育评价和衡量学生能力的考试也正经历着无纸化和网络化的飞跃。网络的开放性和分布性的特点以及基于互联网的巨大计算能力使得考试突破了时间和空间的限制。基于网络技术的考试系统正成为人们的研究热点之一,其中,基于Web技术的考试系统已成为互联网的重要应用之一14。目前教师采用在线考试系统的还不多见,因为教师个体精力确实有限。但随着教研组制度的完善和教学交流活动的增加。对题库的创建将提上议事的日程,在线考试系统将大有用武之地,且能确保考风考纪的根本好转15。在线考试具有动态出题、自动阅卷、成绩分析等优点,不仅大大减轻了教师人工组卷繁琐的的工作量,提高资源利用率,其运行过程中,

26、组卷速度较快,较少出现重复的现象,而且有利于教考分离的实施,符合目前教学改革的目标。更节省纸张资源,增强环保意识。因此,在线考试系统具有潜在的巨大商机和研究价值,是未来数字化校园系统研究的热点内容16。2.5 关键技术2.5.1 Web的结构和工作原理(1)Web定义Web是WWW(World Wide Web)的简称,又称万维网。简单的说,Web是建立在客户机/服务器(Client/Server)模型之上,以HTML和HTTP协议为基础,能够提供面向各种Internet服务的、一致的用户界面的一种信息服务系统17Web的结构主要分为两部分,一为服务器端(Server),也就是信息的提供者,二

27、为客户端(Client),也就是信息的接受者。在客户机/服务器体系结构中,通常比较容易理解为两端的计算机。但事实上,“客户机”和“服务器”概念更多的是指软件,是指两台机器上相应的应用程序17。对于Web系统,客户机上所运行的浏览器程序基本上是标准化的,所以建立客户机/服务器系统的主要任务就落到了服务器端。Web的体系结构因而可以称作浏览器/服务器结构,如图2-1所示。图2-1 Web的体系结构172.5.2 MVC概述所谓的MVC模式就是模型-视图-控制器(Model-View-Controller)模式,其结构图如下:从严格意义上来说,MVC模式实际上是结构模式,而不是设计模式.一个架构模式

28、描述软件系统里的基本的结构组织或纲要.它提供一些事先定义好的子系统,指定它们的责任,并给出把它们组织在一起的法则和指南.一个架构模式常常被分解成多个设计模式联合来实现,很显然,MVC就是这样一种架构模式.第三章 系统设计3.1 系统需求分析3.1.1 系统可行性分析近几年来,随着我国信息产业的飞速发展,计算机的开发应用已渗透到各个领域,而且日趋普及。在现代的测试与考试中计算机也得到广泛的应用。在线考试系统的开发对考务工作效率有很好的提高。(1)技术可行性基于客户端的在线考试,关键技术在于客户端界面显示和管理,即从数据表中取得相应的试卷数据,并收集用户输入数据,能够对考试过程进行控制。采用MVC

29、模式开发,服务器端和考生界面全部采用C/S模式构建,系统的部署、应用、维护更加方便。(2)经济可行性软件开发周期一般为1个月,开发所需硬件软件设施目前大多数PC机系统能够承担,开发费用不高。目前,大多数单位都拥有高性能微机和局域网,该软件系统的安装、部署、运行和维护,都不会给单位增加太高的费用。所以该系统在经济上是可行的。(3)操作可行性目前,大多数PC机和局域网能够运行该系统,该系统的安装、调试、运行不会改变原计算机系统的设置和网络的布局,并且大多数用户几乎不用做任何培训都能够方便的操作系统。因此从操作可行性的角度来衡量,本系统的开发方案也是可行的。综合以上三个方面的因素,开发在线考试系统是

30、完全可行的。3.1.2 系统功能需求分析在线考试的概念模型如图3-1所示,要满足以下几方面的功能需求: (1) 考试题型的要求:试卷中的题型除包括单项选择题、多项选择题、由计算机完成对试题的评分。(3)满足考试功能的要求:试题库管理功能:通过试题库管理功能建立与维护试题,以便在考试组卷时进行抽题。另为需要具有试题分类查询功能。考生登录功能:在正式考试开考前,考生通过计算机登录考试系统,考生登录时需用准考证号码结合自定义的密码进行身份认证,登录后进行考试。自定义考试功能:在每期考试之前,按照待考科目所依据的考试方案,设定考试日期、考试限时、参加考试的专业等项目,从而形成一个逻辑考场。随机组卷功能

31、:在线考试充分利用计算机强大的运算和数据处理能力,依据试卷生成规则,动态随机组织生成试卷,保证考试的公平竞争原则。考试时间控制功能:每场考试都有时间限制,在考生答卷时需要由计算机自动倒计时,到时间后系统能够自动终止考生答卷,并自动收卷。计算机阅卷评分功能:在考试交卷后,计算机能立即依据试题标准答案对考生试卷客观题进行评阅,并根据其正误情况进行计分。成绩管理功能:通过此功能能够对考生成绩进行查询,对考生各个试题进行分数的整合。3.2 系统总体设计 3.2.1 系统的体系结构系统采用的三层结构模型,是新一代分布式计算方案设计的应用软件体系结构。表示层位于学生工作站上,功能层位于服务器上,数据层位于

32、数据表中。这种结构有利于系统的负载平衡和系统的维护,同时也保证了信息安全。在表示层上,它提供一组标准的界面来发布、编辑和接受数据,并保持用户界面的一致性和完整性。这一层中的客户端代码通过调用功能层所封装的事务处理接口来激活事务。在系统中用户主要通过客户端进行在线考试。它将用户层单独列出来,减少了系统的藕合,每层的开发和维护相对来说都比较独立。功能层集中了系统的事务逻辑处理,它对事务规则和过程进行封装,使得每个单独的对象都有清楚的目的和作用。功能层构造事务对象的工作可以和构造表示层的事务方案同时进行,而且形成了一组固定的事务对象后,可以说是建立了一个特定的计算环境,以后再开发同一领域的新的事务解

33、决方案时也许直接拿来用就可以了,或者只需要做少量的改动。构建事务部件的工作是比较复杂的,需要十分彻底地理解用户的问题域,以及用户事务的各个部件是如何同一个公共的事务对象打交道的。数据层为功能层提供服务,数据层为功能层提供使用数据,使这些数据独立于功能层的决策规则,它可以是一个数据库管理系统,也可以是另外一个子系统。3.2.2 在线考试的模块流程在线考试是系统的核心模块,其中包含选择考试类型、答卷、交卷、自动评卷、保存答案和保存成绩等几个模块,它们之间的关系如图3-5所示。图3-5 在线考试模块流程图进入系统前进行身份验证,通过后学生便可进入在线考试系统。另外,系统还对考试时间进行控制,时间到了

34、会要求考试者交卷。在抽取试卷、进行考试、交卷时都要进行身份验证,考试者选择将答卷提交后,由计算机自动评卷。自动计算考生成绩。3.3 系统详细设计3.3.1 组卷模块系统为在线考试系统,因此在线考试将为本系统的关键。在线考试必须要为考试提供一张题型、题量和分值分布都比较合理的试卷。提供试卷的功能就由组卷模块来完成实现。组卷模块分为两种模式,一种是教师手动组卷,另一种是系统自动从试题库中选择合适的试题,生成一张试卷。3.3.2 数据表设计由于本系统所使用的数据都是通过工具类Config类通过IO流读取文本文档获得,数据表如下:见附录:附件user.txt(用户信息文件);附件corejava.tx

35、t文件(试题信息文件)附件Client.properties(客户端配置文件);附件server.properties(服务器配置文件)第四章 系统实现4.1 开发环境Eclipse4.2 界面制作这里介绍几个主要界面。(1)登录页面的运行结果界面如下:(2)登录账户异常界面(3)登录密码异常界面(4)菜单界面(5)菜单界面成绩查询异常(6)点击考试规则,弹出考试规则对话框(7)在菜单界面点击离开考试,弹出询问对话框(8)在菜单界面点击开始考试按钮进入考试界面(9)考试结束界面,弹出考试结束了对话框。时间字体变为红色(剩余一分钟时)(10)点击考试结束对话框,进入菜单界面,并弹出成绩对话框,显

36、示成绩(11)点击成绩对话框,进入菜单界面,在菜单界面点击查询成绩,弹出考试成绩(11)点击成绩对话框,进入菜单界面,在菜单界面点击查询成绩,弹出考试成绩4.3 程序编码4.3.1 随机选题系统根据用户设置的题型及课程自动为相应题型抽取相应数量的试题。int i = 0;Random random = new Random();for(int level= Question.LEVEL1;level=Question.LEVEL10;level+)List list = context.getQuestions(level);Question q1 = list.remove(random.n

37、extInt(list.size();Question q2 = list.remove(random.nextInt(list.size();paper.add(new QuestionInfo(i+,q1);paper.add(new QuestionInfo(i+,q2);4.3.2 人工评卷private void gameOver(JFrame source) int index = questionInfo.getQuestionIndex();List answers = examFrame.getUserAnswer();service.sendAnswers(index,an

38、swers);int score = mit();JOptionPane.showConfirmDialog(source, 分数是:+score);examFrame.setVisible(false);menuFrame.setVisible(true);timer.cancel();134.3.3 考试计时private void startTimer() int timeLimit = examInfo.getTimeLimit();long startTime = System.currentTimeMillis();final long endTime = startTime+ti

39、meLimit*60*1000;timer.schedule(new TimerTask()public void run()long now = System.currentTimeMillis();long limit = endTime - now;/剩余时间showTime(limit);/显示剩余时间if(limit0)timeout();, 0,1000);/从0秒开始,间隔我1妙94.3.4 获取下一题信息点击下一题按钮时,获取下一题信息public void next(JFrame source) tryint index = questionInfo.getQuestionI

40、ndex();if(index+1=examInfo.getQuestionCount()return ;List answers = examFrame.getUserAnswer();service.sendAnswers(index, answers);questionInfo=service.getQuestion(index+1);catch(ExamOverException e)e.printStackTrace();JOptionPane.showConfirmDialog(source,e.getMessage();4.3.5依据配置文件装载试题private void ad

41、dByLevel(Question q) List list = levels.get(q.getLevel(); if (list = null) list = new ArrayList(); levels.put(q.getLevel(), list); list.add(q); 4.3.6 获取试题信息对试题进行遍历,读取试题题干以及标题,通过读取试题标题获得试题分值,难易程度等信息 private void readOption (Question q, BufferedReader in) throws IOException List options = new ArrayLis

42、t(); for (int i = 0; i 4; i+) options.add(in.readLine(); q.setOptions(options); private void readTitle (Question q, BufferedReader in) throws IOException q.setTitle(in.readLine(); private Question parseField(String line) String data = line.split( ,); Question q = new Question(); q.setOptionNums( Int

43、eger.parseInt(data1.split(=)1); q.setAnswer( parseAnswer(data2.split(=)1); q.setScore( Integer.parseInt(data3.split(=)1); q.setLevel( Integer.parseInt(data4.split(=)1); return q; 4.4 系统测试4.4.1测试环境Eclipse4.4.2测试过程(1)基本测试过程:使用考生帐号登录后进行在线考试,查询成绩,添加试题,添加试卷,查看考试规则等全部功能的测试。并发行测试过程:同时使用多个用户登录,检测系统对并发性事件的处理

44、能力。(2)具体模块测试采用黑盒测试,在根据需求分析中的测试要求,在概要设计中为每个模块指定了详细的测试计划,根据此测试计划,进行测试,并对对照测试结果和预期结果是否一致,测试计划如下:测试程序测试方式操作预期结果界面实现黑盒测试启动服务器客户端,依次进入登录界面,菜单界面,考试界面所有界面全部正常显示用户登录黑盒测试输入账号密码,点击登录进入菜单界面开始考试黑盒测试菜单界面点解“开始考试”进入考试界面查看成绩黑盒测试考试结束后,回到菜单界面,点解查看成绩按钮,弹出对话框,显示考生成绩弹出对话框,显示考生成绩查看考试规则黑盒测试在菜单界面点击考试规则按钮,弹出考试规则对话框弹出考试规则对话框离开考试黑盒测试在菜单界面点击离开考试按钮,弹出询问对话框弹出是否离开对话框上一题,下一题黑盒测试在考试界面点击上一题,下一题按钮,跳转到上一题或下一题跳转到上一题或下一题提交试卷黑盒测试点击交卷按钮提交试题答案,跳转到菜单界面,弹出对话框,显示成绩获取考生信息黑盒测试进入考试界面考生信息及试题信息显示在考试界面头部,使用不同账户时显示不同的信息考试计时功能黑盒测试进入考试界面显示考试剩余时间,当考试结束后,自动提交试题答案4.4.3 测试结果基本测试:

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号