




已阅读5页,还剩47页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
武汉纺织大学本科生毕业论文基于MVC的在线考试系统 指 导 老 师:陈 佳 院 系:数学与计算机学院 专 业:软 件 工 程 班 级:软件10902班 学 号:0904681255 学 生 姓 名:田 婷 婷 2013年5月武汉纺织大学毕业设计(论文)任务书课题名称: 基于MVC的在线考试系统 完成期限: 2012年12月10日至2013年5月25日 学院名称 数学与计算机学院 专业班级 软件10902班 学生姓名 田 婷 婷 学 号 0904681255 指导教师 陈 佳 指导教师职称 讲 师 学院领导小组组长签字 一、课题训练内容本课题主要在以下几个方面对学生进行训练:1、明确软件项目开发的目的,熟悉软件项目开发的过程,培养学生软件项目的需求分析能力和软件文档规范化写作能力;2、培养学生资料收集、文献查阅和文件资料总结能力;通过外文资料的阅读和翻译,培养学生外文阅读与写作能力;3、熟练掌握软件系统开发工具和数据库设计能力,培养学生自主学习新知识的能力以及运用最新的知识解决实际应用问题的能力;4、培养团队合作精神;锻炼学生综合运用所学知识的能力以及;通过项目完成过程培养学生工作责任心、事业心和创新意识。二、设计(论文)任务和要求1、设计任务在基于MVC的在线考试系统中应至少包括:(1)考生登录模块:新考生注册,检查考生是否存在,储存考生信息,实现考生信息的增加、删除、修改、查询,考生登录主页面。(2)管理员登录模块:检查管理员是否存在,储存管理员信息,实现管理员信息的增加、删除、修改、查询,管理员登录主页面。(3)在线考试模块:成功登陆的考生能够进行在线考试,并且在考试结束时系统自动进行阅卷;在考试进行的过程中有剩余时间和已用时间的显示。(4)数据库文件.2、论文要求(1)语言简洁,论述清楚。(2)论文格式符合武汉纺织大学毕业论文要求。本课题论文部分,要求承担者完成开题报告、论文、译文等。开题报告、论文、译文严格按武汉纺织大学毕业设计工作条例及相关附件要求书写。论文结构要求:毕业设计(论文)应采用汉语撰写(科技英语除外),一般由11部分组成,依次为:(1)封面,(2)任务书,(3)开题报告,(4)中英文摘要及关键词,(5)目录,(6)正文,(7)参考文献,(8)附录,(9)外文资料,(10)中文译文,(11)致谢。其中正文部分一般不少于15000字。其他格式要求严格按武汉纺织大学毕业设计工作条例及相关附件要求书写。三、毕业设计(论文)主要参数及主要参考资料1 王晓军,田中雨,刘跃军.JSP动态网站开发基础教程与实验指导M.北京:清华大学出版社,2008年11月.2 王珊,萨师煊.数据库系统概论M.北京:高等教育出版社,2006年5月.3 白广元.Java Web整合开发完全自学手册M.北京:机械工业出版社,2009年1月.4 孙卫琴,李洪成.Tomcat与Java Web开发技术详解M.北京:电子工业出版社,2003年6月.5 武延军,黄飞跃.精通JSP编程技术M.北京:人民邮电出版社,2001年8月.6 计磊,李里,周伟.精通J2EE-Eclipse.Struts.Hibernate.Spring整合应用案例M.北京:人民邮电出版社,2006年8月.7 刘斌.Java Web整合开发M.北京:电子工业出版社,2008年5月.8 孙卫琴.精通Struts,基于MVC的Java Web设计与开发M,北京:电子工业出版社,2004年8月.9 王克宏.Java技术教程(基础篇)M,北京:清华大学出版社,2006年2月.10(美)Marco Pistoia,Nataraj Nagaratnam等著.企业级Java安全性:构建安全的J2EE应用M,北京:清华大学出版社,2007年3月.11 殷兆麟,张永平,姜淑娟.Java网络高级编程M,北京:清华大学出版社,北京交通大学出版社,2008年5月.12 菜剑,景楠.Java Web应用开发,J2EE和TomcatM(第2版),北京:清华大学出版社,2005年1月.13 美Xin Chen 著.应用框架的设计与实现M,北京:电子工业出版社,2006年5月.14 老虎工作室.JSP动态网页制作基础培训教程M,北京:人民邮电出版社,2005年5月.15 崔红娟.网络书城建设分析J,农业图书情报学刊,第17卷.第11期,2005年11期.16 刘洁.基于JSP和JavaBean技术的网络书城设计与实现J,现代情报.2005第11期.17 Micheal Koflen,杨晓芸 王建桥 杨涛.MySQL权威指南M.北京:人民邮电出版社.18 James Holmes,孙燕. Struts程序员查询辞典M. 北京:中国铁道出版社. 19 Ruessell J.T.Dyer.李红军.李冬梅.MySQL核心技术手册M.北京:机械工业出版社.20 张秋余,杨玥. 基于用例的需求建模方法J. 计算机工程与设计,2006,19:3539-3541.21 MattheMacDonal.管理信息系统J.电子工业出版社.2003.Vol.3(8):102-10822 美Bruce Eckel. Thinking In Java.英文(第4版)M.北京:机械工业出版社.2007.23 向传杰. Java 编程案例教程M.北京:电子工业出版社.2005,5.24 黄明,梁旭,曹利超.Java信息系统设计与开发实例M .北京:机械工业出版社.2005.3.25 孙更新,宾晟,吕婕.毕业设计指南与项目实践M.北京:科学出版社,2007,3.26 张孝祥.JAVA就业培训教程M.北京:清华大学出版社,2003.2.27 蔡翠平. JAVA程序设计M.北京:清华大学出版社.2003.1.28(美)戴特尔(Deitel.H.M). Java 大学简明教程:实例程序设计国外计算机科学教材系列J.北京:电子工业出版社.2005.2. 四、毕业设计(论文)进度表武汉纺织大学毕业设计(论文)进度表序号起止日期计划完成内容实际完成情况检查人签名检查日期12012/12/132012/12/13下达毕业设计任务书22012/12/142013/03/04撰写开题报告32013/03/052013/03/07收集相关资料42013/03/082013/03/15用户需求分析52013/03/162013/03/30建立基本系统模型62013/03/302013/04/05系统模块功能模块设计72013/04/052013/04/10数据库设计82013/04/102013/04/15系统的详细设计92013/04/162013/04/19系统测试102013/04/202013/05/20撰写论文112013/05/25毕业答辩武汉纺织大学毕业设计(论文)开题报告课题名称基于MVC的在线考试系统院系名称数学与计算机学院专 业软件工程班 级软件10902班学生姓名田婷婷一、课题意义: 在网络技术逐渐渗入社会生活各个层面的今天,传统的考试方式也面临着变革,而网络考试则是一个很重要的方向。基于Web技术的网络考试系统可以借助于遍布全球的因特网进行,因此考试既可以在本地进行,也可以在异地进行,大大扩展了考试的灵活性。试卷可以采用大量标准化试题,从而使用计算机判卷,大大提高阅卷效率;还可以直接把成绩送到数据库中,进行统计、排序等操作。所以现在较好的考试方法为网络考试,试题内容放在服务器上,考生通过准考证号码和密码进行登录,考试答案也存放在服务器中,这样考试的公平性、答案的安全性可以得到有效的保证。网络考试系统的实现技术有多种,可以采用传统的C/S型架构。它采用两层体系结构,将一个数据库应用分为客户端和服务器两部分,客户端在作为终端访问数据库服务器的同时,本身也具有处理数据的能力,能够分担一些任务。大量的数据管理存取工作由服务器承担以充分利用服务器的速度快、存储量大的特点,而其它性能低的计算机仅用作用户端进行数据处理和访问。但是基于CS的MIS存在开放性差,软件的开发周期长,开发费用高,软件的维护量大等缺点。于是以满足复杂的、不断发展变化的业务需求,同时又能确保企业在系统、应用、信息及人员上的投资长期有效的B/S结构模型随之兴起。Web技术超越了传统的C/S两层结构,采用三层结构:表示层/应用层/数据层,将Web浏览器作为表示层,将大量的业务处理程序放在应用服务器(Application Server)上作为应用层,而将数据库放在数据库服务器(DB Server)上作为数据层。Web服务器在逻辑上是独立的,但在物理上它既可以是一个独立的服务器,也可以与应用服务器一起放在同一个服务器中构成BS结构。多层BS结构简化了客户端软件,它是以浏览器作为它的客户端,因此只需要装上浏览器作为客户端应用的运行平台,而将所有的开发、维护和升级工作集中在服务器端。用户使用浏览器上网,向Web服务器提交请求,Web服务器端应用处理请求,通过数据库服务器查询数据库,并将查询的信息HTML页面发送给用户,在用户的浏览器上显示。浏览器的功能可以通过下载服务器上应用程序得到动态扩展。因此Web结构有着更好的安全性,在用户机上不需要安装任何应用程序。总的来说,C/S和B/S各有千秋,在开发过程中,我们应该根据实际的需要来使用最合适的技术,本系统采用较新的B/S结构模式,希望在本次的开发研究中能够切身体会到采用B/S结构模式开发的便捷。二、现状分析:对于网络考试系统的前身-计算机辅助测验系统的研究,国外很早就开始了,并且在题库建设、统计测量等方面取得很多显著理论成果,如TOEFL、GRE考试。微软、思科的水平认证考试已经逐步由原来的单机版计算机测试向网络化的测试过渡。我国在这方面相对落后,目前主要是计算机题库的应用,计算机类的考试部分采用了计算机辅助测试的方式,如大学计算机初级考试、高中信息技术会考。另外,很多银行招聘也是采用计算机考试。但是,目前还存在一些问题:(1)绝大多数网络考试系统都主要以单项选择、多项选择客观试题为主,让学生从多个选项中进行选择。学生答题随意性强,存在侥幸心理,这样,很难客观准确地评价一个学生的学习情况。另一方面,由于缺少主观性考查,就无法对学生所学知识的综合应用能力进行评价。(2)缺乏对考试的系统分析与评价。考试的目的是为了评价学生的学习效果,同时也是给教师提供一些教学反馈信息,从而能够有针对性的进行因材施教。现有的网络考试系统大多只是提供成绩统计,而没有对学生或整体的情况进行正确有效的分析评价,更没有对试题的难度、区分度,试卷的信度、效度等进行分析。(3)适应性不强,资源重复建设问题严重。目前很多网络考试系统都是针对某一个学科,而缺乏通用性,以致于每一门课程都要单独开发考试系统,造成资源的低水平重复建设。(4)缺乏对资源建设标准的支持。各种标准制定的目的是为了规范资源的建设,使各种系统具有标准性、互操作性。目前无论是国外或国内,商业公司或学校自行开发的产品大都不支持这些规范标准。随着各种标准的不断完善,标准化的网络考试系统将是今后的主流发展方向。(5)图形、公式、符号的输入与编辑仍是一个技术难题。目前虽然存在一些简单的符号输入工具,但如何集成到网络考试系统之中,并支持在线编辑还任重而道远。三、发展趋势:在线考试是现阶段网络教育领域的一个应用热点。它是建立在国际互联网(Internet)或内部网络(Intranet)上的应用系统,客户端的配置可以极为简单,使考试不受地域的局限。一个完备的在线考试系统,可以使用户在网上学习过后及时检验自己的学习效果,以发现自己的不足,使得学习效率得到很大提高。而在线考试系统中题目的生成、试卷的提交、成绩的批阅等都可以在网上自动完成。只要形成一套成熟的题库就可以实现考试的自动化。这样一来,教师所要做的只是精心设计题目、维护题库,而组织考试和批阅试卷,从而大大减轻了教师的负担,其经济性是相当可观的。当前大多数的在线考试应用都还处于把纸面的考卷搬到网页上,然后利用计算机进行自动批卷的简单应用水平上。但也有一些机构已开始利用互联网所特有技术特点,针对一些学习点,创新出一些在线考试特有的考题。我们开发的考试系统在题库管理方面、考试管理方面、试卷管理方面、和并发考试方面经过了深入的探讨和研发,推出了具有鲜明技术特点的在线考试系统。随着教育改革的不断推进,教育行业的分工必然趋于专业化,一批优秀的教师或研究人员将会逐步转向提供精品的课件和题库,而其他教师则会利用这些优秀教学资源去辅导更多的学生。在这样的发展趋势下,只有切实保护题库创作者的知识产权,才能更好地推动整个产业价值链的发展。从整个业界发展来看,一方面提供良好的教学资源(包括题库)的交换渠道,另一方面实现对题库创作者的知识产权的有效保护,都是在线考试系统厂商未来将面临的主要问题。四、研究内容:基于MVC在线考试系统主要功能有:(1)前台a、考生注册:在这里我们可以注册考生的基本信息,标注“*”的信息必须填写,其中提示问题和问题答案是方便找回密码。b、考生登陆:注册过的考生使用注册时的密码和系统生成的准考证号登陆,选择自己需要的服务。c、在线考试:成功登陆的考生如果有相对应的试卷,便可根据提示顺利进入考试并提交试卷;若检测不到相应的试卷,返回登陆成功后的选择页面。如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“考生登陆页面”。d、试卷提交:考生在完成试题后可提交试卷,系统自动根据试题答案生成成绩,并记录到数据库中,方便考生和管理员查询分析。e、成绩查询:成功登陆的考生可以查询自己所有参与考试的科目的成绩。如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“考生登陆页面”。f、修改资料:成功登陆的考生可以在该页修改注册时所填写的个人信息。如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“考生登陆页面”。g、退出系统:退出前台系统到考生登陆页面。2后台a、后台登陆:登录管理进入管理员系统界面。b、管理员信息管理:可以对管理员信息进行增删改。如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“考生登陆页面”。 c、考生信息管理:成功登录的管理员可以一次性删除一个或者多个考生。如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“考生登陆页面”。d、考生成绩查询:成功登录的管理员可以根据自己的意愿设置查询条件及其关键字进行动态查询。如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“考生登陆页面”。e、课程信息管理:成功登录的管理员可以添加或删除一个或多个课程。如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“考生登陆页面”。f、套题信息管理:成功登录的管理员可以添加或删除一个或多个套题。如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“考生登陆页面”。g、考试题目管理:成功登录的管理员可以添加或删除一个或多个题目。如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“考生登陆页面”。h、退出后台管理:退出到后台系统登陆页面。五、研究方法:本课题应用到的平台是MyEclipse&MySQL,应用到的知识和技术包括J2EE,Structs1,MVC,Tomcat,Rose,UML和数据库等。六、实现步骤:阶段一:文献的搜集与整理;阶段二:撰写开题报告及目录;阶段三:软件编制、系统实现与测试;阶段四:撰写毕业论文,完成论文初稿;阶段五:修改论文,完成论文。其中阶段三、阶段四是最重要的部分。阶段三又包括系统前期的分析设计、模块的划分,系统的详细设计与编码实现,及系统简单的测试和维护;阶段四包括熟悉了解论文的基本格式及形式、系统所设计的知识技术的介绍,阶段三涉及的具体行文表现,对此次毕业设计的总结和致谢等。七、参考书目:1 李侃.Java Web 开发教程.北京:清华大学出版社,2012年1月.2 李兴华,王月清.Java Web 开发实战经典.北京:清华大学出版社,2010年8月.3 杨志姝,李光海.SQL应用与开发.北京:清华大学出版社,2006年7月.4 李兴华.Java 开发实战经典.北京:清华大学出版社,2009年8月. 5 王珊,萨师煊.数据库系统概论M.北京:高等教育出版社,2006年5月.6 刘万军.Java 6 程序设计实践教程.北京:清华大学出版社,2009年7月.7 夏邦贵,郭胜.SQL Server数据库开发入门与范例解析. 北京:机械工业出版社,2004年10月.8 夏帮贵, 刘凡磬. 中文版SQL Server数据库开发培训教程. 北京:人民邮电出版社,2005年3月.9 陈炜主编;沈昕. Java语言程序设计案例教程. 北京:人民邮电出版社,2005年6月.10 武延军,黄飞跃.精通JSP编程技术M.北京:人民邮电出版社,2001年8月.11 思志学. J2EE整合详解与典型案例:一本书搞定Struts+Spring+Hibernate. 北京:电子工业出版社,2008年8月.12 李侃. Java Web开发教程. 北京:清华大学出版社,2012年5月.13 孙卫琴.精通Struts,基于MVC的Java Web设计与开发M,北京:电子工业出版社,2004年8月.14 杨志姝, 李光海. SQL应用与开发标准教程,北京:清华大学出版社,2006年2月.15 黄佩虹, 张冰晶. 精通Hibernate:Java数据库持久层开发核心编程,北京:清华大学出版社,2009年3月.16 卢翰, 王国辉. JSP项目开发案例全程实录,北京:清华大学出版社,2011年5月.17 (美) Pallavi Jain, Shadab Siddiqui著;王雷, 潘英等译. J2EE 专业项目实例开发,北京:中国水利水电出版社,2007年1月.18 范佳. 基于UML在线考试系统的设计. 科技信息(学术研究) 2008年05期.19 刘中兵. 开发者突击:Java Web主流框架整合开发:J2EE+Struts+Hibernate+Spring,北京:电子工业出版社,2008年5月.20 王毅, 周峰, 孙更新. J2EE经典案例设计与实现,北京:电子工业出版社,2007年11期.21 (美)凯特勒. J2EE实践技术,北京:机械工业出版社,2002年10月.22 余浩东. J2EE应用框架设计与项目开发. 北京:清华大学出版社,2008年3月.23 吴运明,赵秀玲. 网络考试测评系统的研究现状与发展趋势. 软件导刊,第9卷第10期.24 刘增杰, 张少军. MySQL 5.5从零开始学. 北京:清华大学出版社,2012年2月.25 潘凯华, 李慧, 刘欣. MySQL快速入门. 北京:清华大学出版社,2012年4月.26 高红岩. Struts实用开发指南:基于MVC+MyEclipse的Java Wed应用开发. 北京:科学出版社,2007年8月.27 (美) John Carnell, Rob Harrop, Kunal Mittal著;龚波, 徐雅丽等译.Struts与Ajax高级程序设计. 北京:人民邮电出版社,2008年3月.28 向传杰. Java 编程案例教程M.北京:电子工业出版社.2005年5月.29 黄明,梁旭,曹利超.Java信息系统设计与开发实例M .北京:机械工业出版社.2005年3月.30 孙更新,宾晟,吕婕.毕业设计指南与项目实践M.北京:科学出版社,2007年3月.31 蔡翠平. JAVA程序设计M.北京:清华大学出版社.2003年1月.32(美)戴特尔(Deitel.H.M). Java 大学简明教程:实例程序设计国外计算机科学教材系列J.北京:电子工业出版社.2005年2月.33 袁然,郑自国,来为国. Java案例开发集锦M .北京:电子工业出版社.2008年9月.34 覃庆炎. Java开源项目J.北京:清华大学出版社.2008年9月. 指导教师签名: 年 月 日摘 要教育的改革,不仅仅是教育思想的更新和进步,也是教育技术和手段的改进和提高。在各种教育机构的教学过程中,考试都是一个重要的环节,考试工作的好坏直接关系着教学的成绩。传统的考试,长期以来都是以纸和笔为工具,工作效率低、纸张浪费大,因此在线考试应运而生。当今各项技术突飞猛进,尤以计算机技术的发展最为突出。在这种双重因素的作用下,以计算机技术为主的无纸化考试应运而生。主要优势体现在出题方便快捷、阅卷准确快速、成绩分析科学直观。论文首先对在线考试系统进行了需求分析,包括系统的目标与任务、系统的功能,并利用UML建模语言完成了系统的用例模型、顺序图和活动图等工作。然后完成了在线考试系统的设计,包括功能模块的设计和数据库的设计。功能模块的设计依据了前面的系统分析,将系统划分为管理员管理、考生管理、成绩查询、试题管理、套题管理、科目管理、在线考试七个模块。关键词:在线考试系统; MVC; Struts; UML; JSP 0 ABSTRACTWith the innovation of educational thought and the development of science and technology,the shortcomings of the traditional examinations are completely exposed.The design,organization,printing,distribution,process and evaluation of the test take a lot of labors and materials,which shows peoples lower working efficiency.In such cases,Online exam arises at the historic moment.It is characterized in its convenience and fastness while setting a test paper,its speed and accuracy while evaluating the paper and its scientific analysis of the test paper.It is easier for teachers to set a test paper by the test question database.The computerized examination system will save a lot of labors in evaluating the test paper,and greatly improve the accuracy in evaluation.Thestatistical analysis will he performed automatically by the computer,which will be convenient for students to inquiry about,print,count and analyze their marks. This thesis designs and implements an online examination system by using such technologies and tools as Struts,MVC(Model,View and Controller),UML (Unified modeling language)and J2EE(Java 2 enterprise edition).The thesis first analyses the requirements of online examination system,which include the target and task of the system,shows the Use Case Model,Sequence Diagrams and Activity Diagrams of the system.Then the thesis completes the design of the system,which includes the design of function modules and the design of the database.According to the system analysis, system is divided into seven modules,such as manager management,exam management,question management,subject management,taoti management, score inquiry and online exam.Keywords:Online examination system; Struts; UML; MVC; JSP目 录1 在线考试系统的概述11.1 系统开发背景11.2 系统开发的意义11.3 国内外现状21.3.1 国外发展情况21.3.2 国内发展情况21.4 论文的主要内容31.5 本章小结32 开发环境及工具介绍42.1 MVC模式简介42.2 Struts框架简介62.3 JSP技术简介82.4 开发环境介绍92.5 本章小结93 在线考试系统的需求分析103.1 系统的目标和任务103.2 系统的功能需求103.3 系统的用例图123.3.1 考生的用例分析123.3.2 管理员的用例分析133.4 在线考试的流程图133.5 在线考试的顺序图143.6 在线考试的活动图153.7 本章小结164 在线考试系统的设计174.1 系统的层次设计图174.2 系统各模块的设计174.2.1 考生管理174.2.2 管理员管理184.2.3 成绩管理184.2.4 课程管理194.2.5 套题管理194.2.6 题目管理204.2.7 在线考试204.3 系统数据库的设计214.3.1 数据库的E-R图214.3.2 数据库的设计图214.3.3 数据库图表214.4 本章小结245 在线考试系统的实现255.1 在线考试模块的实现255.2 套题管理模块的实现275.3 课程管理模块的实现295.4 本章小结306 总结和发展前景的展望31参考文献32致 谢33V武汉纺织大学2013届毕业设计论文1 在线考试系统的概述1.1 系统开发背景近几年,随着Internet的迅猛发展和广泛应用,人们对互联网技术的要求已不单单是浏览网页、传送电子邮件等单调的活动,经济快速增长让电子产品的更新换代健步如飞,如网上购物、电子结算、在线学术交流、电子商务等以互联网为基础的行业迅猛发展6。为解决教育的均等化、公平化,实现资源共享而崛起的网络化教育代表了教育改革的一个发展方向,建立在其基础上的远程教育成为现代教育的主体。远程教育包括很多环节,如教学系统、答疑系统、考试系统等,其中考试系统就是整个系统中最重要也是最难实现的环节。在我国,虽然远程教育已经蓬勃地发展起来,但目前学校和社会上的各种考试还是采用传统的考试方式。传统的考试采用人工出题、人工阅卷、人工评估和分析:这不仅大大加重老师的工作任务,也会影响到考试的目的及其效果9。随着各种考试类型的不断增加和考生数量的不断膨胀,传统考试的各种弊端纷纷呈现。如统一的考场布置需要耗费巨大的人力、物力和财力;人工出题和阅卷效率低而错误率高,难以保证考试的公平性;考试的时间不能统一,因为不可能在一个时间点收完所有的试卷;书面作答也会造成资源的浪费17。1.2 系统开发的意义在线考试系统对教育行业的改革发展具有很好地推动作用,丰富了知识的传播形式、解决了教育资源地域分配不均的问题、增添了知识运用的活力。具体表现在:(1)在线考试突破了传统考试模式的时空限制,满足任何授权考生在规定的时间段内的任意时间和可用地点参加考试,大大提高了教学内容和考核方式的灵活性。(2)在线考试减轻了教务处人员尤其是教师在命题、阅卷、统计分析等方面繁重的工作量,提高了工作效率。(3)在线考试实现了真正的无纸化办公,节省了纸张、印刷等费用。(4)在线考试更能体现考试的客观公正性,计算机自动阅卷避免了人为不确定因素带来的误差。(5)在线考试考核形式多种多样,它能将文字难以描述的东西以多媒体形式直观的表现出来,有利于考核的准确性和灵活性120。1.3 国内外现状1.3.1国外发展情况计算机考试系统的实现,将教师从繁琐的出题、监考、阅卷、试卷分析和成绩统计的传统考试中解脱出来,充分体现了准确、客观、公正、快速、简捷等特点。20世纪70年代,美国考试委员会着手进行计算机模拟考试的研究工作,并于1983年编制出有效的模拟考试系统,当时的名称是计算机辅助考试系统。1990年8月,美国加利福尼亚、得克萨斯等十个州创建各州以及各高等院校相互认可的学位证书以及相应的教学体系,从而正式拉开网络远程考试的序幕。著名的考试机构有美国思而文学习系统有限公司4。它是一家从事教育和计算机化考试服务的专业公司,在世界的6大洲140多个国家和地区有2200多个考试中心,可用25种语言提供近百个不同类型,一千多种考试,每年全球参加计算机化考试的人数约400万。当今大部分的授证机构均委托思而文公司为其进行测试、评估。最出名的网络教育案例,当属美国政府举办的TOFEL考试,目前在全球范围内,均可以通过国际互联网进行TOFEL培训与考试,大大减少了美国政府对于此项考试的开支,并能更快速、准确地为期望进入美国学习的学生服务12。目前美国约有80所大学允许学生通过网络考试获得学位,另外,加拿大、英国等其它西方国家也在大力开展网络考试系统。1.3.2 国内发展情况与西方发达国家的突飞猛进相比,国内的计算机考试技术研究工作开展的相对较晚,但国内在网络远程教学研究工作发展相当迅速。目前各高等院校如清华大学、北京大学、上海复旦大学、同济大学、西安交通大学、华南理工大学、北京医科大学和湖南大学等高校己陆续在网上设立了自己的考试系统,并开展相关研究7。国家信息产业部也开发了办公自动化证书CEAC远程考试系统、红旗Linux远程考试系统。 通过对国内外计算机考试系统的考察和试用,我们发现它们具备以下特点:(1)C/S结构和B/S结构并存,但基本都可以在网络上使用;(2)大都提供自动组卷和自动评卷功能,但水平参差不齐;(3)考核软件使用仿真模拟环境和调用真实环境两者都有;(4)均采用了开放式试题库,扩充比较容易;(5)对题库的分析管理部分都比较重,都提供了最基本的功能1.4 论文的主要内容本文首先对在线考试系统的背景、意义及国内外现状作了概要介绍,然后主要介绍了该系统涉及的MVC设计模式、Struts框架和UML统一建模语言,提出了使用统一软件开发过程开发在线考试系统的解决方案。本文着重介绍了在线考试系统从分析、设计到实现的全过程。在项目的分析阶段,以在线考试系统为例,讲述了如何分析需求,捕获需求作为用例,给出了系统的分析模型;在项目的设计阶段讲述了系统的体系结构设计,功能结构设计,视图、模型和控制器的设计以及数据库的设计。在项目的实现阶段,给出了相关视图、模型和控制器的实现代码以及系统的打包和部署情况。整个过程体现了统一软件开发过程的用例驱动、构架为中心和增量与迭代的特点。采用UML建模已经成为面向对象分析和设计的一种趋势,作为基于MVC模式的Web应用的典型体现,Struts给出了一套框架工具,使开发人员在此框架的支持下就能够快速高效的构建不同的应用。本文介绍如何将UML与Struts结合在一起,开发一个实际的应用系统,对于开发企业级应用有一定的参考价值。1.5 本章小结通过查阅数据,对在线考试系统的背景有了初步了解,这将有助于我进入下一步的学习与设计。在查阅资料时,我重点观注了它的未来发展,我觉得该系统的未来远景很可观,远远超乎我的预测,随着教育事业的发展,相信不久的将来,教育事业也会是互联网的天下,通过在线管理使学生的信息可以打破量的瓶颈,做到有序管理。2 开发环境及工具介绍为了方便对本考试系统的认识和了解,本章将涉及考试系统所需要用到的主要相关技术及开发环境作简要介绍。 2.1 MVC模式简介交互式系统越来越普遍,交互界面越来越复杂多变,使得人们必须找到一个总体性的、具有普遍意义的指导模式。MVC是一种体系结构模式,代表Model-View-Controller,即模型、视图、控制器,是应用于交互式系统的一种体系结构模式。MVC是20世纪80年代Xerox队PARC为编程语言Smalltalk-80发明的一种软件设计模式,迄今已经成为一种成熟的优秀的设计模式,受到越来越多的Web开发者的欢迎。MVC模式指导模块的职责分配和模块之间的通信协议。职责分配是面向对象分析和设计中最重要的工作,协议设计则是相当困难的工作。MVC为这两项工作提供了指导,所以意义重大。MVC是一种设计模式,它强制性地把应用程序的输入、处理和输出分开。MVC把应用程序分成三个核心模块:模型、视图和控制器。它们分别负担不同的任务。图1-1显示了MVC模式各模块各功能及其相互关系1。图1-1 MVC设计模式View:View是用户看到的并与之交互的界面。View从模型获得数据,View的更新由控制器来完成。MVC最强调的一点,就是View中决不允许也决不应该包含诸如业务逻辑的东西。在View中其实没有真正的处理发生也不应该有处理发生。不管这些数据是联机存储的还是一个简单的信息列表,作为View来讲,它只是作为一种输出数据并允许用户操纵的方式。Model:Model封装了应用问题的核心数据、逻辑关系和业务规则,提供了完成问题处理的操作过程。一方面,Model为控制器所调用;另一方面,Model还为视图获取显示数据而提供了访问其数据的操作。Model是与数据格式无关的,因此,一个Model可以为多个视图提供数据。这样Model一次编写就可为多个视图重用,从而减少了代码的重复性。Controller:Controller根据用户的输入调用相应的Model和视图去完成用户的需求。具体地说,Controller本身不输出任何东西和做出任何处理。它只是接收请求并决定调用哪个Model构件去处理请求,并确定用哪个视图来显示Model处理之后返回的数据。一个应用程序或者组件只能有一个Model,但是这个Model可以对应多个View。View向Model注册要求在Model的数据发生变化时获得通知消息。View得到通知消息之后,获取Model的相应数据,更新自己的显示。View不向Model发送消息。 一个View对应一个Controller。View负责创建和初始化Controller,这也是View和Controller关系密切的原因之一。Controller接收用户输入,如果有与应用程序数据无关,而只涉及显示变化的用户输入,Controller直接通知View。 Controller和View关系密切的另一个原因是现代应用程序界面复杂,灵活多变。因此Controller需要大量了解View的情况,大量查询View的信息,距离太远不利于效率和灵活性,协议也很难设计,所以经常捆绑在一起。例如,目前基于控件的图形界面,很多控件实际上是一个封装好的MVC实体,通过属性、事件和方法与外界协同工作,强行拆分反而适得其反。因为一个Model对应多个View,一个View对应一个Controller,所以一个Model对应多个Controllers。Controller接收外部输入,是导致Model发生变化的唯一原因。同时,Model的变化可能导致Controller行为的变化。MVC模式可以为一个模型在运行时同时建立和使用多个视图2。变化-传播机制可以确保所有相关的视图及时得到模型数据变化,从而使所有关联的视图和控制器做到行为同步。 视图与控制器的可接插性,允许更换视图和控制器对象,而且可以根据需求动态的打开或关闭、甚至在运行期间进行对象替换。模型的可移植性。J2EE模型提供了一个很好的企业应用框架及解决方法,但是多层企业应用框架在提高了软件的重用性和分解了问题的复杂性的同时,也使得代码庞大,层与层之间的控制关系复杂11。而MVC(Model View Controller)模式可以利用控制器将应用的业务逻辑模型和应用的表示逻辑视图进行分离,使应用的各层之间达到一种松散耦合的效果,所以,人们将MVC模式应用于J2EE应用开发。2。2 Struts框架简介现在有很多可供使用的MVC框架,由于Struts框架具有完整的文档并且相对来讲比较简单,所以用它开发MVC系统还是比较方便的。Struts采用的是开放式源代码,它是作为Apache软件基金的Jakarta项目的一部分,旨在改进和提高JSP、Servlet、标记库以及面向对象的技术水准,整合Servlet和JSP的技术优势,为开发人员提供一个开发WEB应用程序的框架。在Struts框架中,对模型、视图和控制器都提供了现成的实现组件。模型由实现业务逻辑的JavaBean或EJB组件构成,控制器由ActionServlet和Action来实现,视图由一组JSP文件构成。图2-1显示了Struts实现的MVC框架13。图2-1 Struts实现的MVC框架(1)视图Struts中的视图部分可以采用JSP来实现。JSP文件中没有业务逻辑,也没有模型信息,只有标签,这些标签可以是标准的JSP标签或客户化标签,如Struts标签库中的标签。Struts提供了丰富的自定义标记库,视图部分使用这些自定义标记,同样可以实现与模型部分的有效交互并能够增强显示功能8。此外,通常把Struts框架中的ActionForm也划分到视图部分。ActionForm也是一种JavaBean,除了具有一些JavaBean的常规方法,还包含一些特殊的方法,用于验证HTML表单数据以及将其属性重新设置为默认值。Struts框架利用ActionForm来进行视图和控制器之间表单数据的传递。(2)模型模型部分从概念上可以分为两类:系统的内容状态和改变系统状态的动作。Struts中的模型部分一般由JavaBean以及EJB组成。(3)控制器控制器由ActionServlet类和Action类来实现。ActionServlet类是Struts框架中的核心组件。ActionServlet类继承了javaxservlethttpHttpServlet类,它在MVC模型中扮演中央控制器的角色。ActionServlet主要负责接收HTTP请求信息,根据配置文件struts-config。xml的配置信息,把请求转发给适当的Action对象,如果该Action对象不存在,ActionServlet会先创建这个Action对象。Action类负责调用模型的方法,更新模型的状态,并帮助控制应用程序的流程。Action充当用户请求和业务逻辑处理之间的适配器,其功能就是将请求与业务逻辑分开,Action根据用户请求调用相关的业务逻辑组件。业务逻辑由JavaBean或EJB来完成。Action类侧重于控制应用程序的流程,而不是实现应用程序的逻辑。通过将业务逻辑放在单独的Java包或EJB中,可以提高应用程序的灵活性和可重用性。(4)Struts的配置文件struts-config.xml上面讲到一个用户请求是通过ActionServlet来处理和转发的20。那么ActionServlet如何决定把用户请求转发给哪个Action对象呢?这就需要一些描述用户请求路径和Action映射关系的配置信息了。在Struts中,这些配置映射信息都存储在特定的XML文件strut
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 山西省吕梁市第一中学2025-2026学年高一上学期基础过关(一)物理试题(无答案)
- 2024-2025学年江西省赣州市高二(下)期末物理试卷(含答案)
- 边防军人知识培训课件
- 机器学习算法在健康保险精算模型中的优化-洞察及研究
- 国产高导热材料在监视器箱散热系统中的替代路径
- 含氟硼酸酯类化合物生物代谢路径与食品安全风险评估的关联性研究
- 反射式筒灯与智能建筑光环境协同控制的算法优化路径
- 反光织带与智能穿戴设备的柔性集成技术瓶颈突破
- 双碳目标下刮板系统余热回收与能源梯级利用技术突破
- 半导体级副门锁芯片在电磁脉冲环境下的自毁保护机制
- 解读《义务教育体育与健康课程标准(2022年版)》2022年体育与健康新课标专题PPT
- 2019版外研社高中英语必修三单词默写表
- 食堂合作协议范本食堂档口合作协议.doc
- 直接还原铁生产工艺
- 建筑识图题库及答案
- 《幂的运算》习题精选及答案
- 异质结TCO设备:RPD与PVD比较分析(2021年).doc
- PPT汇报评分表(共1页)
- ESD防静电培训教材.ppt
- 《春》复习课件
- 《口袋妖怪漆黑的魅影5.0》图文攻略(全周目)
评论
0/150
提交评论