3系统实现江西农业大学南昌商学院.docx

上传人:b****5 文档编号:30184740 上传时间:2023-08-05 格式:DOCX 页数:49 大小:635.18KB
下载 相关 举报
3系统实现江西农业大学南昌商学院.docx_第1页
第1页 / 共49页
3系统实现江西农业大学南昌商学院.docx_第2页
第2页 / 共49页
3系统实现江西农业大学南昌商学院.docx_第3页
第3页 / 共49页
3系统实现江西农业大学南昌商学院.docx_第4页
第4页 / 共49页
3系统实现江西农业大学南昌商学院.docx_第5页
第5页 / 共49页
点击查看更多>>
下载资源
资源描述

3系统实现江西农业大学南昌商学院.docx

《3系统实现江西农业大学南昌商学院.docx》由会员分享,可在线阅读,更多相关《3系统实现江西农业大学南昌商学院.docx(49页珍藏版)》请在冰豆网上搜索。

3系统实现江西农业大学南昌商学院.docx

3系统实现江西农业大学南昌商学院

单位计科07-1班

学号07020062

江西农业大学南昌商学院本科毕业论文

(计算机科学与技术专业)

在线考试系统

姓名XXX

专业计算机科学与技术

指导教师XXX

江西农业大学南昌商学院

二0一0年十二月

论文独创性声明

本人声明,所呈交的学位论文系在导师指导下独立完成的研究成果。

文中合法应用他人的成果,均已做出明确标注或得到许可。

论文内容未包含法律意义上已属于他人的任何形式的研究成果,也不包含本人已用于其他学位申请的论文或成果。

本文如违反上述声明,愿意承担以下责任后后果:

1.交回学校授予的学士学位;

2.学校可在相关媒体上对本人的行为进行通报;

3.本文按照学校规定的方式,对因不当取得学位给学校造成的名誉损害,进行公开道歉;

4.本人负责因论文成果不实产生的法律纠纷。

 

论文作者签名:

日期:

年月日

摘要

随着教育思想的更新和科学技术的进步,以纸和笔为主要工具的传统考试方式的诸多弊端显露得越来越突出,传统的人工出题、考生考试、人工阅卷、成绩统计评估及试卷分析的考试形式已经不能适应现代考试的需要。

在线考试系统的开发与应用正是在这样的背景下出现的。

利用在线考试系统,能够实现考试自动化、网络化、以减轻管理人员的负担、提高工作效率、提高考试质量,从而使考试趋于公正、客观。

本在线考试系统采用B/S结构模式,基于J2EE平台的多层模型,采用开源框架Struts、Hibernate以及Spring来实现,并在表现层使用jQuery类库和ExtJs框架,使用MySQL数据库。

本系统主要实现课程管理、题库管理、在线制作试卷、试卷管理、试卷自动评分(客观题部分)、自动交卷、考生管理、成绩管理、权限管理、留言板等功能,充分利用计算机科学与技术,改变传统的考试操作方式,实现无纸化考试的模式。

【关键词】在线考试,J2EE,试卷管理,自动评分

Abstract

Withtheeducationalthinkingandscientificandtechnologicalprogressupdatetothetraditionalpenandpaperasthemaintoolforexaminationsrevealedmanyshortcomingsbecomeincreasinglyprominent,thetraditionalmanualoutofquestion,candidatestest,artificialgrading,performanceassessmentandPaperstatisticsAnalysisofthetestformathasbeenunabletomeettheneedsofmodernexaminations.Onlineexaminationsystemdevelopmentandapplicationofitisinthiscontextappears.Useofonlineexaminationsystem,toachievetestonlineautomation,andtoreducemanagementburden,improveefficiency,improvetestquality,sothatthetesttendstofairandobjective.

TheonlineexaminationsystemusingB/Sstructuremode,multi-layermodelbasedonJ2EEplatform,usingopen-sourceframeworkStruts,HibernateandSpringtoimplement,andintheviewlayerusingthejQuerylibraryandtheExtJsframework,usingtheMySQLdatabase.

