软件开发毕业设计论文.docx
《软件开发毕业设计论文.docx》由会员分享,可在线阅读,更多相关《软件开发毕业设计论文.docx(27页珍藏版)》请在冰豆网上搜索。
![软件开发毕业设计论文.docx](https://file1.bdocx.com/fileroot1/2023-2/4/a1c0fae5-6938-499d-a5e4-ad1e5005eef3/a1c0fae5-6938-499d-a5e4-ad1e5005eef31.gif)
软件开发毕业设计论文
三门峡职业技术学院
信息传媒学院
毕
业
设
计
论
文
毕业设计题目:
基于MVC在线考试系统的设计与开发
专业:
年级:
学号:
姓名:
指导老师:
在线
作为对传统考试方式的改革,网络化考试是近年来研究的一个热点课题。
考试是网络化考试系统的重要组成部分,本论文的主要工作是设计并实现一个在线考试系统。
利用在线考试系统,试卷动态生成,使用计算机自动判卷,大大提高阅卷效率。
实现对试题的随机选题,对考生答案自动评分等功能
关键词:
在线考试,题库,试卷,动态生成
ABSTRACT
Asthereformoftraditionaltest,theexaminationsysteminnetworkisahotpointstudyinrecentyearstopic.Theonlineexaminationsystemistheimportantpartoftheexaminesysteminnetwork.Themainworkofthisthesisisdesignofanon-lineexaminationsystem.Withonlineexaminationsystem,testpapercanbeproduceddynamicallyandcanbecorrectedbycomputerefficiently.Thesystemprovidesgoodsecurityinthefashionofthree-tierauthorizedsystemincludingadministrator,teacherandstudent.
KeyWords:
SMTP:
onlineexamination,questiondatabase,testpapers,produceddynamically
摘要II
ABSTRAC.TI.I.I..
第一章前言5
1.1研究背景5
1.2研究问题的提出5
1.3研究意义6
1.4研究思路与研究方法7
1.5论文框架8
第二章相关研究及文献分析10
2.1传统考试的概述10
2.2在线考试系统的概述10
2.3国内外相关研究介绍1..1.
2.4研究的“发展趋势”12
2.5关键技术12
2.5.1Web的结构和工作原理12
2.5.2MVC概述13
第三章系统设计14
3.1系统需求分析14
3.1.1系统可行性分析14
3.1.2系统功能需求分析14
3.2系统总体设计16
3.2.1系统的体系结构16
3.3系统详细设计17
3.3.1组卷模块17
3.3.2数据表设计17
第四章系统实现19
4.1开发环境19
4.2界面制作19
4.3程序编码21
4.3.1随机选题21
4.3.2人工评卷21
4.3.3考试计时22
4.4系统测试24
4.4.1测试环境24
4.4.2测试过程24
4.4.3测试结果25
第五章研究结论与未来研究27
5.1研究内容的总结27
5.2主要创新点27
结论28
参考文献29
致谢30
第一章前言
随着Internet/lntranet技术的飞速发展,基于Web的开发技术得到了极大的应用。
为充分利用校园网现有的网络资源,本文开发了一个基于MVC模式的在线考试系统。
系统有效解决了传统考试方式所带来的弊端,将传统的书面笔试的出试卷、考试、评阅等多个环节整合成一个集动态出卷、在线考试、自动评阅及成绩查询等多功能为一体的无纸化考试系统。
可灵活利用网络完成考生各阶段考试,同时也大大提高了教学与考试质量,减轻教师负担,提高工作效率。
1.1研究背景随着计算机技术的发展和互联网时代的到来,人们已经进入了信息时代,也有人称之为数字化时代。
在数字化的网络环境下,学生希望得到个性化的满足,根据自己的情况进行学习,同时希望能够得到科学的评价;老师希望有效改进现有的考试模式,提高考试的效率;教育机构也希望给网上的学生提供更全面灵活的服务,同时希望全面准确地对学生进行跟踪和评价。
在线考试系统正式迎合这一市场需求而开发的,它旨在探索一种以互联网为基础的考试模式。
通过这种新的模式,为学校创造一种新的考试环境,使考务管理突破时空限制,提高考试工作效率和标准化水平,使学校管理者、教师和学生可以随时、随地通过网络完成考试。
1.2研究问题的提出随着网络技术的飞速发展,现在很多国外的大学和社会其他部门都已经开设了远程教育,通过计算机网络实现异地教育和培训。
现在,计算机硬件技术的发展已经达到了相当高的水平。
但是,远程教育软件的开发目前还处于起步阶段,随着这项技术的不断深入发展,就要求有更好、更完善的软件系统应用到远程教育当中去,这就给软件设计人员提出了更高的设计要求。
远程教育包括很多环节,例如教学系统、答疑系统和考试系统等等。
其中很重要的一个环节就是在线考试系统,同时它也是最难实现的环节。
在我国,虽然远程教育已经蓬勃地发展起来,但是目前学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。
显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。
随着计算机应用的迅猛发展,网络应用不断扩大,如远程教育和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。
1.3研究意义
考试是教学中最后也是一个重要的环节,可以帮助教师了解学生对知识的掌握情况,同时也是对自己教学方法的一种检测,利于改进教学。
但是这又受到考试本身的各种因素的影响,比如试卷的难易程度、评分标准和考试作弊等。
因此在21世纪,推进教育改革的同时,考试改革也是研究的一个重要课题。
传统的考试需要经过很多复杂的步骤才能进行。
步骤如下:
组织教师命题;印刷大量试卷;安排考场、考试时间、监考老师等;进行考试,统计成绩等。
这整个过程存在了大量的问题。
第一,科学性。
试题由部分教师完成,所以出题老师一定对难度和内容的把握非常小心,否则达不到预期的效果。
并且每套试题涵盖的知识点固定,造成了对知识考察不全面。
第二,保密性。
由于从出题到印刷一直到最后的考试,很多人参与,导致保密工作难度较大。
第三,公平性。
考生考试时所考内容相同,杜绝作弊是考试的一个普遍的难题;考试结束后人工评卷可能造成评分标准较大偏差,从而影响考试的公平性。
第四,灵活性。
时间地点都是经过统一安排,所以如果考生耽误考试就要参考补考。
传统的考试从出题、组卷、印刷,到试卷分发、答题、收卷,再到判卷、公布成绩,整个过程都需要人工参与,周期长,工作量大,容易出错,还要有适当的保密工作,使得整个考试的成本较大。
所以组织多人参考的考试相当麻烦。
当前网络迅速普及,以Internet技术为代表的信息技术为人们创造了一种新的不受地域、时间和计算机约束的信息交流、共享和协作方式。
21世纪是信息化的社会,数据信息应用已进入大规模服务阶段。
考试作为最直接体现信息化社会中人们的知识水平的一种方式,是目前使用最为广泛的形式之一。
实现无纸化、网络化、自动化的在线考试系统,具有深远的现实意义和实用价值。
当前,信息技术的发展突飞猛进,特别是网络技术的兴起,使得考试信息化、自动化成为可能。
三层结构的出现为出题、组卷和答题提供了良好的系统架构,从而实现统一管理题库、动态组卷、自动判卷,极大地节省了人力、物力,提高了效率[6]。
本研究是对在线考试系统进行设计并实现。
这个题目已经有人在研究,但是现在存在的考试系统,都存在一定的缺陷,没有一个可靠的、实用的在线考试系统。
所以本研究具有挑战性和较强的实用性。
1.4研究思路与研究方法
论文采用了总体规划、分步实施、软件技术与网络技术相结合,管理模式研究和技术开发相结合,研究与应用相结合的技术路线。
首先通过分析在线考试的实际需求,设计考试的组织与管理模式;分析并设计用户登录、考试科目、专业课程等多约束条件下与考试相关的其他信息的关系结构;继而设计考试试卷的组成规则、题型和题量的分布及程序实现方法,分析计算机答卷的技术要求和阅卷评分的准确性要求,并设计解决方案:
设计考试系统的模式结构、功能、安全性和网络适应性等;最后,制定系统应用规范。
(1)题型和题量的设计
在基于互联网的在线考试系统中,题库中的题型设计是一个重要因素,决定了考试是否能够产生科学、合理的测试效果。
本系统处理的题型有:
单项选择题、多项选择题,并设置有标准答案、试题分值、难度级别,满足考试抽题及自动阅卷的参数要求。
同时,通过录入充足的题量,以满足考试抽题的随机选择空间。
(2)计算机答卷的技术要求
考生试卷中所有试题均为单项选择题、多项选择题。
考生答题时,使用鼠标选择各题目中认为正确的选项,单项选择题仅能够选择选中一个答案,多项选择题能够选择两个以上答案。
显然,这样的操作技能,针对社会中具有中、高级文化程度的人员来说,不存在任何障碍。
因此考生利用计算机进行考试答卷是完全可行的。
(3)阅卷评分的准确性保障在在线考试系统中,对于客观题型的阅卷通过将考生答案与试题标准答案进行字符串比较的方式来判别,保证了阅卷的准确性,对于主观题型的阅卷通过教师的人工阅卷评分,评分可通过累计正确答题的试题分值来获得,算法简单、快
速、准确,程序编制容易
(4)系统开发及应用模式
基于互联网的在线考试,充分利用Internet,采C/S式的数据库体系,仅需下载客户端软件,维护简单。
系统开发周期短,应用程序页面简单、轻量,具有很强的伸缩性,对客户端硬件配置要求极低,易于达到要求,可以选择不同厂家的设备和服务。
系统资源的冗余度小,部署方便,容易维护且可扩充性良好。
(5)选择合适的开发工具
开发工具的选择对一个系统来说很重要,既决定了开发人员的开发效率,也对页面的美观和操控性起着重要作用,同时也对系统的易维护性和扩充性有着重要影响。
(6)建立多客户环境下数据库应用模式
以互联网技术为基础的C/S正日益显现其先进性,当今很多基于大型数据库的应用系统正在采用这种全新的技术模式。
C/S式由客户端、服务器组成。
在这种模式下,客户端使用一个通用的界面,了形形色色的各种应用软件,用户的所有操作都是通过浏览器进行的。
该结构的核心部分是客户端,它负责接受远程(或本地)的请求,然后根据查询的条件到数据库服务器获取相关数据,再将结果和种页面描述语言,传送回提出查询请求的客户端,由后者与数据库联系完成这些工作。
1.5论文框架
本文主要分析了现有的在线考试系统的优缺点,并针对这些缺点,我们进行了一些改进。
提供了一个人性化,高交互性与高响应性的在线考试系统。
本文各章节的主要内容如下:
第一章绪论。
主要介绍了本文的研究背景,概述了本文的内容安排和研究目标,并给出了研究意义,研究思路与研究方法。
第二章相关研究及文献分析。
本章主要介绍传统考试及在线考试系统概述、国内外研究现状、研究的“发展趋势”及关键技术。
第三章系统设计。
介绍了系统的需求分析、总体设计和详细设计。
第四章系统实现。
本章介绍了系统的开发环境配置、界面制作、数据表实
现、程序编码、系统测试和系统评估
第五章研究结论与未来研究。
介绍了研究内容的总结、主要创新点、存在的不足点及今后的研究方向。
第二章相关研究及文献分析
2.1传统考试的概述
现今社会对劳动者和技术人员的知识和能力的要求越来越高。
考试作为衡量人们能力的重要手段,并已深入到社会的各个方面[9]。
但是目前学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次完整的考试至少要经历教师出卷、试卷印刷、学生考试、教师改卷、成绩统计等5个步骤。
传统纸质考试方法是:
任课教师在课程结束前两周,按照考核大纲提交两套试卷(A、B卷)交给系教务员,课程负责人选择印刷的试卷(A卷或B卷)、教务员安排考试时间和地点、学生考试、任课教师领取试卷评分、统分、再将成绩上传到网上的教务系统、学生查询成绩。
此种方法存在以下几方面的弊端:
(1)试题单一,容易泄题。
(2)试卷一样,易作弊。
(3)误判、漏判、统错分。
(4)成绩上网,不易操作。
(5)纸质考试成本高,也不方便管理[10]。
目前随着考试类型的不断增加和考试要求的不断提高,组织考试的工作量越来越大;管理人员和教师在组织考试的过程中需要花费较多的时间和精力,人为错误率也较高;另外,当考生数量比较大时,对学生成绩统计及分析十分烦琐且容易出错;而且,成绩公布之前学生为查看成绩给教师和教务部门带来的麻烦也不少,考试管理工作效率逐渐降低。
可以说,传统的考试方式已经不能适应目前考试的需要。
2.2在线考试系统的概述
Internet技术的发展使得考试的手段和媒介发生着变化。
从传统的笔试到计算机辅助考试,并发展到基于各种技术的在线考试[11]。
相比传统的考试方式,在线考试系统的好处主要表现在以下几个方面:
(1)题库抽题,随机组卷。
可以动态地管理各种考试信息,只要准备好足够大的题库,就可以按照要求自动生成各种试卷。
从题库中抽题随机组卷,所有人都不知道试卷的内容,只有考试的时候才知道,这样能有效防止教师在复习的时
候“勾重点”,真正的实现教考分离,学生必须全面掌握知识,才能通过考试。
(2)考试时间和地点灵活,考生可以在规定时间段内的任意时间参加考试;并且基于Web技术的在线考试系统可以借助于遍布全球的Internet进行,因此考试既可以在本地进行,也可以在异地进行,大大拓展了考试的灵活性。
(3)在线考试有利于激发考生的学习兴趣,有效地减轻教师和考核部门的工作负担,提高各部门的工作效率。
在线考试的最大特点是阅卷快,系统可以在考
试结束时当场给出考试结果。
计算机判卷,避免人为错误,又节约了成本。
考试完成后学生马上可以查看成绩和试卷详细情况,及时知道错在什么地方,了解自己不足之处。
这一切都是由电脑完成,减轻了教师的工作量,也有效的避免了人为因素,体现了考试的公平性。
(4)提高教学质量。
任课教师要查看学生考试情况,学生试题成绩都可直观的反应出来,这样老师就能很好地掌握学生对本门课程的学习情况,以便在以后的教学中注意加强相应部分的辅导。
而这一切都是由考试系统完成[10,12]。
(5)能考场监督与容错能力。
学生在考试过程中,若考试机出现故障,可以马上启用考场备用机,而前面已做的试题保存在服务器上,在备用机上接着做。
和传统的纸质考试相比,利用网络资源开发在线考试系统具有明显的优越性,是对传统的考试方式的重要改革,是值得进一步完善后大力推广。
2.3国内外相关研究介绍
网络化在线考试作为网上远程教育的重要组成部分和发展分支,己经在国内外得到蓬勃发展,人们选学课程和考试都是通过网上进行。
特别是Internet业务
的普及,构筑高性能、低成本的计算机网络化在线考试,从技术条件和经济条件上己经成熟。
虽然目前计算机技术以及网络技术都在高速发展,但在诸多场合现在的Web系统仍不能完全满足用户的需求。
比如:
WebGIS领域的实时查图功能,这不仅需要足够的带宽支持,而且需要用户有足够的耐心,同时这对服务器也是一个不小的负担。
再如:
大多数在线考试系统往往由于带宽不足或是服务器配置不够,经常出现种种问题。
尤其是各高校在“数字校园”建设中,经常会遇到类似的问题。
网络教育是“数字校园”建设中的重要组成部分,由于校园网的用户众多,网络资源也相当有限,这给网络教育系统的建设带来了一定的困难。
这种问题在校园网内的在线考试系统突显严重,因为在固定的考试时间内,大批的考生要同时在线答题,考试结束时,所有考生要同时向服务器提交试卷结果,这给服务器带了巨大的负担。
因为同时向服务器提交大量的数据,经常致使无法正常提交试卷,造成页面响应超时,甚至造成丢失数据、服务器死机等现象,考生的操作页面此时也是停滞不前,严重影响在线考试的效果[13]。
2.4研究的“发展趋势”
信息技术的发展对教育的影响是巨大的,随着信息技术和网络技术的迅速发展,教育信息化和网络化也将成为必然的趋势。
作为教育评价和衡量学生能力的考试也正经历着无纸化和网络化的飞跃。
网络的开放性和分布性的特点以及基于互联网的巨大计算能力使得考试突破了时间和空间的限制。
基于网络技术的考试系统正成为人们的研究热点之一,其中,基于Web技术的考试系统已成为互联网的重要应用之一[14]。
目前教师采用在线考试系统的还不多见,因为教师个体精力确实有限。
但随着教研组制度的完善和教学交流活动的增加。
对题库的创建将提上议事的日程,在线考试系统将大有用武之地,且能确保考风考纪的根本好转[15]。
在线考试具有动态出题、自动阅卷、成绩分析等优点,不仅大大减轻了教师人工组卷繁琐的的工作量,提高资源利用率,其运行过程中,组卷速度较快,较少出现重复的现象,而且有利于教考分离的实施,符合目前教学改革的目标。
更节省纸张资源,增强环保意识。
因此,在线考试系统具有潜在的巨大商机和研究价值,是未来数字化校园系统研究的热点内容[16]。
2.5关键技术
2.5.1Web的结构和工作原理
(1)Web定义
Web是WWW(WorldWideWeb)的简称,又称万维网。
简单的说,Web是建立在客户机/服务器(Client/Server)模型之上,以HTML和HTTP协议为基础,能够提供面向各种Internet服务的、一致的用户界面的一种信息服务系统[17]
Web的结构主要分为两部分,一为服务器端(Server),也就是信息的提供者,二为客户端(Client),也就是信息的接受者。
在客户机/服务器体系结构中,通常比较容易理解为两端的计算机。
但事实上,“客户机”和“服务器”概念更多的
是指软件,是指两台机器上相应的应用程序[17]0
对于Web系统,客户机上所运行的浏览器程序基本上是标准化的,所以建立客户机/服务器系统的主要任务就落到了服务器端。
Web的体系结构因而可以
称作浏览器/服务器结构,如图2-1所示。
——
啊b客八机
—UFI
屮间件
ifiuLjtni
图2-1Web的体系结构[17]
2.5.2MVC概述
所谓的MVC莫式就是模型-视图-控制器(Model-View-Controller)模式,其结
複型
视團€控制器
构图如下:
从严格意义上来说,MVC模式实际上是结构模式,而不是设计模式.一个架构模式描述软件系统里的基本的结构组织或纲要.它提供一些事先定义好的子系统,指定它们的责任,并给出把它们组织在一起的法则和指南.一个架构模式常常被分解成多个设计模式联合来实现,很显然,MVC就是这样一种架构模式.
第三章系统设计
3.1系统需求分析
3.1.1系统可行性分析
近几年来,随着我国信息产业的飞速发展,计算机的开发应用已渗透到各个领域,而且日趋普及。
在现代的测试与考试中计算机也得到广泛的应用。
在线考试系统的开发对考务工作效率有很好的提高。
(1)技术可行性
基于客户端的在线考试,关键技术在于客户端界面显示和管理,即从数据表中取得相应的试卷数据,并收集用户输入数据,能够对考试过程进行控制。
采用MV模式开发,服务器端和考生界面全部采用C/S模式构建,系统的部署、应用、维护更加方便。
(2)经济可行性
软件开发周期一般为1个月,开发所需硬件软件设施目前大多数PC机系统能够承担,开发费用不高。
目前,大多数单位都拥有高性能微机和局域网,该软件系统的安装、部署、运行和维护,都不会给单位增加太高的费用。
所以该系统在经济上是可行的。
(3)操作可行性
目前,大多数PC机和局域网能够运行该系统,该系统的安装、调试、运行不会改变原计算机系统的设置和网络的布局,并且大多数用户几乎不用做任何培训都能够方便的操作系统。
因此从操作可行性的角度来衡量,本系统的开发方案也是可行的。
综合以上三个方面的因素,开发在线考试系统是完全可行的。
3.1.2系统功能需求分析
在线考试的概念模型如图3-1所示,要满足以下几方面的功能需求:
ExamScrvice:
实现
(1)考试题型的要求:
试卷中的题型除包括单项选择题、多项选择题、由计算机完成对试题的评分。
(2)满足考试功能的要求:
•试题库管理功能:
通过试题库管理功能建立与维护试题,以便在考试组卷
时进行抽题。
另为需要具有试题分类查询功能。
•考生登录功能:
在正式考试开考前,考生通过计算机登录考试系统,考生登录时需用准考证号码结合自定义的密码进行身份认证,登录后进行考试。
•自定义考试功能:
在每期考试之前,按照待考科目所依据的考试方案,设定考试日期、考试限时、参加考试的专业等项目,从而形成一个逻辑考场。
•随机组卷功能:
在线考试充分利用计算机强大的运算和数据处理能力,依
据试卷生成规则,动态随机组织生成试卷,保证考试的公平竞争原则。
•考试时间控制功能:
每场考试都有时间限制,在考生答卷时需要由计算机自动倒计时,到时间后系统能够自动终止考生答卷,并自动收卷
•计算机阅卷评分功能:
在考试交卷后,计算机能立即依据试题标准答案对考生试卷客观题进行评阅,并根据其正误情况进行计分。
•成绩管理功能:
通过此功能能够对考生成绩进行查询,对考生各个试题进行分数的整合。
3.2系统总体设计
3.2.1系统的体系结构
系统采用的三层结构模型,是新一代分布式计算方案设计的应用软件体系结构。
表示层位于学生工作站上,功能层位于服务器上,数据层位于数据表中。
这种结构有利于系统的负载平衡和系统的维护,同时也保证了信息安全。
在表示层上,它提供一组标准的界面来发布、编辑和接受数据,并保持用户界面的一致性和完整性。
这一层中的客户端代码通过调用功能层所封装的事务处理接口来激活事务。
在系统中用户主要通过客户端进行在线考试。
它将用户层单独列出来,减少了系统的藕合,每层的开发和维护相对来说都比较独立。
功能层集中了系统的事务逻辑处理,它对事务规则和过程进行封装,使得每个单独的对象都有清楚的目的和作用。
功能层构造事务对象的工作可以和构造表示层的事务方案同时进行,而且形成了一组固定的事务对象后,可以说是建立了一个特定的计算环境,以后再开发同一领域的新的事务解决方案时也许直接拿来用就可以了,或者只需要做少量的改动。
构建事务部件的工作是比较复杂的,需要十分彻底地理解用户的问题域,以及用户事务的各个部件是