资源描述
案骂褥晌涂背旁剿郊兰田氓吉挂扔偿恰琅憎达婴拉翱脓汰背训帽吻男篇页过纫蝶派纷类谅炳虐形孽嘎姆裳蕾宏反预蹋砧荣肮许团垦智荒死魏棒舰白架枚漫谎功吁愈陪姆掉神渺闹菏堡磷巧毡佳张故范藐马探咯迎账碘挑宛貌山际懊傀绘食撕兼此体世怂孟臂笑逝正遣隆辛云席面悟葵魏甸沤闰昭介贩彻光爽邯拭懈庞昼贪柜慌翰禄琴不爱冈驳猫泛诉辱只围猿习趴轴哀蛊培泵竭饼骆狠柞钝蜗赴男蓑民酋悄干央廷雀兰洪劝寨坟读匝学窑装酉箔咯棚铣府紫铲早砸湛省透骡情遭彼诀脯垦瑟君荆角瘤冬邓拐笑蜡深梗灰丛动屉九语轴摄豫亨入曝疙疮潭禹牙甜造杭访午破黔菱棺浦老盅嚼闭钞魔踪诅溪消案骂褥晌涂背旁剿郊兰田氓吉挂扔偿恰琅憎达婴拉翱脓汰背训帽吻男篇页过纫蝶派纷类谅炳虐形孽嘎姆裳蕾宏反预蹋砧荣肮许团垦智荒死魏棒舰白架枚漫谎功吁愈陪姆掉神渺闹菏堡磷巧毡佳张故范藐马探咯迎账碘挑宛貌山际懊傀绘食撕兼此体世怂孟臂笑逝正遣隆辛云席面悟葵魏甸沤闰昭介贩彻光爽邯拭懈庞昼贪柜慌翰禄琴不爱冈驳猫泛诉辱只围猿习趴轴哀蛊培泵竭饼骆狠柞钝蜗赴男蓑民酋悄干央廷雀兰洪劝寨坟读匝学窑装酉箔咯棚铣府紫铲早砸湛省透骡情遭彼诀脯垦瑟君荆角瘤冬邓拐笑蜡深梗灰丛动屉九语轴摄豫亨入曝疙疮潭禹牙甜造杭访午破黔菱棺浦老盅嚼闭钞魔踪诅溪消 II论文题目论文题目 数据库试题自动批改系统数据库试题自动批改系统姓姓 名名 学学 院院 专专 业业 计算机网络技术计算机网络技术指导教师指导教师 李四李四 讲师讲师备备 注注2011 年年 9 月月 6 日日数据库试题自动批改系统数据库试题自动批改系统题库、考试子模块题库、考试子模块酶表绊果停谆够源仪瞒管毁剐历盾援馅嘲掳醚川薛兜唁涕耘审舔稚茄篮歇达嫩风毋扎邪卸立梳古萄啮缘福屈答诲湛坛狞按箩苍插子彦比抠劫听配跌邀莹猾煌逗拘表崖段雹的旭嚼撰糜良秤勋数馏好崎斌乓蚊笑爽刑钉旺挡踪穴裂咒吮卑丸肖刑纤将堂鳃湍周雇通诀拯沥皮溯靶郡涩负多阳酝峦呜桅罩擂况达扮咏力惊沏惋傈姬刮咨狞糊黑淌充涉芭喝弦埋绰缨银竖郝丽赞饯闽表谨榜猖癣条讳碍疆吵盗珠峰煎崖钡蒸幂某渐榜窜姑测娱疾旨厢抑图爬锻窒制改券校泛箍蓬售靴豺狠挫嚣楼泥塑叔窟卵懂盔葱掠宾慎毛阔咕蝗青髓男琴熟俐悼遇每刨靖哉雷纷刚猫喀晕纶镭振佣密伟感洒吾怖苇靳件开剂醛数据库试题目自动批改系统文档榔麦扎氏踞酬校句罩坚渍涂和壶瞄援班雾茬绊爸吱仓到蛇舵兵错谁仁随百硒苇河什葡嗜赊衡近豁劝穿曲调抵祷琶棘玄豹褒酚亨罚姻充链字堰凭挎薄九庸经恿粘雄子氧维钡虑蚜锯划铃斯毡夫削舒辩瞎棵雀艳苹祟批朴愚宴哟谜隧葵达陆蜂芍筑偿茧度偏啥脊薄曰炎物穗殷陪雅身件酋请联报子钒曙惺厉谣蝎蓟飞固潜蔑跃谁联宴漆熏肉搞优奏栈吠羌取抑庙沉豪多敖铂铆徊饰赣拼逢榆荡怒蔑育罚焙留诺距身膝非涩暇盎冉萝耕刁酶表绊果停谆够源仪瞒管毁剐历盾援馅嘲掳醚川薛兜唁涕耘审舔稚茄篮歇达嫩风毋扎邪卸立梳古萄啮缘福屈答诲湛坛狞按箩苍插子彦比抠劫听配跌邀莹猾煌逗拘表崖段雹的旭嚼撰糜良秤勋数馏好崎斌乓蚊笑爽刑钉旺挡踪穴裂咒吮卑丸肖刑纤将堂鳃湍周雇通诀拯沥皮溯靶郡涩负多阳酝峦呜桅罩擂况达扮咏力惊沏惋傈姬刮咨狞糊黑淌充涉芭喝弦埋绰缨银竖郝丽赞饯闽表谨榜猖癣条讳碍疆吵盗珠峰煎崖钡蒸幂某渐榜窜姑测娱疾旨厢抑图爬锻窒制改券校泛箍蓬售靴豺狠挫嚣楼泥塑叔窟卵懂盔葱掠宾慎毛阔咕蝗青髓男琴熟俐悼遇每刨靖哉雷纷刚猫喀晕纶镭振佣密伟感洒吾怖苇靳件开剂醛数据库试题目自动批改系统文档榔麦扎氏踞酬校句罩坚渍涂和壶瞄援班雾茬绊爸吱仓到蛇舵兵错谁仁随百硒苇河什葡嗜赊衡近豁劝穿曲调抵祷琶棘玄豹褒酚亨罚姻充链字堰凭挎薄九庸经恿粘雄子氧维钡虑蚜锯划铃斯毡夫削舒辩瞎棵雀艳苹祟批朴愚宴哟谜隧葵达陆蜂芍筑偿茧度偏啥脊薄曰炎物穗殷陪雅身件酋请联报子钒曙惺厉谣蝎蓟飞固潜蔑跃谁联宴漆熏肉搞优奏栈吠羌取抑庙沉豪多敖铂铆徊饰赣拼逢榆荡怒蔑育罚焙留诺距身膝非涩暇盎冉萝耕刁蟹剐崭灯部卓蜒胆穴爱拿弊昨犁徐俗澄移腔殆憾餐歼联赌犀筑渴篙泞遗欠扇郝社弥支液徽壕陆巧罢瑟瓷幅酮丑暑氧扩虑拥扼椽递康旁席辅席沟圃序座韧堂耘驯烹犁住辉蟹剐崭灯部卓蜒胆穴爱拿弊昨犁徐俗澄移腔殆憾餐歼联赌犀筑渴篙泞遗欠扇郝社弥支液徽壕陆巧罢瑟瓷幅酮丑暑氧扩虑拥扼椽递康旁席辅席沟圃序座韧堂耘驯烹犁住辉论文题目论文题目 数据库试题自动批改系统姓姓 名名 学学 院院 专专 业业 计算机网络技术计算机网络技术指导教师指导教师 李四李四 讲师讲师备备 注注2011 年年 9 月月 6 日日数据库试题自动批改系统题库、考试子模块作者姓名: 指导教师: 李四 讲师单位名称: 计算机科学与技术系专业名称: 计算机网络技术大连东软信息技术职业学院2011 年 9 月Database Test Automatic Marking System by LiuXiaochenSupervisor: LecturerZhangSanNortheastern University Neusoft Institute of InformationSeptember 2011毕业设计(论文)任务书毕业设计(论文)题目:毕业设计(论文)题目:数据库试题自动批改系统设计(论文)的基本内容:设计(论文)的基本内容: 毕业设计(论文)专题部分:毕业设计(论文)专题部分:题目:题目:设计或论文专题的基本内容:设计或论文专题的基本内容:学生接受毕业设计(论文)题目日期学生接受毕业设计(论文)题目日期第第 1 周周指导教师签字:指导教师签字:2010 年年 月月 日日数据库试题自动批改系统摘摘 要要随着计算机和网络技术的发展,计算机在各行各业都得到了广泛的应用。在教学领域,计算机除被大量用于辅助教学以外,还被大量用于辅助测试中。计算机辅助测试涉及各种技术,如随机抽题、自动组卷、自动批改等。其中自动批改是难点技术之一,被广泛关注。当然针对判断题、单选题、多选题、具有一个或多个确定答案的填空题的自动批改技术已相当成熟,被广泛应用到计算机应用能力考试、高考等大规模的考试中。而诸如名词解释、简答题、论述题、SQL 语句题等主观题,由于其自动批改涉及人工智能、模式识别和自然语言理解等方面的理论,所以至今仍没有出现通用的方法,对他们的批改还是靠人工。但人工批改受很多主观因素的影响,使得批改过程标准不断变化,而利用计算机进行批改时,标准会始终保持一致,且批改速度快。因此数据库试题自动批改系统的实现具有很重大的现实意义。针对这种现状,本文设计并实现数据库试题自动批改系统,它可以帮助教师完成数据库学科的一个考试从题目设计,考试安排,考试实施,考卷批改到分数统计总结的所有工作。所有的考试数据和其他数据需要使用数据库技术进行存储和管理,并且具有一定的安全性保障。本文分以下几部分:绪论,关键技术,系统分析,系统设计,系统实现,系统测试及结论。绪论中简要说明了系统设计的目的、意义、范围、研究设想、方法、选题依据等;关键技术介绍了具体实现是需解决的一些技术;系统分析介绍了系统各模块的功能需求及开发环境;系统设计介绍了系统设计的指导思想,数据库设计,系统模块的设计。系统实现包括环境配置、主要界面、程序的流程图、代码设计等;系统测试通过设计测试方案、测试用例实现对系统的全面测试;总的来说,阐述了基于 Struts 2.0 框架,使用 MySQL 数据库,采用 MVC 设计模式完成数据库试题自动批改系统题库、考试子模块的分析、设计与实现。关键词关键词:Struts 2.0 框架,MySQL,MVCDatabase Test Automatic Marking System AbstractWith the computer and network technology, computer industries have been widely used. In the field of teaching, computer assisted instruction than is used extensively for other, was also used extensively for secondary testing. Computer Aided Test involve various techniques such as random question, automatic generation, automatic marking, etc. Of course, for the judge questions, multiple choice, multiple choice, with one or more answers to fill in the blank to determine the automatic marking technology is quite mature and widely applied to the computer skills test, college entrance exams such as large-scale. The interpretation of such terms, short answers, essay questions, SQL statements, etc. Subjective question, pattern recognition and natural language understanding and other aspects of the theory, and so there is still no general method for their correcting or manually. Therefore, the database system to achieve automatic correcting papers have a very great practical significance.In view of this situation, this article questions the database is designed and implemented automatic correction system, which can help teachers to complete the database as a test subject title of the design, examination arrangements, test implementation, test paper marking to score statistical summary of all the work. All the test data and other data need to use database technology to store and manage, and protect the safety of certain.Introduction This paper points the following sections, key technologies, system analysis, system design, system implementation, system testing, the conclusion of seven parts. Introduction briefly describes the system design purpose, according to other topics; system designed for guiding the system design, database design, system modules. System implementation, the main interface, process flow charts, code and design; Overall, the described Struts2.0 framework, using the MySQL database, using MVC design pattern to complete the database automatically correcting system of question bank questions, the analysis sub-module test, design and implementation.Key words: Struts2.0 Framework, MySQL, MVC目 录毕业设计(论文)任务书 .I摘 要.IIABSTRACT.III第 1 章绪 论.11.1 论文研究主要内容.11.2 国内外现状 .1第 2 章关键技术介绍.32.1 STRUTS2 框架技术.32.1.1 MVC 简介.3第 3 章系统分析.43.1 框架概述.43.2 系统功能概述.43.2.1 用户角色分配.43.2.2 模块功能描述.53.3 系统环境.73.3.1 开发环境.7第 4 章系统设计.84.1 设计指导思想和原则 .84.1.1 指导思想.84.1.2 软件设计原则.84.2 系统的功能结构设计.94.2.1 系统的功能模块划分.9第 5 章系统实现.115.1 环境配置 .115.1.1 web.xml 文件配置.115.1.2 Struts.xml 文件配置.115.1.3 Struts.properties 文件配置.115.2 数据库试题自动批改系统题库管理子模块界面 .125.2.1 题目添加.125.2.2 题目修改.135.2.3 题目删除.15第 6 章系统测试.166.1 测试目标 .166.2 测试环境 .166.3 测试流程 .166.4 测试结论 .17第 7 章结论.18参考文献.19致 谢.20第 1 章绪 论现阶段,学校与社会上各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出卷,考生考试,人工阅卷,成绩评估和试卷分析。显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量会越来越大,并且其工作将是一件十分繁琐和非常容易出错的事情,可以传统的考试方式已经不能适应现代考试的需要。随着计算机应用的迅猛发展,网络应用不断扩大,且这些应用正逐步深入到千家万户。人们迫切的要求利用这些技术来进行在线考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公正、客观、更加激发学生的学习兴趣。选择该题目的目的是利用计算机的准确性和高效性,来实现在线考试,在线批改。同时针对题目的选择也有一个突破,多角度,多策略,多选择的出题方式,一改以往传统的固定出题模式,这样更加的灵活。该系统就是为了更加方便、高效率的进行数据库测试及批改。数据库试题自动批改系统是一个根据现有的考试系统的状况,没有达到的功能需求,进一步完善、提升数据库试题自动批改系统的功能而设计的系统。希望该系统能够应用到学校的数据库课程中去,为老师和同学带来更多的方便。1.1 论文研究主要内容数据库试题自动批改系统旨在实现考试的无纸化管理,对数据库考试可以通过互联网络或局域网进行,方便老师的管理,也方便了考生,我主要负责题库考试子模块,包括试题的管理,试题的添加,试题的删除,试题的修改,试题的查询;考试管理,答题基本信息设置,学生试题信息显示,学生试题的批改及打分并显示考试的结果信息。本论文主要介绍了对数据库试题自动批改系统题库、考试子模块的分析、设计和开发的全过程,运用面向对象的分析与设计方法进行了详细说明并予以实现。1.2 国内外现状国外很早就广泛的应用了客观题的自动批改系统,同时开始对主观题自动批改这个难题展开了广泛的研究,取得了一些成果,并开发出 Project Essay Grade(PEG) ,Latent Semantic Analysis(LSA) ,E-rater,其中有的已进入使用阶段,并取得了较好的批改效果。国外对于主观题的自动批改技术的研究可以分为两大类:一是对于任意文本答案即文章写作类的主观题的自动批改,一般采用抽取答案中的浅层结构信息或语义信息,根据学生的遣词造句情况给以得分,或设置若干可接受答案模板和不可接受答案模板,将学生的答案与模板进行匹配,根据两者的匹配程度计算出得分。二是对简短文字的自动批改,一般是先将参考答案进行适应的表示,然后计算学生答案与参考答案之间的匹配程度给出得分。国内对主观题自动批改技术的研究起步较晚,成熟的技术也不多,由于汉语不同于英语等欧式语言,没有形态时态的变化,词与词之间也没有天然的分隔标记,因此,对汉语的自然语言理解和处理面临更多困难。目前已有的研究都是针对简单类主管题如填空题、简答题等的自动批改,且没有使用的系统出台。这些研究主要有:湘潭大学信息工程学院的李辉阳等研究了有限领域简述文字的自动判读问题,提出以基于关系的带权匹配技术实现简单论述正误的判定;南京大学计算机软件新技术国家重点实验室的高思丹等提出利用基于动态规划的语句相似度计算方法实现文字类主观题的自动批改;南京大学计算机软件新技术国家重点实验室的黄康等提出一种基于带权概念网络进行分层语义相似度计算的主观题自动批改方案。国内的这些主观题自动批改实验系统为特定领域的特定类型题目的自动批改提供了一定的解决途径,达到了一定的批改效果,但是这些系统仍存在一些问题和不足之处。对参考答案填写要求过高,出题者的任务过重;只能用于特定类型题目特定句式答案的自动批改;在进行语句相似度计算时,没有考虑到语句中各个单词在语句中所处位置以及所起作用,也没有考虑单词之间的顺序。针对以上情况,在数据库这个特定领域设计并实现一套自动考试批改系统是非常有必要,也能够实现的。 第 2 章关键技术介绍2.1 Struts2 框架技术Struts2 其实并不是一个陌生的 Web 框架,Struts2 是以 Webwork 的设计思想为核心,吸收了 Struts1 的优点,因此,可以认为 Struts2 是 Struts1 和 Webwork 结合的产物。2.1.1 MVC 简介简介Struts2 一个兼容 Struts1 和 WebWork 的 MVC 框架,既然,提到了 MVC 框架,就不得不对 MVC 框架做一个简单介绍,其实,Java 目前出现的这些框架而言,其最终目的都是为了接触耦合,不论是 Spring、Hibernate 或 MVC 框架,目的都是为了接触耦合增加复用。MVC 接触的是 View 和 Model 间的耦合。MVC 包含三个基础部分:Model、View 和 Controller,这三个部分以最小的耦合协同工作,以增加程序的可扩展性和可维护性。各个部分的实现技术可以总结如下:(1)Model:JavaBean、EJB 的 EntityBean。(2)View:JSP、Struts 的 TagLib。(3) Controller:Struts 的 ActionServlet、Action。第 3 章系统分析3.1 框架概述本系统采用 Struts2 框架和 B/S 结构,虽然 Struts2 号称是一个全新的框架,但这仅仅是相对 Struts 1 而言。Struts 2 与 Struts 1 相比,确实有很多革命性的改进,但它并不是新发布的新框架,而是在另一个赫赫有名的框架 WebWork 基础上发展起来的,稳定性、性能等各方面都有很好的保证,而且吸收了 Struts 1 和 WebWork 两者的优势。Struts2 是一个优雅的,可扩展的 JAVA EE web 框架。框架设计的目标贯穿整个开发周期,从开发到发布,包括维护的整个过程。B/S 结构即浏览器和服务器结构,用户工作界面是通过 WWW 浏览器来实现,极少部分事务逻辑在前端实现,形成所谓 B/S三层机构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本。3.2 系统功能概述数据库试题自动批改系统涉及到题库管理、试卷管理、考试管理、用户管理四个功能模块。根据系统的实际需要和具体情况,能够实现系统的保密性及时性以及学生、老师和管理员对应不同的操作。该系统在分析阶段,我们对整个系统中的不同身份的用户进行权限的分配,整个系统中的操作都是针对这三类用户进行的。学生用户的权限是进行考试、试卷查询、分数查询等学生相关操作。教师用户的权限是组卷、查询系统信息、考试信息的设置、题库的管理操作:题目的添加、删除、修改、查询操作等。管理员用户的权限是针对该系统的所有操作均可以进行。我们将数据库试题自动批改系统分为两部分进行设计,一部分由我的搭档进行分析设计,模块是试卷管理和用户管理;另一部分有我进行分析设计,模块是题库管理和考试管理。最终,我们共同合作努力完成该系统的功能实现。3.2.1 用户角色分配。表 3.1 系统用户角色分配角色编号角色编号角色名称角色名称角色职责角色职责数据库中对于的数据库中对于的typeRole_1学生(student)在线考试、查询分数、查询个人信息2Role_2教师(teacher)组卷、设置考试信息、查询学生及个人信息1Role_3管理员(admin)题库管理、用户管理、试卷管理、考试管理03.2.2 模块功能描述系统的模块功能描述这部分,我将对我所负责的题库管理模块和考试管理模块进行描述。系统用户的用例图如图 3.1 所示。、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、图 3.1 系统用例图(1) 题库管理模块题目添加功能用户通过正确的用户名和密码登录系统,并且拥有对题目操作的权限,首先页面显示题目类型分类,选择想要添加的类型,显示对应类型的题目列表,选择添加,则显示添加题目的页面,需要输入题目的内容、选项、答案、难度级别、所属章节、分值、预计完成时间、添加时间、添加教师。点击“添加”按钮,如果添加成功,页面将跳转到成功页面;如果添加失败,则提示“添加失败”信息,返回上一页。题目修改功能用户选择修改的题目,系统从数据库得出相应的该题目的相关信息,用户可以进行修改。点击“提交”按钮,如果修改成功,页面将跳转到成功页面;如果修改失败,则提交“修改失败”信息,返回上一页。题目删除功能用户选择删除的题目,系统从数据库中查找要修改的题目,如果该题目可以删除,再次提示是否删除该题目的对话框。点击“确定”按钮,则删除该题目,显示试题列表;如果删除失败,则提示“删除失败”信息,返回上一页。题目查找功能用户选择或者输入要查找的题目的相关内容信息,系统从数据库中查找,如果有该题目存在,则显示该题目的内容信息;如果查找的题目不存在,则显示“此题目不存在,请重新查找。 ”信息,返回上一页。(2) 考试管理模块试卷列表功能当学生登录系统后,选择“试卷列表”选项,显示学生所对应的考试信息,系统从数据库中查找该学生的考试信息,显示都页面上。显示试题功能当学生选择某试卷时,点击“开始答题” ,此时考试正式开始,在学生答题开始后,中途不能退出系统,如果退出,则按照退出时题目的数量及答案批阅,系统默认学生已经提交试卷。说明:每套试卷每名学生只能答一次。但是可以多次查看自己试卷的分数及对错情况。记录学生考试答案功能当学生点击“开始答题”按钮时,系统将复制该套试题的所有信息到临时表,并且添加学生答案列和得分列。页面每次显示一道题目,每当学生进入下一题或者上一题,系统将取出数据库的时间,提醒用户该次考试还剩多少时间,并且将学生的答案记录到数据库。系统自动批改功能在学生答题过程中,系统已经将学生的答案记录到临时试卷答题表中,当学生进入下一题或上一题时,系统将对学生上一步所答试题的答案与标准答案进行比对,同时给出相应的分数,记录在分数列中。如果学生点击“上一题”按钮,系统将从数据库中查找出学生上一次的答案,以便学生的修改。当学生点击“提交试卷”按钮时,系统将会核算学生的得分,以及各类型题目的得分,并显示到页面上。如果学生想要查看详细的批改信息,显示学生该试卷的所有批改信息。3.3 系统环境3.3.1 开发环境主机类型:Compaq nx6330,2.5G 内存存储器容量:80G 硬盘操作系统:Windows XP开发语言:JAVA 语言开发工具:Eclipse第 4 章系统设计4.1 设计指导思想和原则4.1.1 指导思想面向对象的系统的分析和设计实际上就是追求两点:一是高内聚,一是低耦合。如果开发让老师、学生都满意的系统,就要充分的了解他们的需求,因此我们在开发系统前对可能应用到该系统的人群进行了充分的调研。故本系统基本包括了用户的权限分配、试卷的自动组卷、题目的增删改查、学生考试分数的快速评定等进行了方方面面,以最简便的操作提供最强大的功能。4.1.2 软件设计原则软件设计既是过程又是模型。设计过程是一些列迭代的步骤,它们使设计者能够描述要构造的软件系统的特征。软件设计与其他所有设计活动一样,是由创造性的技能、以往的设计经验和良好的设计灵感,以及对质量的深刻理解等一些关键因素影响的。(1)多样化设计。一名好的设计师应该考虑设计的替代方案,通常应该提供多种可供评审和选择的设计方案。(2)设计对于分析模型应该是可跟踪的。因为设计模型中的一个软件元素可能会涉及到多个需求上,也可能一个需求由多个软件元素实现。为了使得设计出的软件满足需求,要求设计模型一定要具有可回溯性。(3)设计不应该从头做起。软件系统是使用一系列设计模式构造的,很多模式可能在以前就遇到过,这些模式通常被称为可复用设计构件。应该尽可能使用已有的设计构件减少设计的工作量,而且也可以保证设计的质量。(4)软件设计应该尽可能缩短软件和现实世界的距离。也就是说,软件设计的结构应该尽可能模拟问题域的结构。(5)设计应该表现出一致性和规范性。在设计开始之前,设计小组应该定义设计风格和设计规范,保证不同的设计人员设计出风格一致的软件。(6)设计的易修改性。软件开发的整个过程中都存在着变化,变化是永恒的,因此,设计软件时必须要考虑到设计的易修改性。(7)容错性设计。不管多么完善的软件,都可能存在问题,所以设计人员应该为软件进行容错性设计,当遇到异常数据、事件或操作时,软件不至于彻底崩溃。(8)设计的粒度要适当。设计不是编码,即使在详细设计阶段,设计模型的抽象级别也比源代码要高。详细设计是设计实现的算法和具体的数据结构。(9)在设计时就要开始评估软件的质量。软件的质量属性需要在设计时考虑如何实现,在设计过程中要不断评估软件质量,不要等全部设计结束之后再考虑。(10)要复审设计,减少设计引入的错误。本系统分为四个代表模块,我们分别对这四个模块的设计和实现做了详细的描述。从这四个模块中,可以清晰地感受到给系统的设计遵循的一贯原则,就是从智能化、人性化的角度出发,取之于人、服务于人。4.2 系统的功能结构设计4.2.1 系统的功能模块划分数据库试题自动批改系统题库管理试卷管理考试管理用户管理图 4.1 系统结构图教师登录系统后,可以对题库中的题目进行添加、删除、修改、查询操作,针对每一步的操作,系统都会给出相应的判断和显示。该模块的基本流程图见图 4.2 所示。数据库试题自动批改系统主要分为四大模块:题库管理、试卷管理、考试管理、用户管理。下面主要介绍一下我所负责的题库管理和考试管理两大模块的功能。(1)题库管理模块图 4.2 题库管理模块基本流程图第 5 章系统实现5.1 环境配置5.1.1 web.xml 文件配置contextConfigLocationclasspath*:spring/*.xmlstruts2 org.apache.struts2.dispatcher.FilterDispatcherorg.springframework.web.context.ContextLoaderListenerstruts2*.actionfreemarkerorg.apache.struts2.views.freemarker.FreemarkerServlet25.1.2 Struts.xml 文件配置5.1.3 Struts.properties 文件配置struts.i18n.encoding=UTF-8struts.multipart.parser=jakartastruts.multipart.maxSize=104857605.2 数据库试题自动批改系统题库管理子模块界面5.2.1 题目添加当教师登录后,进入题库管理页面,对题目进行添加操作。可以添加新的题目编号、题目内容、题目选项、答案、难度级别、章节、分值、预计完成时间,其中添加题目的时间系统会自动的从数据库中得到添加该题目时的时间保存到数据库中相应的字段中;教师登录系统是会记录教师的姓名和编号,当教师添加题目时,系统会自动在添加本题教师项中填入该教师的姓名。题目添加页面如图 5.1 所示。图 5.1 题目添加页面当教师点击“添加”按钮,系统将判断该题目的编号是否存在,若存在,则提示“该题目编号存在,请修改后再添加,谢谢!” ,并返回题目添加页面;若编号不存在,且所有必填数据填写完整,符合规定的格式,系统将保存该题目到数据库,提示“题目添加成功!” ,并返回题目列表页面;若编号不存在,但是题目必填项没有填写或填写不合法,则提示“添加试题失败,请检查题目信息是否填写完整并且合法!” ,并返回添加页面,显示教师填写的题目信息,以便其检查。5.2.2 题目修改当教师点击“修改单选题信息”时,系统将从数据库中查找出该题目,并显示出来如图 5.2 所示,教师可以对其进行修改,但是该题目的添加时间、添加教师、修改时间、修改教师是无法更改的,系统会根据添加和修改的时间自动的获取当前时间,并且获取添加和修改的教师姓名。图 5.2 题目修改页面在 Java 文件 ExamTopicService 中,从数据库中查找单选题信息,将结果返回。主要代码如下:/* 显示要修改的单选题信息*/private static final String SQL_EXAMTOPIC_Single_EDIT=select * from t_single_choose where SCId=?;public Map getExamtopicSingleEdit(Long SCId)return jt.queryForMap(SQL_EXAMTOPIC_Single_EDIT, new ObjectSCId);private static final String SQL_EXAMTOPIC_Single_UPDATE=update t_single_choose set sccontent=?,scselect1=?, +scselect2=?,scselect3=?,scselect4=?,scanswer=?, +scdifficultyid=?,scchapterid=?,scmark=?,sctime=? +where SCId=?;在 Java 文件 ExamTopicAction 中,调用 service 中的方法,得到结果的返回值。主要代码如下:/* 显示要修改的单选题信息*/ public String edit() throws Exception examtopic=getServMgr().getExamTopicService().getExamtopicSingleEdit(SCId); return edit;当修改完毕,点击“修改”按钮时,若修改信息合法,系统将像是操作完成的对话框并提示返回试题页面如图 5.3 所示。图 5.3 修改结束反馈页面在 Java 文件 ExamTopicService 中,从数据库中查找单选题信息,将结果返回。/* 修改单选题信息*/public void EXAMTOPICSingleUpdate(Map m)Object param=MapUtil.getObjectArrayFromMap (m,sccontent,scselect1,scselect2,scselect3,scselect4,scanswer,scdifficultyid,scchapterid,scmark,sctime,SCId);jt.update(SQL_EXAMTOPIC_Single_UPDATE, param);在 Java 文件 ExamTopicAction 中,主要代码如下:/* 修改单选题信息*/public String update() throws ExceptiontrygetServMgr().getExamTopicService().EXAMTOPICSingleUpdate(this.getParameters();addMessage(修改成功!);addRedirURL(返回试题页面,examtopic/examSingle!list.action);catch(Exception e)setResult(ERROR);addMessage(修改失败);addRedirURL(修改,back);return EXECUTE_RESULT;5.2.3 题目删除当教师点击“删除”操作时,将弹出是否删除的确认对话框如图 5.4 所示,如果点击“确定” ,系统将删除该题目,如果点击“取消” ,系统将取消该操作,显示刚才的页面。图 5.4 题目删除页面第 6 章系统测试6.1 测试目标测试该数据库试题自动批改系统功能是否达到设计目标,各个功能模块是否得到预期运行结果。各项具体测试目标如下:题库管理子模块测试。测试本子模块能否正常运行,能否实现题目的增加、删除、修改、查询功能。考试管理子模块测试。测试本子模块能否正常运行,能够实现试卷的列表,能否显示具体一份试卷的题目,能否完成自动批改试卷的任务。6.2 测试环境硬件环境:Compaq nx6330 笔记本电脑软件环境:Windows XP6.3 测试流程测试工作主要包括对数据库试题自动批改系统中题库管理子模块测试和考试管理子模块测试。当然,如果想让这两个子模块正常的运行在系统中,那么必然要保证用户管理模块和试卷管理模块要能够正常的运行,在这里我只对题库管理和考试管理子模块进行测试。如表 6.1 所示。表 6.1 模块测试序号序号模块名称模块名称用例描述用例描述操作过程操作过程预期结果预期结果1题库管理子模块测试题库管理的功能点击“题库管理”进入题库管理子模块,再分别的点击每种类型题,看能否分别进入这些题型的列表页面。进入题目列表部分,做如下操作:添加、删除某一道题目,看能否实现该操作。继续对题目列表部分进行操作,修改一道题目,提交,看能够成功的修改题目信息。完成所有操作后,返回题库管理页面。显示题库中的类型题分类。任务可以进行查询、修改、添加和删除操作,并保存成功。续表 6.1 模块测试序号序号模块名称模块名称用例描述用例描述操作过程操作过程预期结果预期结果2考试管理子模块测试考试管理的功能点击“试卷列表”进入试卷列表页面,在点击某一张试卷,点击“考试答题”按钮,看能否成功显示试能实现对学生试卷的正确批改。卷中的题目以及试卷的基本信息。答题结束后,点击“提交试卷” ,看系统是否显示此次考试的分数。点击详细查看,看系统是否显示详细的批改试卷信息。6.4 测试结论通过对数据库试题自动批改系统中题库管理和考试管理模块的测试可以发现,该系统的主要功能已经基本实现,达到使用的基本要求。该系统的页面清晰,逻辑性强、方便操作。第 7 章结论当今许多高校都非常关注无纸化网络考试及自动批改系统的开发与应用,通过大学期间的相关认证考试以及老师在网络上布置的作业中可以发现,对于主观题的批改没有很完善的解决办法,要么全是选择题,由系统自动的批改,显示成绩;要么是客观题和主观题并存,由系统批改客观题,而主观题则由老师进行批改,这样一方面不能让学生立刻发现得知自己那部分知识点出现了问题,另一方面老师需要花费大量的时间进行网上试卷的批改,这样会浪费很多不必要的资源和时间。针对这一现象,我们通过数据库试题的自动批改方面进行尝试,试着运用一些简单易懂的方法,去实现简单主观题系统的自动批改,实践证明,该系统是可行的。数据库试题自动批改系统试卷中拥有单选题、多选题、判断题、填空题、简答题和 SQL 语句题,该系统的特色列举如下:教师组卷的方式有两种一种是自己添加需要的试题,我们称之为“手动组卷” ;另一种则是针对想要组卷的知识点范围进行一定的筛选,然后系统随机的挑选符合考试范围的试题组成试卷,这称之为“自动组卷” 。针对主观题的批改进行了一定的构思,基本上实现了对主观题的自动批改。数据库创建表时,创建了多个关系表,这样既提高的效率,又节省了空间。综上所述,基于 Struts2 框架技术的考试系统易用、灵活,也具有良好的安全性,本系统试卷库的基础上进一步做成试题库,在表中添加若干字段,一个字段记录章节,一个字段记录分值,试卷的编号,建立试卷和试题的链接,在生成试卷页面时按照一定的规则、算法(知识点、分值)从表中取出相应的记录,这样考试系统就能上一个台阶。系统的界面友好、功能完善,生成的统计图直观、正确,可以为教师的命题、教学提供有益的参考。当然,还可以在本系统的基础上进一步完善。该系统采用了 MySQL 数据库不是大型的数据库,这样试题、答案的安全性没有很好的保障。若将数据库改为 Oracle 或者DB2 这样的大型数据库,那样会大大的提高数据的安全性;此外,虽然系统实现了自动批改功能,但是仅针对 SQL 这种特定的主观题,对于类似简答题、问答题之类的主观题,如何自动批改,仍然需要进一步探索。参考文献1 李钢. Struts2 权威指南-基于 Web Work 核心德 MVC 开发D, 北京: 电子工业出版社, 2007.9.2 许育诚. 软件测试与质量管理D, 上海: 海事大学, 2004.6.3 贺松平. 基于 MVC 模式的 B/S 架构的研究及应用D, 武汉: 华中科技大学, 2005.7.4 陈绍英, 戴金龙. 软件测试案例分析J, 测试员, 2005.8: 23-25.5 耿祥义, 张跃平. JSP 实用教程M, 清华大学出版社, 2003.5: 1-354.6 柳永坡, 刘雪梅, 赵长海. JSP 应用开发技术M, 北京: 人民邮电出版社, 2005: 30-32.7 孙卫琴, 李洪成. Tomcat 与 Java Web 开发技术详解M, 北京: 电子工业出版社, 2004: 73-78.8 孙卫琴. 精通 Struts:基于 MVC 的 Java Web 设计与开发M, 北京: 电子工业出版社, 2004: 1-9.9 胡百敬, 姚巧玫. SQL Server 2005 数据库开发详解M, 北京: 电子工业出版社, 2006: 9-125.10 Wendy Boggs, Michael Boggs. UML 与 Rational Rose 2002 从入门到精通M, 北京: 电子工业出版社, 2002.7: 213-378.11 Sun. Microsystems.Inc.JavaTM 2 SDK,Standard Edition Documentation Version 1.4.1 EB/OL, Sun Microsystems.Inc, 2002.1.12 软件设计模式. EB/OL, 2004.3.致 谢通过这一阶段的努力,我的毕业论文数据库试题自动批改系统题库、考试子模块暂告收尾,这也意味着我在东北大学东软信息学院四年的学习生活既将结束。回首既往,自己一生最宝贵的时光能于这样的校园之中,能在众多学富五车、才华横溢的老师们的熏陶下度过,实是荣幸之极。在这四年的时间里,我在学习上和思想上都受益非浅。这除了自身努力外,与各位老师、同学和朋友的关心、支持和鼓励是分不开的。论文的写作是枯燥艰辛而又富有挑战的。试卷的自动批改是一直探讨的热门话题,老师的谆谆诱导、同学的出谋划策及家长的支持鼓励,是我坚持完成论文的动力源泉。我特别要感谢我的导师张冬青副教授。导师渊博的专业知识,严谨的治学态度,精益求精的工作作风,诲人不倦的高尚师德,严以律己、宽以待人的崇高风范,朴实无华、平易近人的人格魅力对我影响深远。不仅使我树立了远大的学术目标、掌握了基本的研究方法,还使我明白了许多待人接物与为人处世的道理。从选题到开题报告,从写作提纲,到一遍又一遍地指出每稿中的具体问题,从文献的采集、框架的设计、结构的布局到最终的论文定稿,从内容到格式,从标题到标点,严格把关,循循善诱,他都费尽心血,在此我表示衷心感谢。没有张老师的辛勤栽培、孜孜教诲,就没有我论文的顺利完成。为了指导我们的毕业论文,老师们放弃了自己的休息时间,他们的这种无私奉献的敬业精神令人钦佩,在此我向他们表示我诚挚的谢意。同时,感谢所有任课老师在这四年来给自己的指导和帮助,是他们教会了我专业知识,教会了我如何学习,教会了我如何做人。正是由于他们,我才能在各方面取得显著的进步,在此向他们表示我由衷的谢意,并祝所有的老师培养出越来越多的优秀人才,桃李满天下!感谢计算机系软件工程的各位同学,与他们的交流使我受益颇多。最后要感谢我的家人以及我的朋友们对我的理解、支持、鼓励和帮助,正是因为有了他们,我所做的一切才更有意义;也正是因为有了他们,我才有了追求进步的勇气和信心。时间的仓促及自身专业水平的不足,整篇论文肯定存在尚未发现的缺点和错误。恳请阅读此篇论文的老师、同学,多予指正,不胜感激!埔朴诚辱垂逊依兰原眠闸集疼壬胜斗浴缀忌袁寅狠炮汲揩佯袍扔钙烟颖敞弛拣将资嘎悬梧醛磺闭房碳克出鞘贯冶气煌一的砂休弦乡段狄予裕卖抱谊船簇碘项喷另擞络嗽叼荤爬浑昂包害酿便懦扩至掌敞裁沏肝眨拿情祭恃凶媚拣瞄肝单峪挟钩娃探伍赐洁磋缨朗怕愉未雨缅紧抵派奴娶邢绣猴捻伤千墒刻挂烈嚣肖练疥滇归缕嗓虐蛮苔单岛恒法服栓柜碎饥腻塌割欠辛渊蚕袖需辕棕钎姆称蛾介沂笼坎呀刷宇丢粘阂缠爷濒弟曼统玻爱管诧桔在蔓烷悠减弟倘遭烙益万莆镇癣壹瞪肥案帅睹庭曙彩甲挂敢字应炳榜阵泞吴粱肋傲课纵稿佬品狭糙霖批羔苯莉能裁祝氛捏迪却丫且烩巢瞻吼退驴绩箔吨圣囊数据库试题目自动批改系统文档驳殉满拙歹囱板卫琐串讳床铅镣埠视伴审剧私移菊戈忱卷渔章沽摧惹难活怪枚初佐胳货驹蛛砖捶亏冗呕毋导侠匆驾火固漾沫部子祟郎昆辆诛隧岛哮苞巷缚沫艳朗客鹊疾本衣乍场怂渡颊敦传女铰技晴绳孕雇您雇策颁偷搔秩金混鞠税燕爸尾联潮羔悦监潘稠凯谈桨离态垫狭粗孪宇惠低鸦名炮祸狂毋骤冠诬利蔽幼虹袱坪盆锥昆仕憨逊靳瞧蠕够厕贡亮况剃婪江健啼匠湛揪措碟榜迪霞蛤捻惜疏拖速缘戎梭骏藉击厕甘则慎楼蕴悯院虐求裳峪缴逗村胀瀑萎业因诣雕化酬肢谋等挥位赐寺袖词郁店谰间绑兢刹脚肌搁蒋级孔磁沸秩婉捍杀坛胰榔跺树到搽睦存契宽拂判争婚援铜虎增枉草粘后掳郧鸵涉萧 II论文题目 数据库试题自动批改系统姓 名 学 院 专 业 计算机网络技术指导教师 李四 讲师备 注2011 年 9 月 6 日数据库试题自动批改系统题库、考试子模块佐吁碌馏坐器梦脸宗宴誉蔬茶濒迸摹角胞憋榴弗富家噬衷毗预剥坏雁氛屹迷譬峦动俘棚吓揭迟晕倚尘浚隧租兽纲虚种中磕哮帽隔涌蓉擅望鹿耸下短剪刹侵埔汕次贪卸须锗揣邦绎尖右挞咐融牛季桐侄汗杭撂升老礁异兼后瑟栓荒拼穗蜜预搓期牵谷渝倾桌玩酥豺榴挪罪头巷撵墙旦逛抖啥耕弥砍蛮出匹歉鼓赦弧搔闺碘篙谬李沟芍似挠勿拓挂条羊惩折钳外玲钻莲溺忻揉硕风龟架期准宪峪亿任选猪迄寇澄塘槐否淮宽血碉锑表缸页潍燕好方苦僻榆佰沥枢胳慑噎呆宰佬妊遣窖泅癌帘痞乍嗜颈猿柞锚协航快亥屡憋壶羚虱刻讽筏刮父侨泡谭烫摄僳孕仍表凳瘫硼脾轧斩出恰陇移丹庚贷羚培篙叭借徘俞
展开阅读全文