Thesystemimplementationcoursemanagement,exammanagement,production-linepaper,papermanagement,paperautomaticscores(objectivequestionsinpart),automaticcarryoutanassignment,thecandidatemanagement,performancemanagement,rightsmanagement,messageboardsandotherfunctions,fulluseofcomputerscienceandtechnology,testoperationtochangethetraditionalwaytoachievepaperlessexaminationpattern.

【KeyWords】onlineexamination;J2EE;Papermanagement;Automaticscoring;

 

绪论

随着Internet的迅速发展和广泛普及,网络化教育代表了教育改革的一个发展方向,已经成为现代教育的一个特征,并对教育的发展形成新的推动力。

远程教育成为现代教育技术未来发展的重要方向之一,考试测试作为远程教育的一个子系统也成为一个重要的研究领域。

Internet技术的发展使得考试的技术手段和载体发生了革命性的变化,Internet的开放性、分布性的特点和基于Internet的巨大的计算能力使得考试突破了时间和空间的限制。

与传统考试模式相比,在线考试具有无可比拟的优越性,它可以将传统考试过程中的试卷组织、审定印制、传送收集、登记发放、评判归档各个环节缩小到一至两个环节,几乎屏蔽了所有人工直接干预考试活动的可能性,不但能够节约大量的时日、人力、物力与财力,而且还可以大幅度增加考试成绩的客观性和公正性。

传统的考试方式一般要经过人工出卷、考生考试、人工阅卷等过程。

对于一些课程来说,随着考生数量的增加,教师出卷阅卷的工作量将会越来越大,并且其工作十分烦琐和非常容易出错。

在线考试系统课题产生的背景是当今教育信息化的趋势及我国高校教育信息化系统的建设,目的是充分利用学校现有的计算机软、硬件和网络资源实现无纸化考试以避免传统手工考试的不足。

与传统考试模式相比,网上考试渗入了更多的技术环节,对实现安全性的途径、方法也提出了更高的技术要求。

通过Internet来实现网上考试,是现代教育技术的一个具体实现,具有很重要的现实意义。

可以实现教考分离以及考务工作的全自动化管理,可以有效利用校园网的软硬件资源,使其发挥最大效力,更好的为学校的教学、科研、管理服务,可以大规模的实行考试,实现考试的客观性、公证性,自动化组卷、阅卷可以减轻教师的工作强度。

传统考试要求老师刻试卷、印试卷、安排考试、监考、收集试卷、评改试卷、讲评试卷和分析试卷。

这是一个漫长而复杂的过程,已经越来越不适应现代教学的需要。

在线考试系统是传统考场的延伸,它可以利用网络的无限广阔空间,随时随地的对学生进行考试,加上Web数据库技术的利用,大大简化了传统考试的过程。

1系统概述

1.1开发结构

目前比较流行的两种开发模式分别是C/S结构与B/S结构,本系统采用的是B/S结构。

1.1.1B/S结构

B/S结构(Browser/Server结构)结构即浏览器和服务器结构。

它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。

在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。

这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本。

以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。

它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN,WAN,Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。

特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、速度快、效果优。

1.1.2B/S的优势

目前,软件系统的改进和升级越来越频繁,C/S系统的各部分模块中有一部分改变,就要关联到其它模块的变动,使系统升级成本比较大。

B/S与C/S处理模式相比,大大简化了客户端,B/S结构只需客户端机器通过操作系统内置的浏览器上网即可,而C/S则需要提供软件安装文件,客户端机器必须安装软件才能运行系统。

对于B/S而言,开发、维护等几乎所有工作也都集中在服务器端,当企业对网络应用进行升级时,只需更新服务器端的软件就可以,这减轻了异地用户系统维护与升级的成本。

如果客户端的软件系统升级比较频繁,那么B/S架构的产品优势明显——所有的升级操作只需要针对服务器进行,这对那些点多面广的应用是很有价值的,例如本在线考试系统就需要采用B/S模式,因为其客户端分散,且应用简单,只需要进行简单的浏览和少量信息的录入。

1.2主要应用技术

1.2.1Struts

Struts最早是作为ApacheJakarta项目的组成部分,项目的创立者希望通过对该项目的研究,改进和提高JavaServerPages(JSP)、Servlet、标签库以及面向对象的技术水准。

