




已阅读5页,还剩50页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
在线考试系统的研究与实现摘要当今社会随着高新技术的飞速发展,电脑普及时代已经到来,各种技术也在逐渐完善,周围的一切都在悄然发生着变化。伴随着这一切的发生,传统的教学模式及考试方法也面临着更高的要求,变革传统的考试方式是教育面临信息时代的必然选择。本套系统采用了JSP,html等语言标签,SSH三大框架,tomcat服务器并结合小巧的mysql数据库,能够适应一般学校考试的要求。基于教育需求的增加,本文设计并实现了一套JAVA在线考试系统。本系统实现了系统,课程,学生,题库,试卷等管理。本系统由三种角色构成:系统管理员,评分老师,学生。系统管理员有添加维护管理员,老师,学生,题库,考题的权限;学生可以选择相应的试题进行在线考试;评分老师可以浏览考试的实际并评分,评分之后学生可以在线查阅分数。关键词:考试;自动化;在线;便捷iResearchandImplementationofonlineexaminationsystemAbstractWiththerapiddevelopmentofhighandnewtechnology,thecomputerpopularizationerahasarrivedintodayssociety,allkindsoftechnologyhasalsobeengraduallyperfect,everythingaroundinquietlychanging.Withallthishappened,thetraditionalteachingmodesandexaminationmethodsarealsofacingahigherrequest,changingthetraditionalwayofexaminationistheinevitablechoiceofeducationfacingtheinformationage.ThissystemusestheJSP,HTMLtags,SSHframework,thetomcatserverandcombinedwithsmallmysqldatabase,tobeabletomeettheneedsofthegeneralschoolexams.Basedonthegrowingdemandfortheeducation,thispaperdesignsandrealizesaJAVAonlineexaminationsystem.Thissystemimplementsthesystem,curriculum,students,questionbank,examinationpapermanagement,etc.Thissystemconsistsofthreeroles:administrator,gradeteacherandstudents.Systemadministratorshaveaddmaintenanceadministrators,teachers,students,questionbank,examinationquestionsofjurisdiction;Studentscanchoosecorrespondingpapersonlineexamination;Agradeteachercanbrowsethetestandactual,studentscanconsulttheonlinescoreafterscoring.Keywords:Test;automation;Online;convenient0目录摘要.iAbstract.ii1概述.11.1选题背景.11.2国内外研究现状.11.3本课题研究的意义.11.4系统开发方法.21.5系统开发工具.21.5.1技术简介.21.5.2JSP工作原理.21.5.3JSP体系结构.31.5.4JSP的特点.41.5.5MYSQL数据库.51.5.6B/S模式与C/S模式的比较分析.72需求分析.82.1可行性分析.92.2系统需要解决的主要问题.92.3系统应该具备的基本功能.93系统总体设计.123.1基本简介.123.2运行环境.133.3系统结构图.133.4详细设计.143.4.1用户个人信息设计.153.4.2数据库中表的设计.154系统界面展示.194.1系统登录界面.194.2管理员登录主界面.204.2.1课程管理.254.2.2题库管理.264.2.3试卷管理.274.3学生登录主界面.274.4老师登录主界面.285软件测试.285.1软件测试的意义.295.2软件测试的范围.305.3软件测试的方法.31结论.321参考文献.33致谢.34附录A外文原文.35附录B外文译文.4721概述目前,学校的各种考试大都还是采用传统的考试方式,在此方式下,组织一次考试至少要经过人工出卷、考生考试、人工阅卷、成绩评估和试卷分析五个步骤。然而,随着考试类型的不断增加及考试要求的不断提高,出题者的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。随着信息产业的发展,网络等前沿技术已经普及到各行各业。人们迫切要求利用这些技术来进行在线考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证,更加激发学生的学习兴趣。本课题所研究的是取代传统考试的应用型系统,完全实现电脑自动化。传统考试从出题、组卷、印刷,到试卷的分发,答题、收卷,再到判卷,公布成绩,统计分析考试结果整个过程都需要人工参与,周期长,工作量大,容易出错,还要有适当的保密工作,使得整个学习考试成本较大。本系统可以完全实现无纸化、网络化、自动化的计算机在线学习考试,对单位的信息化建设具有深远的现实意义和实用价值。1.1选题背景随着科技日新月异的发展,我们已经进入了一个网络技术迅猛发展的时代,就是所谓的“信息时代”,“数字化时代”。这个时代讲究的是效率,因此传统的行业受到了很大的冲击,如果不作出变革,必将被这个社会所淘汰。对于学校来讲,由于信息化,网络化的发展,以网络技术为基础的数字化教学是主要目标在此开发的在线考试系统,主要是想创造出一种新的教学模式,提高工作和教学效率。该系统应用示意通用考试管理系统将传统的培训考试与先进的网络模式相结合,使用户可根据自身特点快速构建考试、测评、练习、竞赛、调查、分析及管理于一体的网络化考试平台,可轻松完成全员考试、技能考核、需求调研,问卷调查以及知识竞赛等工作。1.2国内外研究现状网络技术的迅猛发展使得在线考试的技术手段和支撑发生了翻天覆地的变化,网络时代的分布性,开放性和其强大的计算能力使得传统的考试在时间和空间上都可以有所突破。同样在国外,这种在线考试系统也成为其研究热点之一。只不过在国外,各方面的发展较早,所以进行的比较深化。据不完全统计,国外已经有相当一部分学生拥有了ipad等电子学习用品,并且选择这种教学模式的人正在逐年上升。然而在国内,我们起步较晚,还停留在摸索阶段,发展进程缓慢。学生们拥有的电子资源不是很丰富,主要集中在学校机房中,空间有限,时间有限,很难体现这套系统的优越性。1.3本课题研究的意义使用在线考试系统,一方面,是顺应时代的需求,这是一个迅猛发展的时代,如果不作出一些创新,面临的只能是被这个世界淘汰;另一方面,对于学校,老师,还有学生,都是一个非常好的选择。对于学校,可以节省考试场地等一系列的开支,并且可以减少错误的发生;对于老师,可以从繁忙的批阅试卷的环境中解脱出来,轻轻松松网上阅卷;对于考生,更是一个绝佳的选择。它能帮助学生用最少的时间进行充分的复习和练习。用最少的时间完成自我综合测试练习。同学们可以根据自己的情况来决定如何进行测试。考试系统可以反馈学生信息,有效地进行自我评定,可以针对3性地查缺补漏,做到有的放矢,有助于学生给自己一个学习成果的定位。有利于学生主体意识的培养。学生在模拟考试方面一定程度上成了主人,他们不再完全受考试主办方的摆布。有利于学生在未来的求职考试时应付自如,掌握必备的知识基础,一举三得。1.4系统开发方法目前,网络系统分为两大类:Client/server模式,Browser/Web模式。前者主要的缺点是维护、升级较麻烦,后者客户端是一个标准的浏览器,服务器端是WebServer,而WebServer与数据库和应用服务器的紧密结合,这种系统的优点是便于扩充,升级维护比较方便。该考试学习系统是基于B/S模式架构的应用系统,采用开放性结构,具有良好的兼容性,只要提供数据库接口就能轻易与各种应用软件对接。在许多细节方面均表现得更加人性、更加成熟、更加完善,同时结合用户需求,满足现在各行各业用于网上考试、网上学习,做到灵活性强,安全性能高。本系统应用新的潮流技术和传统技术相结合,真正实现无纸网络考试和学习。1.5系统开发工具1.5.1技术简介JSP(JavaServerPage服务器网页)是从1998年开始出现的新技术。由Sun公司倡导、许多公司参与一起建立的一种动态网页技术标准,是基于JavaServlet以及整个Java体系的web开发技术。在传统的网页HTML文件(*.htm,*.html)中加入脚本片段和JSP标记(Tag),构成JSP网页(*.jsp)。JSP全名为JavaServerPages,其根本是一个简化servlet设计,他实现了Html语法中的java扩张(以形式)。JSP与Servlet一样,是在服务器端执行的。通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户端。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。1.5.2JSP工作原理当一个JSP文件第一次被请求的时候,JSP引擎(本身也是一个Servlet)首先会把这个JSP文件转换成一个Java源文件。在转换过程中如果发现JSP文件有语法错误,转换过程将中断,并向服务端和客户端输出出错信息;如果转换成功,JSP引擎用javac把该Java源文件编译成相应的.class文件并将该.class文件加载到内存中。其次创建一个该Servlet的实例,并执行该实例的jspInit()方法(jspInit()方法在Servlet的生命周期中只被执行一次)。然后创建并启动一个新的线程,新线程调用实例的jspService()方法。(对于每一个请求,JSP引擎会创建一个新的线程来处理该请求。如果有多个客户端同时请求该JSP文件,则JSP引擎会创建多个线程,每个客户端请求对应一个线程)。浏览器在调用JSP文件时,Servlet容器会把浏览器的请求和对浏览器的回应封装成HttpServletRequest和HttpServletResponse对象,同时调用对应的Servlet实例中的jspService()方法,把这两个对象作为参数传递到jspService()方法中。jspService()方法执行后会将HTML内容返回给客户端。4如果JSP文件被修改了,服务器将根据设置决定是否对该文件进行重新编译。如果需要重新编译,则将编译结果取代内存中的Servlet,并继续上述处理过程。如果在任何时候由于系统资源不足,JSP引擎将以某种不确定的方式将Servlet从内存中移去。当这种情况发生时,jspDestroy()方法首先被调用,然后Servlet实例便被标记加入“垃圾收集”处理。补充:以多线程方式执行可大大降低对系统的资源需求,提高系统的并发量及响应时间,但应该注意多线程的编程限制,由于该Servlet始终驻于内存,所以响应是非常快的。虽然JSP效率很高,但在第一次调用时由于需要转换和编译而有一些轻微的延迟。在jspInit()中可以进行一些初始化工作,如建立与数据库的连接、建立网络连接、从配置文件中获取一些参数等,而在jspDestory()中释放相应的资源。jspInit()及jspDestory()格式如下:publicvoidjspInit()System.out.println(jspinit);publicvoidjspDestory()System.out.println(jspDestory);1.5.3JSP体系结构JSP开发标使用JSP的技术,分为model1,model2两种模式。尽管Model1体系十分适合简单应用的需要,它却不能满足复杂的大型应用程序的实现。不加选择地随意运用Model1,会导致JSP页内被嵌入大量的脚本片段或Java代码,特别是当需要处理的请求量很大时,情况更为严重。尽管这对于Java程序员来说可能不是什么大问题,但如果JSP页面是由网页设计人员开发并维护的通常这是开发大型项目的规范这就确实是个问题了。从根本上讲,将导致角色定义不清和职责分配不明,给项目管理带来不必要的麻烦。我们还可以看看JSP体系结构的另一种:MVC(Model-View-Controller)使用JSP和SERVLET当JSP刚刚出来的时候,它基本上是ASP的翻版,但是,随着JSP的开发者把一些新功能加入JSP,JSP变得比ASP更有扩展性了,因为它可以和SERVLET整合在一起。这样,我们在用SERVLET控制应用程序的时候可以使用JSP做摸板。Model2体系结构,是一种把JSP与servlets联合使用来实现动态内容服务的方法。它吸取了两种技术各自的突出优点,用JSP生成表达层的内容,让servlets完成深层次的处理任务。在这里,servlets充当控制者的角色,负责管理对请求的处理,创建JSP页需要使用的bean和对象,同时根据用户的动作决定把那个JSP页传给请求者。特别要注意,在JSP页内没有处理逻辑;它仅负责检索原先由servlets创建的对象或beans,从servlet中提取动态内容插入静态模板。在我看来,这是一种有代表性的方法,它清晰地分离了表达和内容,明确了角色的定义以及开发者与网页设计者的分工。事实上,项目越复杂,使用Model2体系结构的好处就越大。5JSPModel2体系结构在SUN公司的J2EE设计蓝图里有非常详细的说明,这里还有该体系结构的另一张图例:如何选择使用。很明显,JSP体系结构1是以简单页面控制为中心的,而体系2是以整体规划为中心的。换句话说,简单的流程我建议使用JSP体系结构1,而包含大量事物处理的项目建议使用体系2。2。如果你的项目里互交成分多不多,如果不多的话,建议使用JSP体系结构1。3。两个体系不是对立的,如果能够满足你的需求,你可以在你的项目里混合的使用两种JSP体系结构。1.5.4JSP的特点JSP是Sun公司推出的新一代站点开发语言,他完全解决了目前ASP,PHP的一个通病,脚本级执行(据说PHP4也已经在Zend的支持下,实现编译运行).Sun公司借助自己在Java上的不凡造诣,将Java从Java应用程序和JavaApplet之外,又有新的硕果,就是JspJavaServerPage。Jsp可以在Serverlet和JavaBean的支持下,完成功能强大的站点程序。但JSP代码被编译成Servlet并由Java虚拟机解释执行,这种编译操作仅在对JSP页面的第一次请求时发生。JSP特点:将内容的生成和显示进行分离使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的动态内容。生成内容的逻辑被封装在标识JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在标识和Beans中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。在服务器端,JSP引擎解释JSP标识和小脚本,生成所请求的内容(例如,通过访问JavaBeans组件,使用JDBCTM技术访问数据库,或者包含文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。这有助于作者保护自己的代码,而又保证任何基于HTML的Web浏览器的完全可用性。强调可重用的组件绝大多数JSP页面依赖于可重用的,跨平台的组件(JavaBeans或者EnterpriseJavaBeansTM组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者或者客户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。采用标识简化页面开发Web页面开发人员不会都是熟悉脚本语言的编程人员。JavaServerPage技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。通过开发定制化标识库,JSP技术是可以扩展的。今后,第三方开发人员和其他人员可以为常用功能创建自己的标识库。这使得Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来工作。JSP技术很容易整合到多种应用体系结构中,以利用现存的工具和技巧,并且扩展到能够支持企业级的分布式应用。作为采用Java技术家族的一部分,以及Java2(企业版体系结构)的一个组成部分,JSP技术能够支持高度复杂的基于Web的应用。由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP页面都被编译成为javaServlet,JSP页面就具有Java技术的所有好处,包括健壮性和安全性。6作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。随着越来越多的供应商将JSP支持添加到他们的产品中,您可以使用自己所选择的服务器和工具,更改工具或服务器并不影响当前的应用。1.5.5MYSQL数据库MySql是一个快速、多线程、多用户的SQL数据库服务器,其出现虽然只有短短的数年时间,但凭借着“开放源代码”的东风,它从众多的数据库中脱颖而出,成为PHP的首选数据库。除了因为几乎是免费的这点之外,支持正规的SQL查询语言和采用多种数据类型,能对数据进行各种详细的查询等都是PHP选择MySql的主要原因。下面,就让我们来看看MySql数据库的主要特征。MySql的核心程序采用完全的多线程编程。线程是轻量级的进程,它可以灵活地为用户提供服务,而不过多的系统资源。用多线程和C语言实现的MySql能很容易充分利用CPU。MySql可运行在不同的操作系统下。简单地说,MySql可以支持Windows95/98/NT/2000以及UNIX、Linux和SUNOS等多种操作系统平台。这意味着在一个操作系统中实现的应用可以很方便地移植到其他的操作系统下。MySql有一个非常灵活而且安全的权限和口令系统。当客户与MySql服务器连接时,他们之间所有的口令传送被加密,而且MySql支持主机认证。MySql支持ODBCforWindows。MySql支持所有的ODBC2.5函数和其他许多函数,这样就可以用Access连接MySql服务器,从而使得MySql的应用被大大扩展。MySql支持大型的数据库。虽然对于用PHP编写的网页来说只要能够存放上百条以上的记录数据就足够了,但MySql可以方便地支持上千万条记录的数据库。作为一个开放源代码的数据库,MySql可以针对不同的应用进行相应的修改。MySql拥有一个非常快速而且稳定的基于线程的内存分配系统,可以持续使用面不必担心其稳定性。事实上,MySql的稳定性足以应付一个超大规模的数据库。强大的查询功能。MySql支持查询的SELECT和WHERE语句的全部运算符和函数,并且可以在同一查询中混用来自不同数据库的表,从而使得查询变得快捷和方便。MySQL的优点:它使用的核心线程是完全多线程,支持多处理器。有多种列类型:1、2、3、4、和8字节长度自有符号无符号整数、FLOAT、DOUBLE、CHAR、VARCHAR、TEXT、BLOB、DATE、TIME、DATETIME、TIMESTAMP、YEAR、和ENUM类型;它通过一个高度优化的类库实现SQL函数库并像他们能达到的一样快速,通常在查询初始化后不该有任何内存分配。没有内存漏洞;全面支持SQL的GROUPBY和ORDERBY子句,支持聚合函数(COUNT()、COUNT(DISTINCT)、AVG()、STD()、SUM()、MAX()和MIN()。你可以在同一查询中混来自不同数据库的表;支持ANSISQL的LEFT0UTERJOIN和ODBC;所有列都有缺省值。你可以用INSERT插入一个表列的子集,那些没用明确给定值的列设置为他们的决省值。MySQL可以工作在不同的平台上。支持C、C、Java、Perl、PHP、Python和TCLAPI。MySQL的缺点:MySQL最大的缺点是其安全系统,主要是复杂而非标准,另外只有到调用mysqladmin来重读用户权限时才发生改变。MySQL的另一个主要的缺陷之一是缺乏标准的RI(ReferentialIntegrity-RI)机制;Rl限制的缺乏(在给定字段域上的一种固定的范围限制)可以通过大量的数据类型来补偿。7MySQL没有一种存储过程(StoredProcedure)语言,这是对习惯于企业级数据库的程序员的最大限制。MySQL不支持热备份。MySQL的价格随平台和安装方式变化。Linux的MySQL如果由用户自己或系统管理员而不是第三方安装则是免费的,第三方案则必须付许可费。Unix或Linux自行安装免费、Unix或Linux第三方安装200美元,SQLServer的优点众多,但是MicrosoftSQLServer和其他数据库产品相比也存在着以下劣势:开放性。只能运行在微软的windows平台,没有丝毫的开放性可言。可伸缩性,并行性。并行实施和共存模型并不成熟,很难处理日益增多的用户数和数据卷,伸缩性有限。性能稳定性。SQLServer当用户连接多时性能会变的很差,并且不够稳定。使用风险。SQLServer完全重写的代码,经历了长期的测试,不断延迟,许多功能需时间来证明。并不十分兼容早期产品。使用需要冒一定风险。客户端支持及应用模式。只支持C/S模式。1.5.6B/S模式与C/S模式的比较分析C/S模式主要由客户应用程序(Client)、服务器管理程序(Server)和中间件(middleware)三个部件组成。客户应用程序是系统中用户与数据进行交互的部件。服务器程序负责有效地管理系统资源,如管理一个信息数据库,其主要工作是当多个客户并发地请求服务器上的相同资源时,对这些资源进行最优化管理。中间件负责联结客户应用程序与服务器管理程序,协同完成一个作业,以满足用户查询管理数据的要求。B/S模式是一种以Web技术为基础的新型的MIS系统平台模式。把传统C/S模式中的服务器部分分解为一个数据服务器与一个或多个应用服务器(Web服务器),从而构成一个三层结构的客户服务器体系。第一层客户机是用户与整个系统的接口。客户的应用程序精简到一个通用的浏览器软件,如NetscapeNavigator,微软公司的IE等。浏览器将HTML代码转化成图文并茂的网页。网页还具备一定的交互功能,允许用户在网页提供的申请表上输入信息提交给后台,并提出处理请求。这个后台就是第二层的Web服务器。第二层Web服务器将启动相应的进程来响应这一请求,并动态生成一串HTML代码,其中嵌入处理的结果,返回给客户机的浏览器。如果客户机提交的请求包括数据的存取,Web服务器还需与数据库服务器协同完成这一处理工作。第三层数据库服务器的任务类似于C/S模式,负责协调不同的Web服务器发出的SQ请求,管理数据库。B/S模式的优势首先它简化了客户端。它无需象C/S模式那样在不同的客户机上安装不同的客户应用程序,而只需安装通用的浏览器软件。这样不但可以节省客户机的硬盘空间与内存,而且使安装过程更加简便、网络结构更加灵活。假设一个企业的决策层要开一个讨论库存问题的会议,他们只需从会议室的计算机上直接通过浏览器查询数据,然后显示给大家看就可以了。甚至与会者还可以把笔记本电脑联上会议室的网络插口,自己来查询相关的数据。其次,它简化了系统的开发和维护。系统的开发者无须再为不同级别的用户设计开发不同的客户应用程序了,只需把所有的功能都实现在Web服务8器上,并就不同的功能为各个组别的用户设置权限就可以了。各个用户通过HTTP请求在权限范围内调用Web服务器上不同处理程序,从而完成对数据的查询或修改。现代企业面临着日新月异的竞争环境,对企业内部运作机制的更新与调整也变得逐渐频繁。相对于C/S,B/S的维护具有更大的灵活性。当形势变化时,它无须再为每一个现有的客户应用程序升级,而只需对Web服务器上的服务处理程序进行修订。这样不但可以提高公司的运作效率,还省去了维护时协调工作的不少麻烦。如果一个公司有上千台客户机,并且分布在不同的地点,那么便于维护将会显得更加重要。再次,它使用户的操作变得更简单。对于C/S模式,客户应用程序有自己特定的规格,使用者需要接受专门培训。而采用B/S模式时,客户端只是一个简单易用的浏览器软件。无论是决策层还是操作层的人员都无需培训,就可以直接使用。B/S模式的这种特性,还使MIS系统维护的限制因素更少。最后,B/S特别适用于网上信息发布,使得传统的MIS的功能有所扩展。这是C/S所无法实现的。而这种新增的网上信息发布功能恰是现代企业所需的。这使得企业的大部分书面文件可以被电子文件取代,从而提高了企业的工作效率,使企业行政手续简化,节省人力物力。鉴于B/S相对于C/S的先进性,B/S逐渐成为一种流行的MIS系统平台。各软件公司纷纷推出自己的Internet方案,基于Web的财务系统、基于Web的ERP。一些企业已经领先一步开始使用它,并且收到了一定的成效。B/S模式的新颖与流行,和在某些方面相对于C/S的巨大改进,使B/S成了MIS系统平台的首选。92需求分析要实现一个软件系统,首先应该进行需求分析,这样才能令设计出的软件满足用户的各项功能。下面是对在线考试系统的需求分析。2.1可行性分析可行性分析也称为可行性研究,是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,可行性分析是要决定“做还是不做”。需求分析是要决定“做什么,不做什么”。即使可行性分析是客观的、科学的,但决策仍有可能是错误的。软件可行性分析最根本的任务是对以后的行动方针提出建议。如果问题没有可行的解释,分析员应该建议停止这项开发工程,以避免时间、资源、人力和金钱的浪费;如果问题值得解,分析员应该推荐一个较好的解决方案,并且为工程制定一个初步的计划。做可行性分析不能以偏盖全,也不可以什么鸡毛蒜皮的细节都加以权衡。可行性分析必须为决策提供有价值的证据。一般地,软件领域的可行性分析主要考虑四个要素:经济、技术、社会环境和人。本文只是泛泛地解释这四个要素,旨在建立全局分析的观念。(1)经济可行性:主要是对项目的经济效益进行评价,经济可行性分析主要包括:“成本收益”分析和“短期长远利益”分析。1、成本收益分析成本收益分析最容易理解,如果成本高于收益则表明亏损了,如果成本大大高于收益那就亏大了。该系统由于只涉及学校考试,没有其他领域,所以成本来说不是很大。2、短期长远利益分析短期利益容易把握,风险较低。国内软件公司经常出现一窝蜂地去做信息管理系统、多媒体光盘、系统集成项目或Internet服务。长远利益难以把握,风险较大。本系统开发经费在经济上是可以接受的,并且本系统实施后可以显著提高工作效率,提高教学质量。所以本系统在经济上是可行的。(2)技术上的可行性:技术上的可行性分析主要分析技术条件能否顺利完成开发工作,硬、软件能否满足开发者的需要等。技术可行性分析至少要考虑以下几方面因素:在给定的时间内能否实现需求说明中的功能。如果在项目开发过程中遇到难以克服的技术问题,麻烦就大了。轻则拖延进度,重则断送项目。软件的质量如何?有些应用对实时性要求很高,如果软件运行慢如蜗牛,即便功能具备也毫无实用价值。有些高风险的应用对软件的正确性与精确性要求极高,如果软件出了差错而造成客户利益损失,那么软件开发方损失巨大。软件的生产率如何?如果生产率低下,能赚到的钱就少,并且会逐渐丧失竞争力。在统计软件总的开发时间时,不能漏掉用于维护的时间。10该管理系统采用了Browser/Server模式进行开发。Browser/Server体系结构紧密的结合了Internet/Intranet技术,是技术发展的大势所趋,它把应用系统带入了一个崭新的发展时代。数据库服务器SQL数据库,它能够处理学校这种中小型数据,同时保持数据的完整性并提供许多高级管理功能。它的灵活性、安全性和易用性为数据库编程提供了良好的条件。因此,系统的软件开发平台已成熟可行。硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台完全能满足此系统的需要。(3)社会环境社会环境的可行性至少包括两种因素:市场与政策。市场又分为未成熟的市场、成熟的市场和将要消亡的市场。涉足未成熟的市场要冒很大的风险,要尽可能准确地估计潜在的市场有多大?自己能占多少份额?多长时间能实现?挤进成熟的市场,虽然风险不高,但油水也不多。如果供大于求,即软件开发公司多,项目少,那么在竞标时可能会出现恶性杀价的情形。在我国,虽然考试系统已经有很多,但是每个学校的情况都有所不同,供小于求,很有市场。综上所述,此系统开发目标已明确,在技术和经济等方面都可行,并且投入少、见效快。因此系统的开发是完全可行的。2.2系统需要解决的主要问题根据需求来看,主要解决学生的考试问题,初步可以划分为三种角色。,分别是管理员,评分老师和考生。不同的角色有不同的权限。管理员需要对学生,评分老师,题库,试题进行维护和添加;评分老师只需要考生的试卷;学生需要能在网上找到试题答题,并且能查看分数。解决以往考试占用考试场地过多,效率过低,评分老师任务过重,学生复习效率低的问题,。2.3系统应该具备的基本功能根据三种角色划分功能:管理员角色:管理员是整个系统的核心,负责录入所有的数据,并且进行相应的维护,管理员的账号是建数据库表的时候插进去的,同时管理员也可以添加删除,维护其他管理员。管理员所拥有的权限如下:管理员维护:对现有管理员进行维护并具有添加新的管理员权限。课程管理:录入新的课程和具有管理现有课程的权限。试卷管理:录入新的试卷和具有管理现有试卷的权限。考生管理:添加新的考生和具有管理现有的考生的权限。题库管理:录入新的试题和具有管理现有试题的权限。评分老师管理:对系统的评分老师进行添加和管理。考生分数查看:对于已经选择题目参与过自测的考试分析进行查看。考生角色:考生在线答题其所拥有的权限如下:在线自测:考生选择试题进行自测。在线考试:考生进行考试。查询分数:查自己自测的分数。11评分老师角色:评分老师负责在线阅卷,其拥有的权限如下:在线评分:学生提交试题之后老师对其评分。部分用例图:这套在线考试系统既是一套考试管理系统,又是一套信息信息管理系统用户用例图如下,如图2-1所示:图2-1用户用例图用户图说明:该系统的用户由学生和老师组成。系统功能图如下:如图2-2所示:图2-2系统功能用例图123系统总体设计本设计是JAVA在线考试系统。本系统实现了系统管理、课程录入修改、题库录入修改、学生录入修改、试卷录入修改、评分老师管理等基本功能。3.1基本简介该系统是专门用于用户注册、登录、试题查询的应用web程序。账号由管理员统一注册,它应该具有开放性、方便性和灵活性。管理员可以轻松地向题库添加、修改和删除试题,并且维护考生和评分老师信息。3.2运行环境为了保证系统运行的效率和可靠性,服务器端要求相对较高,客户端的要求不是很高。此应用程序可广泛应用于外部网络,也可适用于内部的局域网。运行软硬件要求如下:软件环境:客户端:Windows/98/2005/XP/Vista/win7,IE8,9浏览器等服务器端:Windows2005/XP/win7,IE8,9,JDK1.6版本,Tomcat6版本等。数据库:MYSQL5版本,运行于服务器端。开发平台:MyEclipse6.5硬件环境:服务器CPU:PIII500以上,内存:256M以上客户机CPU:P200MMX以上,内存:32M以上3.3系统结构图根据以上的需求分析,在线考试系统的系统结构图如下,图3-1和图3-2所示:13图3-1管理员端系统结构图图3-2考生端系统结构图评分老师只能对学生所完成的自测题目进行评分功能。试题库系统的流程图如下,如图3-3所示:14图3-3试题库流程图部分模块的流程图:登陆模块:系统启动首先进入登录页面,用户输入用户名及密码后点击登录按钮后,核对数据库中存放的用户信息,如果用户输入的用户名及密码正确,则进入相应主功能页面;反之,用户输入的用户名及密码错误,则将错误信息显示在登陆页面,并重新输入用户名及密码。登录流程如图3-4所示:试题库添加试题信息修改试题信息删除试题信息试题名称、正确答案是否为空新的试题信息添加完成修改记录试题信息修改完成点击考试名称对应的删除按钮试题信息删除完成取消否是试题名称、正确答案是否为空否是15图3-4登录流程图3.4详细设计详细设计是整个软件工程设计中最重要的一步。本文分如下几个部分设计:(1)用户个人信息设计(2)数据库中表的设计(3)数据库逻辑ER图设计(4)功能模块的详细设计。3.4.1用户个人信息设计用户个人信息设计,首先应该实现用户名和密码的设计。用户名要求不能为空、重复,密码输入的两次信息应该一致,然后应该实现用户名密码的修改,学生及老师的账号密码都是由管理员录入的。3.4.2数据库中表的设计(1)数据库名称为db_exam(2)数据库中的关键数据库表格设置管理员表如表3-1所示:表3-1t_admin管理员表序号字段名称类型长度标志描述1userIdInt4主键2userNamevarchar503userPwvarchar5016学生表如表3-2所示:表3-2t_stu学生表序号字段名称类型长度标志描述1stu_idint4主键2stu_xuehaovarchar503stu_realnamevarchar504stu_sexvarchar505stu_agevarchar506stu_cardvarchar507stu_zhengzhimianmaovarchar508login_namevarchar509login_pwvarchar5010delvarchar50老师表如表3-3所示:表3-3t_tea老师表序号字段名称类型长度标志描述1tea_idint4主键2tea_bianhaovarchar503tea_realnamevarchar504tea_sexvarchar505tea_agevarchar506login_namevarchar507login_pwvarchar508delvarchar50部分数据库代码:数据库建库语句:CREATEDATABASEdb_exam;建表语句:管理员表:CREATETABLEt_admin(userIdint(10)NOTNULLauto_increment,userNamevarchar(50)defaultNULL,userPwvarchar(50)defaultNULL,PRIMARYKEY(userId),UNIQUEKEYPK_t_admin(userId)ENGINE=InnoDBDEFAULTCHARSET=utf8;分数表:CREATETABLEt_fenshu(fenshu_idint(10)NOTNULLauto_increment,17shiti_idint(10)defaultNULL,stu_idint(10)defaultNULL,fenshuint(10)defaultNULL,PRIMARYKEY(fenshu_id),UNIQUEKEYPK_t_fenshu(fenshu_id)ENGINE=InnoDBDEFAULTCHARSET=utf8;交卷表:CREATETABLEt_jiaoyuan(jiaojuan_idint(10)NOTNULLauto_increment,stu_idint(10)defaultNULL,shiti_idint(10)defaultNULL,timu_idint(10)defaultNULL,timu_daanvarchar(50)defaultNULL,PRIMARYKEY(jiaojuan_id),UNIQUEKEYPK_t_jiaoyuan(jiaojuan_id)ENGINE=InnoDBDEFAULTCHARSET=utf8;课程表:CREATETABLEt_kecheng(kecheng_idint(10)NOTNULLauto_increment,kecheng_bianhaovarchar(50)defaultNULL,kecheng_namevarchar(50)defaultNULL,kecheng_xueshivarchar(50)defaultNULL,delvarchar(50)NOTNULL,PRIMARYKEY(kecheng_id),UNIQUEKEYPK_kecheng(kecheng_id)ENGINE=InnoDBDEFAULTCHARSET=utf8;试题表:CREATETABLEt_shiti(shiti_idint(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年衢州危运押运员考试试题
- 2025年高效节能电动机项目合作计划书
- 网络服务排他性授权协议
- 特别声明仅用于证明工作文件证明(6篇)
- 社区农业技术推广应用合同
- 制造业企业员工技能证书及工作履历证明(8篇)
- 2025年医用空气压缩机(系统)合作协议书
- 渔业资源可持续开发合作框架协议
- 移动支付终端软件推广协议
- 太阳能光伏电站买卖协议
- 青储饲料购销合同范本版
- JT-T-1208-2018国际道路货物运输车辆选型技术要求
- 全新店铺转让合同
- 小学升初中六年级数学模拟试卷及参考答案
- 监督执纪工作规则
- 全麻术后苏醒延迟的预防及护理
- 办公区域主要风险辨识与分级管控清单
- 2024年海南省财金集团有限公司招聘笔试冲刺题(带答案解析)
- 2024年辽宁铁道职业技术学院单招职业技能测试题库及答案解析
- (正式版)JBT 14581-2024 阀门用弹簧蓄能密封圈
- 小学科学湘科版六年级下册全册同步练习含答案
评论
0/150
提交评论