《java考试系统学士学位论文.doc》由会员分享,可在线阅读,更多相关《java考试系统学士学位论文.doc(44页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、学号 毕 业 设 计(论 文) 基于JAVA的考试系统的设计与开发教 学 系: 指导教师: 专业班级: 学生姓名: 二零一二年五月郑 重 声 明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包括任何其他个人或集体已经发表或撰写的成果作品。本人完全意识到本声明的法律后果由本人承担。本人签名: 日期: 毕业设计(论文)任务书学生姓名专业班级指导教师工作单位设计(论文)题目基于JAVA的考试系统的设计与开发设计(论文)主要内容:此毕业设计的内容是设计开发一个基于java技术的在线考试系统,以Windows XP为操作系统平台,以
2、MYSQL作为数据库,实现网上考试系统应有的主要功能模块,包括:1. 启动系统后出现系统登陆窗口界面;2. 管理员的登录,管理和维护;3. 考生注册、登录、注销;4. 考试管理,包括出题组卷,考试时间控制与提示等;5. 成绩管理, 包括判卷,对考试成绩进行查询;6. 提供系统使可靠和安全的措施,包括数据备份和验证操作员密码功能。应让用户操作方便,容易维护。要求完成的主要任务及其时间安排:要求完成的主要任务:1. 查阅资料,写出不低于10篇参考文献(其中至少有2篇外文文献)的参考文献资料;2. 进行方案论证;写出开题报告; 3. 进行总体设计和详细设计;完成软、硬件设计 4. 完成系统的联调;按
3、系统设计要求,能独立运行演示程序5. 撰写论文并准备答辩;要求论文语言通顺,整篇论文不少于10000汉字;时间安排:1、2月22日前(第二周周三)接收指导教师下达的毕业设计任务书 。2、3月10日前(第四周末)完成开题报告并提交开题报告给指导教师审阅、批复。3、3月11日5月11日(第4至13周)为系统设计与撰写论文时间。其间:(1)毕业设计的期中检查定第89周;(2)文献摘要的提交时间在3月30日(第7周)前;(3)5月7日13日(第13周)指导教师初阅论文,学生修改论文;4、5月14日5月20日(第14周)为答辩小组内交换评阅论文,学生制作PPT进行答辩准备。5、5月21日5月25日(第1
4、5周)毕业答辩 。必读参考资料张孝祥.深入Java Web开发内幕核心基础M.北京:电子工业出版社.北京.06年黄杰湘制作,mysql中文参考手册,网络电子书,数据库应用系统开发实例 曹红根 清华大学出版社 09年指导教师签名: 教研室主任签名: 毕业设计(论文)开题报告题 目基于JAVA的考试系统的设计与开发1. 目的及意义(含国内外的研究现状分析):(1). 背景及现状随着社会的进步和商品经济的不断发展,对劳动者和技术人员的知识和能力水平的要求也越来越高。考试系统作为衡量人的能力的重要手段,在现代生活中的地位进一步提高,并深入到社会的各个方面,各种各样的学历考试、资格证书考试层出不穷。同时
5、随着计算机和网络技术的发展,使得考试的技术手段和载体发生了革命性的变化。世界各国对教育的发展给予了前所未有的关注,都试图在未来的信息社会中让教育处于一个优势的位置,从而走在社会发展的前列,为此许多国家都把信息技术应用于教育,作为民族发展的重要推动力。在国外,美国政府提出了“教育技术规划(Educational Technology Initiative)”,指出到21世纪初让全美国的每间教室和每个图书馆都将联上信息高速公路,让每个孩子都能在“21世纪教师”网络服务。澳大利亚国家公共资源管理局已于1995年4月建立“澳大利亚教育网”,并联通Internet,该网络不仅包括全部高等院校,而且还覆盖
6、全澳大利亚所有的中小学。在1995年底,国外开始出现支持网上教学的系统和平台。美国的NTU、英国的OPEN COLLEGE都是十分典型的网络教育范例。网络化在线考试作为网上远程教育的重要组成部分和发展分支,己经在国外一些发达国家得到蓬勃发展,人们选学课程和考试都是通过网上进行。特别是Internet业务的普及,构筑高性能、低成本的计算机网络化在线考试,从技术条件和经济条件上己经成熟。在国内,普遍地看,绝大多数远程教育的考试还停留在传统考试方式。在此方式下,组织一次考试至少要经过5个步骤,即人工出卷、考生考试、人工阅卷、试卷分析和成绩评估。显然,随着考试类型的不断增加及考试要求的不断提高,教师的
7、工作量将会越来越大,并且这样工作将是一件十分烦琐和非常容易出错的事情。但是对互联网的真正应用仅限于网上报名工作和网上成绩查询,还没有真正形成上网考试的规模。而在国外一些国家,网上提交作业和网上考试已经相当普及了。所以说传统的考试方式已经不能适应现代考试的需要。(2). 意义和价值目前许多的专业考试已逐步出现从笔试转为计算机网络考试的发展趋势。与传统的笔试相比,计算机在线考试系统有多方面的优势。首先,可以省去试卷印刷的费用,减轻教师阅卷的负担,节省了人力、物力、财力,加快考试进程。其次,可以充分发挥计算机在信息处理方面的优势,如建立海量的题库供将来使用、对试卷结果进行自动化统计分析从而提供有价值
8、的信息等等。在我国,虽然远程教育已经蓬勃发展起来,但是目前学校与社会上的各种考试大都仍采用传统的考试方式。在此方式下,组织一次考试一般需要经过人工出题、考生考试、人工阅卷、成绩评估、试卷分析等五个步骤。随着考试题型的不断变化及要求的不断提高,教师的工作量将会越来越大,其工作方式十分繁琐,且容易出错。从这个角度出发,可以说传统的考试方式已经不再适应现代考试的需要,考试方式的变革势在必行。针对上面的问题,开发设计与实现一个完备的在线考试系统可以完全实现无纸化、网络化、自动化的计算机在线学习考试,对单位的信息化建设具有深远的现实意义和实用价值。还可以使用户在网上学习过后及时检验自己的学习效果,已发现
9、自己的不足,使得学习效率得到很大提高。在线考试系统中题目的生成、试卷的提交、成绩的批阅等都可以在网络上自动完成。只要形成一套成熟的题库就可以实现考试的自动化。这样一来,教师所要做的只是精心设计题目、维护题库,而不是组织考试,从而大大减轻了教师的负担,这表明其经济性是相当可观的。为了适应新形势的发展,我进行了这一系统的初步设计工作,也可以说是做一个初步的探索,希望它能够在各类考试中发挥高效、便捷的作用,把老师从繁重的工作中解脱出来。2. 基本内容和技术方案(3). 考试系统基本内容设计开发语言本系统基于程序设计语言开发。设计模式开发环境和数据库。(4). 考试系统技术方案考试系统结构(1) 表现
10、层(数据呈现/用户交互)的 用户界面和控制器(ClientContext)。表现层是用户与软件交互的纽带,它的设计要简明且全面。(2) 业务层(业务模型), 是软件的核心功能,在service包中, 核心接口ExamService。业务层功能包括登录验证生成考卷为学生自动打分考试事件限制等等。(3) 数据管理层(数据持久化层), 是提供数据的CRUD管理,增删改查,: 只关心数据操作, 不涉及业务功能。考试系统主要功能模块(1)用户登录模块用户在登录界面输入用户名和密码,点击确定,数据提交给控制器,控制器调用用户登录业务模型进行处理,如果密码与数据库中相应的用户名密码匹配,则进入菜单界面,否则
11、弹出提示框,提示用户名或密码错误。(2)考试系统试卷生成模块该系统题目由选择题组成,用户点击菜单栏的“开始考试”按钮,则请求提交给控制器,控制器调用考试业务模块,随即从数据库中抽取指定数量的题目,组成该用户的试卷,显示在界面上,每次显示一题。(3)自动打分模块当用户回答完所有的题目,或者点击菜单栏“查看分数”按钮,请求提交给控制器,控制器调用打分业务模型,将每一道题的答案与用户的答案进行匹配,如果正确则得分,错误则不得分,进行累加,返回界面显示。(4)时间控制模块当用户开始考试,考试界面上开始显示剩余时间,如果用户在剩余时间内没有完成该考试的所有题目,并且没有主动提交,则系统自动将其试卷进行提
12、交。(5)用户数据备份模块用户点击菜单界面上“备份数据”按钮,则控制器调用用户数据备份业务模型,将用户的考试信息,包括考试题目,用户答案,标准答案及分数存入相应的数据库,或者以文件的形式导出。考试系统基本实现过程(1)设计相应的实体类,如:用户,考试题。设计相应的表,建立数据库。(2)绘制出考试系统的图形界面,其中包括欢迎界面登录界面菜单界面和考试界面。用到窗口表格输入框按钮等组件。(3)为界面组件添加相应的时间处理,例如按钮的单击事件。点击登录按钮在控制台打印“Login Click:login.addActionListener(new ActionListener()public voi
13、d actionPerformed(ActionEvent e) System.out.println(Login Click););(4)编写后台代码,实现相应的业务逻辑。定义一个业务模型的借口,把需要实现的业务功能定义在借口里。将来业务模型的实 现类实现这个接口即可:public interface ExamService User login(int id, String pwd)throws IdOrPwdException;ExamInfo start();/考试开始,初始化各个组件。QuestionInfo getQuestion(int index);/从题库获取一道题目。voi
14、d saveUserAnswers(int index, List userAnswers);/将用户的考试答案保存起来,便于打分int send();/打分。int getScore(); /获取分数,如果是还没开始,则返回异常信息。(5). 条件和可行性(1)随着信息技术的发展与普及和当前计算机软硬件发展水平,信息化的快速发展给人们的日常工作带来了很大的方便,其必然导致教学与考试领域的发展与变革推进无纸化考试改革。目前在国外一些国家,网上提交作业和网上考试已经相当普及了,随着国内网络教育的兴起,各高校纷纷开发了自己的网络教学平台,作为网络课程重要组成部分的网络考试系统也相继问世。(2)在网
15、上关于在线考试系统的研究很多,网上也有大量这方面的文献可以参考,设计开发这个系统的技术和一些常见问题的解决方案也有大量的参考。(3)在大学的四年里我已经学习了java、Jsp、MySQL、SQL Server等课程。通过平时的学习和做过的一些项目,已了解掌握了编程语言的一些技术和对数据库的连接和基本操作,也对工程开发流程有了一些经验。3. 基本内容和技术方案:(6). 研究方法采用软件工程的方法,通过认真的研究和分析,开展项目计划、环境评估、需求定义,根据系统需求选择建模工具对整个系统进行建模,然后在理论和建模基础上对模型系统进行应用实现。对优化后的系统模型进行实现,后期对实现好的系统进行测试
16、分析,就系统安装、系统运行界面、系统集成环境、系统各种功能、系统性能、系统安全性进行了一个很全面很详细的测试。(7). 策略和步骤(1)确定项目的范围、目标、目的和期望,建立实施策略,项目软、硬件资源的初步鉴定。(2)通过前期详细的调研完成需求分析问题,按需求分析的结果确定所需的实体与属性,建立完善的实体间的联系,然后创建数据库。(3)参考同类在线考试系统相关内容确定要实现的主要功能及流程,并明确各子模块的功能。(4)编写JavaBeans以及使用JDBC技术实现对数据库的各项操作,可简化程序复杂度,并降低程序出错率。(5)采用结构化开发方法的设计思想,划分子模块以分别实现各项功能,最后将各模
17、块整合成完整的系统。(6)对系统进行测试,就系统安装、系统运行界面、系统集成环境、系统各种功能、系统性能、系统安全性进行了一个很全面很详细的测试。4. 进度安排:1、2月22日前(第二周周三)接收指导教师下达的毕业设计任务书。2、3月10日前(第四周末)完成开题报告并提交开题报告给指导教师审阅、批复。3、3月11日5月11日(第4至13周)为系统设计与撰写论文时间。其间:(1)毕业设计的期中检查定第89周;(2)文献摘要的提交时间在3月30日(第7周)前;(3)5月7日13日(第13周)指导教师初阅论文,学生修改论文;4、5月14日5月20日(第14周)为答辩小组内交换评阅论文,学生制作PPT
18、进行答辩准备。5、5月21日5月25日(第15周)毕业答辩5. 参考文献:1 张孝祥.深入Java Web开发内幕核心基础M. 北京:电子工业出版社,2006年.2 黄杰湘.mysql中文参考手册M/OL. 黄杰湘.北京:北京万里开源软件有限公司,20102012-3-10.3 曹红根.数据库应用系统开发实例M. 北京:清华大学出版社,2009.教师指导意见: 指导教师签名: 日期: 年 月 日目录摘 要1ABSTRACT2第1章绪论31.1 课题背景31.2 国内外发展现状31.3 课题意义41.4 课题内容及成果51.5 本章小结6第2章 系统需求分析72.1 系统总体需求分析72.1.1
19、 功能需求72.1.2性能需求82.2 系统用例图92.3 本章小结9第3章 概要设计103.1 系统结构设计103.2 数据库结构设计113.2.1 数据库的需求分析113.2.2 数据库的逻辑设计123.2.3 数据库的物理设计133.3本章小结15第4章 详细设计164.1 试卷管理模块设计164.1.1题库管理模块设计164.1.2试卷管理模块设计174.1.3启动试卷模块设计184.2学生维护管理模块设计194.3考试管理模块设计204.3.1登录模块设计204.3.2考试项目模块设计214.3.3参加考试模块设计214.3.4考卷成绩查询模块设计224.3.5考务管理模块设计234
20、.3.6考卷评分模块设计234.4组卷算法分析254.4.1常见的组卷方法254.4.2本系统自动组卷所用的方法254.4.3算法实现254.5本章小结26第5章系统测试275.1 登陆模块测试275.2 学生管理模块测试275.3 题库管理模块测试295.4试卷管理模块测试305.5本章小结31总 结32参考文献33致 谢34摘 要近年来,随着互联网技术的迅速发展,基于互联网技术的各种应用也日益受到人们的重视,基于 WEB 的在线考试系统正是在这种形势下产生的。为了更好的实现考试的高效性,客观性与公正性,基于 WEB 的在线考试系统得到了越来越广泛的关注与研究。本文分析了基于 WEB 在线考
21、试系统的设计与实现技术,结合实际提出了本系统的总体结构设计和主要模块的功能实现。本系统分为两个子系统:教师子系统,学生子系统。教师子系统包括学生信息管理、题库管理、试卷管理和考务管理四个功能模块,其中生成试卷时可以手工组卷也可以自动组卷。学生子系统主要包括参加考试和考试查询两个功能模块。系统实现时采用的工具主要是servlet和jsp,利用了B/S 三层架构,使用的数据库是 mysql ,以Windows XP 作为操作系统,以 tomcat 作为 web 服务器。关键词:在线考试,B/S模式,自动组卷,手工组卷ABSTRACTWith the rapid development of Int
22、ernet, People seem to attach more importance to web-based applications in recent years. The web-based online test system came into being just in such an environment. And people are paying more and more attention on web-based online test system in order to improve efficiency, objectivity and impartia
23、lity.This paper did some research of the web-based online test system and analyzed technology of its realization, combined with the actual project, proposed the design of the overall structure and realization of the main module eventually. The system was divided into two subsystems: teacher subsyste
24、m, student subsystem. The teacher subsystem includes student information management module, test bank management module, test paper management module and examination management module. And it can generate test paper automatically or manually. The student subsystem includes exam module and results qu
25、ery module. This system is based on servlet, jsp and B/S(Browser/Server) structure, using mysql as database development tools, Windows XP as the operating system, tomcat as the web server.Keywords: online test, B/S mode, generate test paper automatically, generate test paper manually1绪论1.1 课题背景在科学技术
26、飞速发展的21 世纪随着网络技术的发展,现在很多大学院校及科研机构以及企事业单位都已经开设了远程教育,通过计算机网络来实现异地教学和培训。目前,计算机硬件技术的发展己经达到了相当高的水平。但是远程教育软件的研发还处于起步阶段,随着这项技术的不断深入发展,标准化考试的日益普及,各级各类考试中,就要求有更好、更完善的软件系统应用到远程教育中去,这就给软件设计人员提出了更高的设计要求。在线考试系统的软件开发是现阶段研究开发的一个热点。许多国际著名的IT公司所举办的各种认证考试绝大部分采用这种方式。它是建立在国际互联网上的应用系统,客户端的配置可以极为简单,使考试不受地理位置的局限。一个完备的在线考试
27、系统可以使用户在网上学习过后及时检验自己的学习效果,并发现自己的不足,使得学习效率得到很大提高。在线考试系统中题目的生成、试卷的提交、成绩的批阅等都可以在网络上自动完成。只要形成一套成熟的题库就可以实现考试的自动化。这样一来,教师所要做的只是精心设计题目、维护题库,而不是组织考试,从而大大减轻了教师的负担,这表明其经济性是相当可观的。为适应新形势的发展,我进行了这一系统的初步设计工作,也可以说是做一个初步的探索,希望它能够在各类考试中发挥高效、便捷的作用,把老师从繁重的工作中解脱出来。1.2 国内外发展现状在线考试系统的软件开发是现阶段研究开发的一个热点。目前国内外有许多的网络考试,例如,美国
28、ETS组织的计算机文化考试、高级就业计算机科学考试、专业领域考试、托福、 GRE 等都分别组织了计算机考试,并普及到英联邦国家;日本于1969年开始设立信息技术人员考试飞国内的网络考试有人事部和电子工业部组织的中国计算机软件专业技术资格和水平考试教育部组织的全国计算机等级考试全国电大网络考试,教育部从剑桥引进的剑桥信息技术(CTI)证书考试以及CISCO认证考试、微软认证考试等等。根据应用的技术和系统架构方式,网络考试系统主要可以分为如下几类:单机版的考试系统, CS/架构的考试系统, BS/架构的考试系统。这三类系统各有其优缺点。(1)单机环境考试系统单机环境考试系统必须在每台计算机上安装计
29、算机考试系统。考试题库和考试的答卷也必须在该计算机上。考生考试时就调用该计算机上的数据库,考试完毕后又将答卷存储在该计算机上的数据库中。所有应用不管是DBMS本身,还是用户的应用系统都是在某个固定的计算机系统上集中运行的。这种系统对资源消耗极大,对硬件系统依赖性强,从而导致大型数据库应用系统只能在大型机上运行,使数据库的应用发展受到很大限制。(2)基于C/S架构的网络考试系统基于ClienUServer(客户端/服务器)架构的考试系统,利用计算机局域网络,每台计算机(客户端)通过安装必要的软件才能与服务器端进行通信。由于利用了计算机网络,不再需要人力以实现考题的一致性和考试信息的收集,自动化程
30、度和效率较高。但由于其结构特点,只适用于一定范围的网络内部(局域网),范围难以扩展,当然也可以通过改进通信协议,对该结构进行改造,使其适用于更广的网络范围(广域网),但是由于需要安装客户端程序,维护和升级同样存在困难。(3)基于B/S架构的网络考试系统基于B/S架构的网络考试系统采用Web技术实现。 Web技术超越了传统的客户机/服务器两层结构,采用了三层体系结构:用户界面层/事务层/数据库层。因此Web结构有着更好的安全性。在用户机上不需要安装任何应用程序,应用程可以安装在事务层所在的计算机上,试题存放在数据库服务器上(事务层和数据库可以是同一台机器)。这种B/S模式客户端只要安装一个标准的
31、Web浏览器,其他应用程序都存储在Web服务器上,建立在B/S模式上的网络考试系统,可建立大型、高效、共享的题库,在服务器端对数据库进行管理,客户端通过浏览器登录考试系统,打破了时间地域界限,可以实现自动出卷、阅卷、评卷、简化了试程序,且考试结果更加公正、客观。与C/S模式相比, B/S模式对系统的软硬要求比较低。由于采用了互联网的相关技术, B/S模式具有系统维护升级方便、平台操作、良好的开放性、可扩充性和安全性等优点。采用这种B/S模式的计机网络考试和管理系统适用于多个考场、几千人或几万人同时进行网络化考,解决了考试系统对客户机软件过分依赖的问题,减轻了客户机软件的维护工量,比以往的考试系
32、统更具有实用性。1.3 课题意义传统考试模式历史悠久,这种传统考试模式在相当长的时间里,一直被人们理所当然的认为是最有效的考试方式之一,并被广泛的应用于各类考试。组织一次传统考试一般要经过五个步骤,即人工出卷、考生考试、人工阅卷、成绩统计和试卷分析。这一过程烦琐而低效,在计算机信息处理技术飞速发展的今天,这种传统的考试方式在安全、效率、成本等诸多方面所表现出来的弊端越来越不能为人们所接受。可以说传统的考试方式已经不能适应现代考试的需要。网络化考试是对传统考试的一种延伸与变革,它可以充分利用网络无限广阔的空间,随时随地的对学生进行考试,不受时间与空间的限制,大大地简化了考试的过程,减轻了繁重的考
33、试管理工作,避免了考试过程中的人为因素,提高了考试考核水平和管理水平。与传统的考试相比,网络化考试系统的优势主要体现在如下几个方面:(l)保密性强在传统考试中,通常下发试卷等环节需要较长的时间,接触的人员相对较多,给保密带来一定的困难而在线网络考试系统则采用试题库方式来提供试题来源,考前无任何成套试卷:考试时考卷由计算机现场随机生成,各考生的试卷不完全相同,避免互相参看导致作弊现象或成绩不公平等;试题库可指定专人负责管理,从而增强保密性。(2)客观性强采用传统考试时,由于出卷、印刷等问题, 一般一次考试所印试卷套数较少,试卷整体覆盖面有限,容易形成小范围复习或猜题等倾向,影响了测试的客观性;另
34、一方面也容易形成作弊现象;而在线网上考试系统采用随机抽题组卷的方式,试题抽取面相对较大,并且同时生成多套试卷,试卷整体覆盖面大,可基本反映考生的实际水平,防止突击复习或猜题、作弊得高分等现象,从而保证考试的客观准确性。(3)迅速准确,公平公正对于标准化试题而言,在线网上考试系统可自动评分,迅速准确,无任何人为因素,从而避免人为误差及人情分等问题,保证考试的公平公正。(4)便于组织以网络技术为支撑的现代计算机应用已经具备较大的规模并相当普及,利用计算机网络组织实施大规模的异地实时考试已成为现代考试中的一种重要的方式,在线网上考试系统是其中最关键的一环。(5)考试成本降低,考务管理效率提高采用网络
35、考试方式可以把教育者从繁重的考务管理工作中解放出来,而把精力重点放在试题库的精心组织和维护上,这一方面可以有效的提高测试水平,另一方面也可以节约人力、物力、财力从而降低考试成本。基于上述分析,采用在线考试系统实现无纸化考试将成为未来的主流考试方式。1.4 课题内容及成果本系统要求实现在线考试系统的基本功能,从试题管理,到教师出卷、评卷、成绩分析,到学生查询考试成绩,均可由系统自动完成。从系统的安全性和易维护性考虑,本系统选择Web实现技术,即将系统做成一种B/S模式,可以让用户通过浏览器直接访问位于服务器上的试题以及对系统进行远程维护。服务器程序的实现技术有多种,本系统选用当前比较流行的网络编
36、程技术JSP作为主要实现手段,配合Servlet ,JavaBean等技术,JSP作为一种Web实现技术,它的效率是很高的,这一点正符合了考试系统所要求的实时性,JSP 自身的安全性,再加上实现模式的特点,完全能够达到考试系统的保密性,保证了考试的公平性。另外,JSP拥有Java语言的一次写成,处处可用的特点,可以将系统轻松地移植到其它平台运行,所以将JSP作为本系统的实现技术是完全可行的。在本论文中,介绍在线考试系统的主要功能及实现方法,研究了在线考试系统中题库管理及组卷方式等。主要功能包括:试题管理、试卷管理、考试管理、学生考试,试卷评阅、成绩管理、用户管理等模块。1.5 本章小结本章主要
37、介绍了基于WEB的在线考试系统的研究背景、介绍了国内外研究的现状,阐述了设计在线考试系统的意义以及该课题的内容和成果。2 系统需求分析2.1 系统总体需求分析随着网络技术的快速发展,传统的人工出卷进行考试的方式显得越来越不合理,并且传统考试方式下的科学性、合理性.公平性和保密性都不能达到需求,而且造成经费的重复投入。人工出卷己不适应当前社会快速发展的需要,在这种情况下,如何利用计算机管理试题的数据信息去自动替代教师传统的手工出卷,从而减少人力,物力和财力上的消耗己成为急需解决的问题。网络考试系统具有降低考试成本,解决繁重的考务工作的优点。它可以免去教师大量的临考工作,试卷可以根据题库中的内容即
38、时生成,教师也无须去做考后的阅卷、统计、分析工作,计算机可自动判卷,直接把成绩送到数据库中进行统计、排序、汇总。实现无纸化考试,大大提高了工作效率,同时,试卷是随机组成的,不存在试卷的泄密和考试作弊问题,使考试的公平性、答案的安全性得到了有效的保证。2.1.1 功能需求首先,因为考试是面向特定的某些对象的,所以考试者进入系统应该进行身份验证。考试者进入考试系统后,可以查询到需要参加的考试项目。在线考试于一般的单机考试是不同的。鉴于考试环境一般为机房,考试者之间的距离很近,为了在线考试做到规范,对于每个应试者来说,试卷的题型和题量都应是相同的,但试题并不相同。在线考试基于网络环境,试卷应该从服务
39、器的数据库随机抽取试题后动态生成的,不过也能手工生成试卷。另外,系统还应该对考试时间进行控制,时间到了会要求考试者交卷。考试者选择答案提交后,客观题由计算机自动判分,主观题由老师手工评分,得到成绩后显示出来。考试完毕后,可以返回登录界面或继续考试。此外,应该能够方便、快捷的对在线考试系统进行管理,用户只有在试卷结束后才能查询到自己的成绩。综上所述。在线考试系统需要有如下的综合需求:1.适合的用户权限综合考虑各种因素后,我只设了两种合法用户:学生和教师,合法用户要经过有效的身份验证方可登录。这两种用户必须在被授权以后才能使用本系统的资源。合法用户可以使用的系统资源根据用户身份的不同而定,教师主要
40、负责系统后台的管理,包括题库管理、试卷管理、考务管理、学生信息管理等。学生可以进行登录、参加考试、查询成绩等操作。2. 适合的网络环境在线考试系统能够方便地运行在网络环境下,用户使用客户机可以方便简捷地访问考试系统。教师用户可以通过网络来管理题库、管理学生用户、安排考试、查询考试成绩和查看试卷分析结果等,学生用户可以通过网络来参加网上考试和查询考试成绩等。3. 完备的考试功能在线考试系统应该具有和在线考试密切相关的基本功能用户可以方便的完成在线考试的常规基本操作。参加考试:在学生登录系统以后,可以查询到需要参加的考试项目,选择参加考试后即进入考试中。考试的题目按格式列出,并且提示考试的时间。完
41、成答卷后,学生可以提交答卷,如果考试时间到,试卷会自动提交。考生成绩查询:考生登录后,可以查询以往考试的信息。通过这个功能,考生可以查询考试的成绩及考试试题的标准答案。学生信息管理:教师登录后,可以对学生的信息进行维护。题库管理:教师登录后对题库进行维护,可以进行题目的添加,修改和删除操作。试卷管理:从题库中抽取题目,形成试卷,可以自动和手工生成。考卷的分发:对已生成的试卷进行人员的分配,确定哪些人进行考试。确定人员之后执行开考操作,此时相关的学生就 进行登录参加考试了。考务管理:对在线考试的学生的考试进行监控,从监控台上可以看到当前考生的状态,以达到监考的目的。考卷评分:对考试完毕的考生的考
42、卷进行评分操作。客观题在考卷提交时,已经由系统给出分数,这里主要是进行主观题目的评分。2.1.2性能需求对于一个系统来说,要注意以下几个很关键的因素:实用性:对于在线考试系统的开发,实用性应该放在首位。能够满足一般客观题型的要求,比如:单项选择题,多项选择题,填空题,问答题等题型。在详细了解一组基本的需求定义后,我们可以快速地建立起一个目标系统的初级版本,再根据各种用户使用和评价的结果,经过修改补充后,形成改进的版本,反复以上的过程,直至达到用户满意为止,最终得到的完善的版本。可靠性:服务质量的一个重要方面就是能够在期望的响应时间内访问信息。对需要通过Internet的应用程序或信息的单位用户
43、来说,还意味着必须在用户期望的时间内为用户提供其需要的信息。试想一个同时有几百甚至几千人访问的考试系统,一旦服务器发生阻塞或者崩溃,会带来怎样的不可想象的麻烦。另外太长的延迟时间也会给考生带来不便。可扩展性:可扩展性是指系统能保证可持续增长以满足用户需求和业务复杂性要求, Web系统为动态变化的模型,它们通常一开始很小,但随着需求的增长而呈指数级增长。这种增长非常迅速,不仅表现在支持的用户的数量上,而且表现在提供的用户服务的复杂性和集成性方面。对于考试系统而言,这种扩展性就显得尤为重要,因为考试系统的功能完善是一个渐进的过程,我们目前开发的这个系统需要随着考生的要求和技术的发展而需要不断改进。
44、所以可扩展性是非常必要的。安全性:安全性是指系统能够保护数据或基础结构避免受恶意攻击或者盗用。安全性是通过为信息的机密性,完整性和可靠性提供充分的保护来预防风险,保障系统安全,是任何系统成功的基本要素。可管理性:可管理性是指可以很方便地对系统进行管理,确保系统的正常运行管理和运作涉及以下几个因素:维护系统服务及其服务正常工作所需的基础结构,工具以及管理员和技术人员。考试系统的主机是放在学校的远程教育学院机房中,但是对考试教务的管理员也许并不在远程教育学院中,因此,系统的管理和监控必须能够远程完成。2.2 系统用例图根据以上的需求分析,系统的用例图如下:图2.1 系统的用例图2.3 本章小结本章
45、在上-章介绍的课题背景基础上,按照软件工程的理论给出了在线考试系统开发的基本思想和方法。在对系统的需求进行详细分析后,给出了系统所需满足的功能需求和性能需求,并且画出了系统的用例图。3概要设计在需求分析阶段,搞清楚了系统“做什么”的问题,形成了目标系统的逻辑模型。现在所要做的就是要把系统“做什么”的逻辑模型变换为“怎么做”的物理模型,即着手实现系统功能的需求。3.1 系统结构设计系统的概要设计中最重要的就是系统的模块化。模块化是解决一个复杂问题时自项向下逐层把软件系统划分成若干个模块的过程。每个模块完成一个特定的功能,所有的模块按某种方法组织起来,成为一个整体,完成整个系统所要求的功能。将系统划分为多个模块是为了降低软件系统的复杂性,提高可读性、可维护性,但模块 的划分不能是任意的,应尽保持其独立性。也就是说,每个模块只完成系统要求的独立的子功能,并且与其它模块的联系最少而且接口简单,即尽量做到高内聚低耦合,提高模块的独立性,为设计高质量的软件结构奠定基础。由上章得需求分析,可以设计出本系统的总体结构包括两个子系统:在线考试系统前
限制150内