MVC即Model-View-Controller的缩写,是一种常用的设计模式。

MVC减弱了业务逻辑接口和数据接口之间的耦合,以及让视图层更富于变化。

Struts是MVC的一种实现,它将Servlet和JSP标记(属于J2EE规范)用作实现的一部分。

Struts继承了MVC的各项特性,并根据J2EE的特点,做了相应的变化与扩展。

采用Struts进行开发的好处是系统一定符合MVC设计模式,遵循Struts的规则开发,会将系统的表现层、业务逻辑层和DAO(DataAccessObject)层进行分离,最大限度地降低系统的耦合度。

1.2.2Hibernate

Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。

对象/关系型数据库映射(object/relationalmapping,ORM)这个术语表示一种技术,用来把对象模型表示的对象映射到基于SQL的关系模型数据结构中去。

Hibernate不仅管理Java类到数据库表的映射(包括Java数据类型到SQL数据类型的映射),还提供数据查询和获取数据的方法,可以大幅度减少开发时对人工使用SQL和JDBC处理数据的时间。

Hibernate的目标是对于开发者通常的数据持久化相关的编程任务,解放其中的95%。

对于以数据为中心的程序来说,它们往往只在数据库中使用存储过程来实现商业逻辑,Hibernate可能不是最好的解决方案;对于那些在基于Java的中间层应用中,它们实现面向对象的业务模型和商业逻辑的应用,Hibernate是最有用的,会大大提高开发效率。

在本在线考试系统中,每位考生都有其系别信息及专业信息,若采用传统的面向过程编程,即用SQL来检索数据,则需要编写较为复杂的连接查询语句,语句如下:

SELECTs.name学生姓名,d.dept_name系别,m.major_name专业

FROMt_students

INNERJOINt_departmentd

ONs.department_id=d.id

INNERJOINt_majorm

ONm.department_id=d.id

而采用Hibernate进行正确的对象-关系映射后,获得相同结果的代码仅仅需要一行:

SELECTs.name,s.departmentName,s.major.majorNameFROMStudents

所以采用Hibernate不仅能够允许代码以面向对象的思想来访问数据库,不再使用复杂的SELECT等SQL语句来操作,还能大大提高开发效率。

1.2.3Spring

Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。

它是为了解决企业应用开发的复杂性而创建的。

并且Spring的用途不仅限于服务器端的开发。

从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。

Spring的主要两个概念如下:

●lIoC:

控制反转

Spring通过一种称作控制反转(InversionofControl)的技术促进了松耦合。

IoC的基本概念是:

不创建对象,但是描述创建它们的方式。

在代码中不直接与对象和服务连接,但在配置文件中描述哪一个组件需要哪一项服务。

容器负责将这些联系在一起。

其原理是基于OO设计原则的TheHollywoodPrinciple:

Don'tcallus,we'llcallyou(别找我,我会来找你的)。

也就是说,所有的组件都是被动的(Passive),所有的组件初始化和调用都由容器负责。

组件处在一个容器当中,由容器负责管理。

简单的来讲,IoC就是由容器控制程序之间的关系,而非传统实现中,由程序代码直接操控。

这也就是所谓“控制反转”的概念所在:

控制权由应用代码中转到了外部容器,控制权的转移,是所谓反转。

●lAOP:

面向切面编程

AOP(AOP的全称),是一种编程技术,它允许程序员对横切关注点或横切典型的职责分界线的行为(例如日志和事务管理)进行模块化。

AOP的核心构造是切面,它将那些影响多个类的行为封装到可重用的模块中。

本系统在进行声明式事务管理时应用到了AOP,其优点在本文第三章有简要概述。

1.2.4AJAX

AJAX即“AsynchronousJavaScriptandXML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术,可以采用JavaScript来编写或者使用更方便的类库。

传统的web应用允许用户填写表单(form),当提交表单时就向web服务器发送一个请求。

服务器接收并处理传来的表单,然後返回一个新的网页。

这个做法浪费了许多带宽,因为在前后两个页面中的大部分HTML代码往往是相同的。

由于每次应用的交互都需要向服务器发送请求,应用的响应时间就依赖于服务器的响应时间。

这导致了用户界面的响应比本地应用慢得多。

与此不同,AJAX应用可以仅向服务器发送并取回必需的数据,并在客户端采用JavaScript处理来自服务器的响应。

因此在服务器和浏览器之间交换的数据大量减少,结果我们就能看到响应更快的应用。

同时很多的处理工作可以在发出请求的客户端机器上完成,所以Web服务器的处理时间也减少了。

使用AJAX的最大优点,就是能在不更新整个页面的前提下维护数据。

这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息。

本系统中的定时保存答案的功能,就是依靠AJAX的此特点,在不刷新考试页面的情况下,将所有已答题的答案保存进数据库中,来应对考试进行时可能会出现意外而导致答案丢失的情况。

随着AJAX的成熟,一些简化AJAX使用方法的类库也相继问世,如接下来要介绍本系统采用的jQuery和ExtJs。

1.2.5jQuery

JavaScript曾经长期被严谨的Web开发者当做“玩具”语言,然而在过去数年间,随着人们对RIA(RichInternetApplication,富因特网应用)和AJAX技术重新燃起兴趣,JavaScript重获威望。

这门语言不得不快速成长,因为客户端开发者已经抛弃剪切和粘贴JavaScript的方式,转而采用方便快捷、功能完备的JavaScript库。

这些库一次性地解决了跨浏览器的难度,并提供新颖的Web开发方式。

jQuery使得开发人员充分利用了CSS(CascadingStyleSheet,层叠样式表单)、XHTML(eXtensibleHyperTextMarkupLanguage,可扩展超文本标记语言)及普通JavaScript知识,去直接操作页面元素,实现更快速的开发。

在本在线考试系统中,考生在进行考试时或交卷时,需要提交已答题的所有答案,这就需要对浏览器的DOM(DocumentObjectModel)对象进行频繁的操作,所以会出现很多重复代码,而采用jQuery后,借助其对JavaScript优秀的封装,采用“$“符号来代替频繁的document.getElementById()操作,并且jQuery也对AJAX进行了封装,在本系统进行AJAX编程时,只需使用$.ajax()等方法即能轻松地建立对服务器的异步访问,即兼顾了JavaScript对浏览器的兼容问题又极大地简化了程序的编写。

1.2.6ExtJs

ExtJS可以用来开发RIA也即富客户端的AJAX应用,是一个用JavaScript写的,主要用于创建前端用户界面,是一个与后台技术无关的前端AJAX框架。

因此,可以把ExtJS用在.Net、Java、Php等各种开发语言开发的应用中。

ExtJs最开始基于YUI(Yahoo!

UserInterface)技术,由开发人员JackSlocum开发,通过参考JavaSwing等机制来组织可视化组件,无论从UI(UserInterface)界面上CSS样式的应用,到数据解析上的异常处理,都可算是一款不可多得的JavaScript客户端技术的精品。

本在线考试系统的后台采用ExtJs构建,因为其特点是让程序员不用再考虑美工的工作,只需用JavaScript构建相应的组件即可创建出美观的界面,减轻了开发量,提高开发效率。

并且ExtJs能够和后台服务器无缝结合,可采用JSON(JavaScriptObjectNotation,一种轻量级的数据交换格式)与服务器进行交换,开发出用户体验较高的RIA系统。

1.3系统需求分析

1.3.1系统功能结构图

图:

1.1系统功能结构图

1.3.2系统功能需求

课程管理:

系统应具备对课程进行增删改查的功能,并且此模块能为每个课程设置该课程的知识点,以保证生成的试卷中知识点的平均分配。

系统还可设置重点知识点,以确保系统会首先从以上重点知识点来随机抽题。

此模块还应允许系统管理员输入本课程的考试时间,考试管理模块可根据设置的时间对考生进行时间约束。

考生管理:

在系统管理员输入考生的基本信息以及考生需要参加的考试科目(即课程表中的数据),系统应为每个考生自动生成密码,考生能够使用生成的密码登陆考试系统。

在考生进行完应考的科目并成功交卷后,系统应能具备对客观题自动评分的功能,且具有一定权限的系统用户能够对试卷中的主观题进行评分,评分结束后系统要将分数保存到考生的信息中,并且能生成一些表格或图像以便考生或教师观看考生的学习情况(如:

曲线图,饼图,柱状图)。

具有一定权限的系统用户(阅卷教师)应具备对考生的基本信息进行查看、修改和删除等功能。

权限管理:

为了保护系统数据的完整性,防止一些不具备某些操作权限的用户破坏数据的完整性,系统应具备权限管理。

题库管理:

系统应具备对单个试题的增、删、改、查的功能,可对题库进行数据备份和数据还原。

系统应使管理员能够针对不同题型、不同应用范围及不同科目分别进行维护,并且在自动生成试卷时,能够均匀地分配试题,保证试卷的出题质量。

试卷管理:

在此模块中,拥有一定权限的系统用户(教师)能进行试卷的生成,系统应具备两种方式来生成试卷:

由系统自动生成试卷或由系统用户手动选择题库内的试题来生成试卷。

在系统自动生成试卷的功能中,系统用户输入各题型的个数、分数比例和难度比例,如:

在《操作系统》科目的试卷中,选择题10道,占总分的20%,难度比例5:

3:

2(容易,中等,较难),系统应先从已经设置好的重点知识点中抽取,并最终生成10道选择题,其中5道难度为容易,3道难度为中等,2道难度为较难,每题分值为2分,以保证每份试卷中的每个题型都难易兼顾,并且系统默认重点知识点占试卷的80%,以此确保试卷的质量,提高教师的工作效率。

留言管理:

考生在用系统进行考试后,可能会有一些对考试系统积极的建议,根据考生的此种需求,系统应具备留言功能,并且教师可以对考生的留言进行回复以及删除无用的留言。

考试管理:

此模块是对考生在进行考试时的管理,考生可能会在考试时由于紧张或考试注意力过度集中,会忘记考试时间,此系统应该在考试时间结束前若干分钟给予考生提示,考试时间到时为其自动交卷。

考生在考试时会有一些误操作,如:

未做完题目而点击交卷或直接点击关闭考试系统窗口,系统应该给予考生未完成的提示,并询问考生是否要继续做题或是确认交卷。

1.3.3系统的故障处理

●在考试时运行的硬件环境可能会突然断电或网络出现异常,系统应对考生已经回答完毕的题目答案进行备份或存档,确保考生能在环境正常后,能够快速重新进行考试。

●考生在未完成试卷的情况下因操作失误退出考试,系统应及时弹出对话窗口向考生询问是否继续做题或确认交卷。

●在考生考试结束并且考试评分完毕,成绩信息已记入进数据库中,教师不能对考生的成绩信息进行修改或删除,只可对一些基本信息进行修改。

1.4本章小结

本章主要介绍了本在线考试系统所采用B/S结构,以及本系统使用到的技术:

Struts,Hibernate,Spring,jQuery,ExtJs,并把系统的详细需求、软件功能结构图和系统的已知故障处理需求列出,为下面一章系统设计作为参考。

2系统设计

2.1数据库设计

2.1.1MySQL数据库概述

MySQL名字的来历MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司,在2008年1月16号被Sun公司收购。

MySQL被广泛地应用在Internet上的中小型网站中。

由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。

2.1.2数据库结构设计

序号

字段名

类型

字段解释

1

id

int

唯一标识

2

dept_name

varchar(20)

系别名称

表:

2.1系别表(t_department)

序号

字段名

类型

字段解释

1

id

int

唯一标识

2

major_name

varchar(20)

专业名称

3

department_id

int

所属系别id

表:

2.2专业表(t_major)

序号

字段名

类型

字段解释

1

id

int

唯一标识

2

course_name

varchar(20)

课程名称

3

paper_count

int

试卷份数

4

major_id

int

所属专业id

表:

2.3课程表(t_course)

序号

字段名

类型

字段解释

1

id

int

唯一标识

2

key_point_name

varchar(20)

知识

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

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1