基于JSP的在线考试系统的设计_第1页
基于JSP的在线考试系统的设计_第2页
基于JSP的在线考试系统的设计_第3页
基于JSP的在线考试系统的设计_第4页
基于JSP的在线考试系统的设计_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

IV本科毕业设计说明书基于JSP的在线考试系统的设计ONEDESIGNOFON-LINEEXAMINATIONSYSTEMBASEONJSP学院(部):专业班级:学生姓名:指导教师:2012年06月基于JSP的在线考试系统的设计摘要本文所述的内容是网上考试系统的开发报告,阐述了系统设计开发的流程和具体功能的实现方案。网上考试系统本着“软件以用”为本的开发理念实现用户管理、题库管理、系统阅卷、考生管理和考试设置等功能。系统采用在DreamweaverMX2004嵌入JSP动态网页技术的B/S结构设计,且系统从安全性、易维护性等方面着手实现了后台管理端和前台客户端的分离。系统设计过程中用到了许多网页制作关键技术,如用框架和CSS样式表来控制布局,用JavaScript语言实现前台浏览器端的校验。网上考试系统的实现不但可以提高工作效率,减少监考人员数量,增强公平性等,而且可以实现学校或学校的低成本投入,高效率办公的宗旨。基于JSP+JavaBeans模式是Web网站开发较为成功的解决方案,因此在本系统中也采用了这一模式来设计,也真正体会到了它的优势。关键词:网络考试系统,浏览器/服务器模式,JSPDESIGNOFON-LINEEXAMINATIONSYSTEMBASEONJSPABSTRACTThisisareportaboutexaminationsystemonline.Inthispaper,includingtheprocessfordesignandmethodforachievementofspecificfunction.Thissystemcanrealizethefunctionforusermanagement,storeroommanagement,lookingovertheexaminationpapers,examineemanagementandplacingtheexamination,whichisbasedontheprincipleof“applythesoftware”.ItemployedDreamweaverMX2004withthestructuredesignofJSP,thatisB/S,whichismovementtechnique,andgaintheseprarationtheback-terminationandthefront-terminationassecurityandmaintenanceareconsidered.Alotofkeytechniqueforfrontpageisusedinthescheme,suchasusingframeandCSSsampletocontrolthedistribution,correctingthefront-browsebyJavaScript.Acquisitionoftheexaminationsystemonlinenotonlyimprovetheefficiency,decreasetheamountofinvigilator,increasethefairandalsoreducethecostinvestment,workinhighefficiencyinschoolorenterprise.ThemodelofJSP+JavaBeansisalsousedfordesignwhichissuccessfullyemployedtosolveproblembyWeandtheadvanceshasbeenwitnessed.KEYWORDS:on-lineexaminationsystem,B/Spattern,JSP目录摘要 IABSTRACT II1绪论 11.1引言 11.2课题的研究背景 11.3课题的国内外研究动态 21.4课题的研究意义 32系统开发的工具介绍 42.1网络考试系统与B/S结构 42.2JSP的工作原理 42.3数据库SQLserver2000 62.4数据库访问技术 62.5开发平台与开发工具 72.5.1MyEclipse 72.5.2Tomcat 72.5.3MyEclipse里配置Tomcat 73需求分析 83.1考试模块业务流程 83.2总体目标 93.3具体目标 93.4系统功能分析 103.5系统功能模块分析 113.6数据库系统 123.6.1ER图 123.6.2数据库实现 123.7数据处理流程分析 143.7.1身份验证与登录 143.7.2AdminPage 153.7.3查询流程 153.7.4数据更新流程 153.7.5数据添加流程 164概要设计 174.1系统总体结构设计 174.2数据字典 195详细设计 215.1系统功能结构 215.2接口设计 225.2.1外部接口 225.2.2内部接口 235.3输入输出设计 235.3.1输入设计 235.3.2输出设计 255.4运行设计 255.4.1运行环境 255.4.2运行模块的组合 255.4.3运行控制 265.4.4运行时间 265.5出错处理设计 265.5.1出错输出信息 265.5.2出错处理对策 266系统实现 276.1登录模块 276.2注册管理界面 276.3学生管理界面 276.4题库管理界面 287用户手册 297.1运行环境要求 297.2系统安装与初始化 297.3系统操作说明 297.4测试原则及测试方法概述 297.5测试项目测试用例 307.6软件测试结论 317.6.1软件能力 317.6.2缺陷和限制 31结论 32参考文献 33致谢 34PAGE341绪论1.1引言随着Web技术在各行各业的广泛应用,网络技术在教学管理中已充当重要的角色。网上考试系统的设计就是实现考试网络化的解决方案。传统考试方式在试题管理和批卷等方面上很浪费时间,且不易维护和管理。基于目前校园网建设逐步完善,大多数院校也已经具备了利用网络进行考试的条件,实现网上考试是一个发展趋势。开发网上考试系统就是希望充分利用网络资源,提高教学管理水平,减轻考务负担,提高工作效率等。网上考试系统的开发是基于目前较为流行的B/S三层结构思想而设计。本系统使用的是JSP技术,JSP基于JavaServlet以及整个Java体系的Web开发技术。JSP被认为是最有发展前途的动态网站技术,是未来开发动态网站的主流技术,与其它技术相比有一定的优势,如JSP页面可重用跨平台的组件(JavaBean或EnterpriseJavaBean)来执行应用程序所要求更为复杂的处理,能将页面的逻辑和页面显示进行分离,页面开发人员可以使用HTML或者XML标记语言来设计和格式化最终页面,并使用JSP标签或者Java程序语言来生成页面上的动态内容。本文所述的网上考试系统可分后台管理模块和前台客户端显示模块,后台管理模块又分用户管理,考生信息管理,试题信息管理,问题信息管理,考试设置及考试评分管理等。基于本系统Web应用程序部署在Web服务器上,客户端无需安装任何软件,只要有InternetExplore5.0以上浏览器,遵守TCP/IP协议都可以登录访问Web服务器的网上考试系统,这也充分体现了B/S结构应用的优越性。1.2课题的研究背景在网络技术逐渐渗入社会生活各个层面的今天,传统的考试方式也面临着变革,而网络考试则是一个很重要的方向。基于Web技术的在线考试系统可以借助于遍布全球的因特网进行,因此考试既可以在本地进行,也可以在异地进行,大大拓展了考试的灵活性。试卷可以根据题库中的内容即时生成,可避免考试前的压题;而且可以采用大量标准化试题,从而使用计算机判卷,大大提高阅卷效率;还可以直接把成绩送到数据库中,进行统计、排序等操作。所以现在较好的考试方法为网络考试,试题内容放在服务器上,考生通过姓名、用户名和密码进行登录,考试答案也存放在服务器中,这样考试的公平性、答案的安全性可以得到有效的保证。因此,采用网络考试方式将是以后考试发展的趋势。1.3课题的国内外研究动态从80年代确立至今,人力考试管理已经历了近20年的发展。在这一段时间内,全球的社会经济环境已经发生了巨大变化,特别是以计算机技术和现代通信技术为代表的信息科技正改变着我们生活和工作的方方面面。随着我国经济的迅猛发展,学校的发展也是日新月异。我国学校现行学生考试管理实行路径依赖方案,认为学校学生考试管理应走信息化、现代化的路径。学校学生考试管理的存在和发展必须来自其内在的、本质的需要。如果学校的学生不断提升能力,能够满足学校的这种内在需要,它就能生存和发展。因此,针对学校的特点,应突破传统学生考试管理的路径依赖,选择信息化、现代化的新路径。信息化是从原始静态考试管理到动态考试信息化管理的革命,是考试工作的深入,是工作方法的改变,也是学生考试管理与时俱进、开拓创新的起点。这一路径的选择对学校学生考试管理提出了新的要求。(1)完善学生考试管理制度是信息化的基础在学生考试管理中,对于不适应新形势、新情况、新任务的规章制度,必须要进行改革,及时建立新的、更为科学合理的学生考试管理制度,使得考试工作更加制度化、规范化。在考试的收集上要及时、完整;在考试的鉴别上必须遵循“去伪存真”;考试的整理归档要严谨、科学;考试的借阅应根据具体情况具体分析,对人力资源管理部门及其他部门应有所区别,注意考试安全;考试的更新应及时、准确、完整,尤其应注意对考试的新内容进行及时、主动的补充收集。只有维护了学校考试的真实性、严肃性、有效性,才能更好地促进人才合理流动、合理配置和合理使用,为学校人力资源建设提供更好的服务,为学校学生考试管理的信息化奠定基础。(2)依托专业人才是信息化的有力保证由传统的考试实体管理转变为信息管理,只掌握传统考试管理职能的考试人员是难以适应的。因此,要实现考试的信息化管理,学校必须具有高素质的考试管理人才。学生考试管理信息化的最终决定因素是人。学生考试管理人员必须由考试实体管理者向信息管理员和发布者的角色转换,要提高学生考试管理人员的计算机应用能力,能用信息化、数字化管理手段来管理考试信息。(3)建设学生考试管理系统是信息化的重点利用计算机技术对考试进行信息储存、查找,进而实现网络化管理,是当前学生考试管理信息化的重点。通过该系统能够实现文件考试管理一体化。在办公自动化环境下的文件、考试一体化管理,要求重新设置合理的工作流程,将文件工作和考试工作的需求一同嵌入管理文件系统中,记录从电子文件形成到成为电子考试并归档的一切活动过程和处理情况。考试人员在网上接收、整理、鉴定并确定密级和保管期限,然后进入正式文件库。考试管理部门也可以通过办公自动化系统随时掌握文书,业务部门的管理动态,及时进行指导,从而实现考试的超前性、预见性管理。美国密歇根大学的沃尔里奇(Ulrich)教授认为,作为学校获取竞争力的帮手,人力资源管理应更注重工作的产出,而不仅仅是把工作做好。根据人力资源管理的战略决策、行政效率、学生的贡献和变化能力这四种产出,沃尔里奇归纳了人力资源管理的四个基本角色。它们分别是管理战略性人力资源、管理组织的机制结构、管理学生的贡献程度、管理转型和变化。人力资源经理人应进行人力资源管理角色的再定位。人力资源经理人需要具备相应的全球人力资源管理技能,了解并掌握相当的业务知识。人力资源管理已日益突显其在学校价值链中的重要作用,这种作用就在于能为“顾客”,既包括学校外部顾客,又包括学校内各个部门,提供附加价值。人力资源部门应该从“权力中心(PowerCenter)”的地位走向“服务中心(ServiceCenter)”,再走向“利润中心”(ProfitCenter)(以顾客导向、人力成本控制、考试变动率、人才培养、学生健康及学生满意为关键事务指标)。人力资源经理必须具备一套全新的思维方式,去考虑“顾客”需要什么样的人力资源服务并怎样提供这些服务,借此创造在学校中的权威。1.4课题的研究意义随着计算机应用的迅猛发展,网络应用不断扩大,如远程教育和网络学校的出现等等,且这些应用正逐步深入到千家万户,人们迫切要求利用这些技术来进行在线考试,以减轻教师的工作负担及提高工作效率,因此有必要开发一个完备的在线考试系统。该在线考试系统可以使用户在网上学习过后及时检验自己的学习效果,以发现自己的不足,使得学习效率得到很大提高。在线考试系统中题目的生成、试卷的提交、成绩的批阅等都可以在网络上自动完成。只要形成一套成熟的题库就可以实现考试的自动化。这样一来,教师所要做的只是精心设计题目、维护题库,而不是组织考试,从而大大减轻了教师的负担,其经济性是相当可观的,实用性、安全性也很好。2系统开发的工具介绍2.1网络考试系统与B/S结构B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓的3层结构。B/S结构,主要是利用了不断成熟的浏览器技术,结合浏览器的多种Script语言(VBScript、JavaScript)和ActiveX技术,用通用浏览器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。随着Windows98/Windows2000将浏览器技术植入操作系统内部,这种结构更成为当今应用软件的首选体系结构。显然B/S结构应用程序相对于传统的C/S结构应用程序是巨大的进步。B/S结构具有以下优点:(1)具有分布性特点,可以随时随地进行查询、浏览等业务处理。(2)业务扩展简单方便,通过增加网页即可增加服务器功能。(3)维护管理方便,只需更改网页即可实现所有用户的同步更新。(4)开发简单,共享性强。2.2JSP的工作原理JSP的工作原理是当用户浏览器从Web服务器上请求JSP文件时,Web服务器响该HTTP请求,JSP引擎解释JSP标识和小脚本,通过访JavaBean组件,使JDBC技术访问数据库,生成所请求的内容,并且将结果以HTLM或者XML页面的形式返回给浏览器。Servlet为Web开发员提供了一个简单、一致的机制,来扩展Web服务器的功能,并且和已有的业务系统交互,可以把Servlet看作在服务端运行的Applet。JavaBean是一种“类”,通过封装属性和方法成为具有某种功能或处理某业务的对象。JavaBean被组织成为Package以便进行管理。实际上就是把一组JavaBean一起放在XX目录中,每个类的定义前加上PackageXX,必须放在系统环境Classpath包含的目录下,系统才能找到其中的JavaBean。JSP技术是servlet技术的扩展,对HTML和XML的页面创作提供支持。网页设计员能够非常容易地将固定或静态的模板数据与动态内容进行组合。JSP原理图如图2-1所示。客户客户JSPpagesJavaservletJavabeansJDBCDBMSDB图2.1JSP原理图JSP功能特点如下:(1)JSP具有跨平台能力、语法简单、书写容易,并且有“一处编写、随处运行”的特点。与ASP相比,JSP+JavaBean可以在所有平台下运行,而Java字节码都是具有标准性、跨平台性,在移植到另外的平台上时基本不用重新编译。而ASP目前仅用于NT和IIS,需要通过ASP+COM组合实现扩充,而且在Unix下施COM非常困难。(2)采用JavaBean执行应用中的复杂处理,由于这些组件可重复使用,能提高开发效率;此外,组件的使用有利于实现静态和动态页面的分离,页面设计者和开发设计者可以各施其职JSP为分离处理逻辑和表示层提供了很好的解决方案。(3)JSP技术为创建显示动态生成内容的WEB页面提供了一个简捷而快速的方法。JSP技术的设计目的是使得构造基于WEB应用程序更加容易和快捷,这些应用程序能够与各种WEB服务器、应用服务器、浏览器和开发工具共同工作。(4)JSP的效率和安全性更高。ASP以源码形式存放,以解释方式运行,每次ASP网页调用都需要对源码进行解释,运行效率不高。JSP在执行以前先被编译成字节码,字节码由Java虚拟机(JavaVirtualMachine)解释执行,比源码解释的效率高服务器上还有字节码Cache机制,能提高字节码的访问效率。第一次调用JSP网页可能稍慢,因为它被编译成Cache,后就快得多了。同时,JSP源程序不大可能被下载,特别是JavaBean程序完全可以放到不对外的目录中。(5)JSP的组件方式更方便,易于维护。JSP通过JavaBean实现了功能扩充,而且JavaBean更为简单。而ASP需要通过COM来扩充复杂的功能。在维护方面,COM必须在服务器上注册,如果修改了COM程序,就必须重新注册,甚至必须关机和重新启动。JavaBean则不需要注册,放在CLASSPATH包含的目录中就行了。另外JavaBean是完全OOP,可以针对不同的业务处理功能方便地建立一整套可重复利用的对象库,例如用户权限控制、E-mail自动回复等等。2.3数据库SQLserver2000MicrosoftSQLserver2000是由Microsoft公司开发的,简称SQLserver,由一系列相互协助的组件构成,能满足最大的web站点和企业数据处理系统存储和和分析数据的需求。它提供了丰富的图形化管理工具,简化了系统管理与操作。MicrosoftserverSQL2000具有如下特性:(1)其数据引擎提供完整的XML支持。(2)简单友好的操作方式。(3)多种形式的管理架构。(4)高度的可靠性、可扩展性和可用性。(5)数据库可以在不同的平台上使用。(6)易于安装、管理、部署和使用。正是基于此,本系统的开发,采用了SQLServer作为后台数据库。2.4数据库访问技术数据是一个系统中很重要的组成部分,要访问、操作数据库中的数据需要一个高效的方法。在传统的HTML页面中,访问数据库一般是通过公用网关接口(CGI)来实现,这种方式不仅开发困难,而且在出现大量并发请求时会显著地降低服务器的运行效率。而JDBC则更为简洁安全。JDBC(JavaDataBaseConnectivity,java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯JavaAPI编写数据库应用程序,JDBC向各种关系数据发送SQL语句就是一件很容易的事。换言之,有了JDBC,就不必为访问Sybase数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,或为访问Informix数据库又编写另一个程序等等,程序员只需用JDBCAPI写一个程序就够了,它可向相应数据库发送SQL调用。同时,将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行”的优势。简单地说,JDBC可做三件事:与数据库建立连接、发送操作数据库的语句并处理结果。本系统采用JDBC方式连接数据库,方便快捷。2.5开发平台与开发工具2.5.1MyEclipseMyEclipse是一个十分优秀的用于开发Java,J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开元产品的支持十分不错。MyEclipse目前支持JavaServlet,AJAX,JSP,JSF,Struts,Spring,Hibernate,EJB3,JDBC数据库链接工具等多项功能。可以说MyEclipse几乎囊括了目前所有主流开元产品的专属eclipse的开发工具。2.5.2TomcatTomcat是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache服务器,可利用它响应对HTML页面的访问请求。实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当运行tomcat时,它实际上作为一个与Apache独立的进程单独运行的。这里的诀窍是,当配置正确时,Apache为HTML页面服务,而Tomcat实际上运行JSP页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。JDK(JavaDevelopmentKit)是SunMicrosystems针对Java开发员的产品。自从Java推出以来,JDK已经成为使用最广泛的JavaSDK。JDK是整个Java的核心,包括了Java运行环境,Java工具和Java基础的类库。MyEclipse已经自带JDK,在MyEclipse只需配置好tomcat的就可以搭建好服务器。2.5.3MyEclipse里配置TomcatMyEclipse里配置Tomcat的步骤如下:(1)打开MyEclipse,在界面最上方的菜单栏里找到“window”,依次点“Preferences”→“MyEclipse”→“EnterpriseWorkbench”→“Servers”→“tomcat6.x”。(2)在右边“Tomcatserver”面板里选中“Enable”,然后点第一个“Browse…”按钮,选择自己电脑上Tomcat的主目录,再点“ok”,配置完成。(3)配置完成后,点Tomcat图标下的Start,MyEclipse里就会出现Tomcat的欢迎界面,说明配置成功。经过充足的准备,以上基本工作完成以后就可以进行系统的开发了,在下一章中,将重点介绍系统的设计分析。3需求分析3.1考试模块业务流程考试模块业务流程图如图3.1所示。任课教师任课教师考试方式教务处确定考试时间任课教师命题考试时间地点考试题目教研室主任考核审核意见试卷考务学籍科印卷登记表任课教师填写登记表登记表试卷印刷室试卷印刷试卷教务人员监考教师把试卷发给学生进行考试交卷学院教务办将卷密封装订任课教师阅卷学生成绩管理系统上报成绩试卷分、封图3.1考试模块业务流程图3.2总体目标在互联网技术飞速发展的今天,实现教学和管理的网络化已是势在必行,传统的考试方式也面临着变革,而网络考试则是一个很重要的发展方向。基于Web技术的网上考试可以借助于局域网或因特网进行,因此考试既可以在本地进行,也可以在异地进行,大大拓展了考试的灵活性。试卷可以根据题库中的内容组合抽取;而且可以采用大量标准化试题,从而系统可以自动判卷,大大提高阅卷效率;网上考试系统将试题内容和答案放在数据库服务器上,考生通过考生编码和密码登录到答题页面,这样考试的公平性、答案的安全性可以得到有效的保证。鉴于在我院目前还没有实现网上考试,因此,设计开发一套实用的网上考试系统对我院提高现代化教学管理水平意义非常重大。3.3具体目标(1)系统需要给用户提供对用户信息的维护工作,如用户的添加,修改,删除等。(2)系统需要实现考试命题人可根据试题的具体需要来录入试题信息,命题人可对试题科目,问题类型进行设置,其中问题类型中包括单选题设置,多选题设置,判断题设置,填空题设置,论述题设置及在试卷中各自具体比重,可添加,修改,最终组成标准试卷给考生答题。(3)系统可自主完成对客观题型的批卷和评分,减少批卷的时间和人为造成的错误,主观题由老师手动批卷,与客观题分数汇总后计算出考生成绩,在服务器端老师可查看考生成绩。(4)网上考试系统需要考生通过分配好的考生标识进入考试系统,进行答题,在规定时间内交卷,把答案存到数据库服务器上,解决以往考试收题的弊端和一些不利因素。(5)系统提供考试设置管理,对考生班级,试卷分配控制等,解决以往在考试设置上手工操作的不灵活性。系统功能数据流图如图3.2所示。图3.2系统功能数据流图3.4系统功能分析该系统使用JSP动态网页技术,结合SQLServer2000数据库,实现学校学生考试管理系统的开发。本系统是根据学校的日常工作而得到的需求,其系统功能主要是满足学校日常的工作,系统主要由系统数据库和学生考试管理应用程序两个部分组成。系统数据库是系统应用程序运行的基础,系统应用程序通过对系统数据库数据的操作实现其功能,系统数据库存储系统应用程序的运行结果。研究的内容:(1)系统应符合职工考试管理的规定,满足学校日常职工考试工作需要,并达到操作过程中的直观、方便、实用、安全等要求;(2)系统采用模块化程序设计方法,既便于系统功能的各种组合为修改,又便于未参与开发的技术维护人员补充、维护;(3)系统应具备数据库维护功能,及时根据用户需求进行数据的添加、删除、修改、备份等操作。(4)系统应采用B/S开发模式,能实时的满足学校学生远程考试的需要。该系统主要功能包括基础信息维护、在线考试、信息统计几部分。其中,基础信息维护主要包括学生信息、课程信息模块;课程信息主要包括选课信息、成绩查询、课程查询、等子模块;在线考试主要包括在线出题,在线考试等子模块;信息统计主要包括成绩统计等模块。该课题涵盖了信息录入、查询、统计、报表等功能。开发适合小型学校进行学生考试管理的系统。该系统主要功能包括基础信息维护、在线考试、信息统计几部分。其中,基础信息维护主要包括学生信息、课程信息模块;课程信息主要包括选课信息、成绩查询、课程查询、等子模块;在线考试主要包括在线出题,在线考试等子模块;信息统计主要包括成绩统计等模块。该课题涵盖了信息录入、查询、统计、报表等功能。3.5系统功能模块分析通过以上信息,学校学生考试管理系统需要为用户提供相关的查询、添加、删除等功能,并针对不同的用户权限,为用户开放不同的功能。如学生只允许进行查询操作,而不能进行增删操作,管理员也不具有人员增删的能力,只有管理员具有最大的自由度。下面是通通分析后得到的系统需要实现的功能:(1)学生管理;(2)试题管理;(3)成绩管理;(4)登陆管理;(5)管理员管理;(6)退出系统;(7)注册管理;(8)注册信息管理;(9)在线考试;(10)成绩查询;(11)登陆;(12)科目管理;(13)登陆日志管理。3.6数据库系统3.6.1ER图根据以上需求分析及用例分析,可得出以下ER图,如图3.3所示。图3.3系统ER图3.6.2数据库实现系统数据库中各个表格的设计结果如下各表所示。examrecord用户身份表见表3-1。表3-1examrecord用户身份表字段字段名数据类型长度说明1examrecordiddecimal9考试成绩编号2resultiddecimal9结果编号questioniddecimal9问题编号answervarchar10答案loginlog登陆日志表见表3-2。表3-2loginlog登陆日志表字段字段名数据类型长度说明1loginlogiddecimal9日志编号2usernamevarchar30用户名称successdecimal5是否登录成功isteacherdecimal5是否是管理员IPvarchar15IPlogtimedatetime8登陆时间options题目表见表3-3。表3-3options题目表字段字段名数据类型长度说明1questioniddecimal9编号2subjectiddecimal9问题编号contenttext16题目question用户身份表见表3-4。表3-4question用户身份表字段字段名数据类型长度说明1questionid数字问题编号2subjectid文本科目编号content文本内容qtype文本类型score文本分数rightanswer文本正确答案sdate文本日期result成绩表见表3-5。表3-5result成绩表字段字段名数据类型长度说明1resultiddecimal9成绩编号2studentiddecimal9学生编号subjectiddecimal9科目编号scoredecimal5分数starttimedatetime8开考时间endtimedatetime8交卷时间student用户身份表见表3-6。表3-6student用户身份表字段字段名数据类型长度说明1studentiddecimal9学生编号2usernamevarchar40用户名namevarchar40姓名passwordvarchar40密码addressvarchar40地址sexvarchar40性别emailvarchar40emailsubject科目表见表3-7。表3-7subject科目表字段字段名数据类型长度说明1subjectiddecimal9科目编号2namevarchar30名称[time]decimal5时间statedecimal5状态introtext16简介sdatevarchar10日期teacher管理员表见表3-8。表3-8teacher管理员表字段字段名数据类型长度说明1teacheriddecimal9管理员编号2usernamevarchar30用户名称passwordvarchar30密码3.7数据处理流程分析3.7.1身份验证与登录使用者通过登录界面进行身份验证。系统跟据使用者的登录方式,从数据库中查找用户ID和密码,并与使用者输入的用户ID和密码进行比较确认。若通过验证则进入相关角色的用户界面,并为用户分配一个Session(会话),当用户退出时,Session就会消失。若不通过验证则提示用户重新登录。3.7.2AdminPage管理员具有最高权限,可通过功能面板进行增、删、查等管理功能,如图3.4所示。图3.4管理员权限图3.7.3查询流程用户首先输入查询条件,然后系统访问数据库表进行校验,看查询关键字是否与数据字段相匹配,不一致则不显示任何信息,校验一致后返回查询内容至结果集,在页面中输出完整信息,如图3.5所示。否否是开始与数据字段是否匹配输入查询关键字输出完整信息结束无信息显示图3.5数据查询流程图3.7.4数据更新流程系统数据更新流程图如图3.6所示。否否是输入修改项的检索信息开始与数据字段是否匹配显示该数据内容修改、删除显示操作成功结束无法进行任何操作图3.6数据更新流程图3.7.5数据添加流程系统数据添加流程图如图3.7所示。是是否开始填写信息是否已存在添加数据入库结束显示错误信息图3.7数据添加流程图4概要设计4.1系统总体结构设计学校学生考试管理系统采用客户机/服务器(B/S)体系结构。系统应用程序由客户机执行,采用JSP技术与数据库实行连接,专门为web开发设计,数据处理由服务器完成,从而大大降低了网络通信负荷,提高了系统的整体效能。(1)B/S体系结构是利用超文本传输协议HTTP的消息传输机制,客户端通过浏览器访问服务器发出的服务请求,服务器进行响应处理后将响应结果返回给客户端。客户端就是网络浏览器,不需要任何软件的安装和维护就可以正常运作。可直接通过IP地址访问,网络浏览会显示用户界面。(2)运用Web数据库开发技术。功能层其实是表示层数据层之间的桥梁,因此对数据库的访问也是必不可少的。对数据库访问的技术有很多,比如ODBC、JDBC、ADO等。本系统采用微软提供的ADO.NET技术。微软提供的ADO.NET是继ADO之后最新的改进版。ADO.NET提供平台的互操作性以及可伸缩的数据访问能力。在.NET框架中,传送的数据是采用可扩展标记语言(XML,ExtensibleMarkupLanguage)格式。能够读XML格式的任何应用程序都可以处理这些数据。在ADO.NET中,层与层之间的通信相对简单,这是因为层是通过XML格式的数据集传送数据的。它比其它数据库访问技术性能更优越,运行更灵活,更适合网络考试考试的数据库访问。(3)运用JSP实现与数据库的连接,以JavaBeans和EnterpriseJavaBeans(EJB)组件包含商务和数据逻辑为基础,提供大量标签和一个脚本平台在HTML页面中显示回送内容。普通的HTML页面只依赖于web服务器,而JSP页面需要附加语言引擎分析和执行程序代码。程序代码的执行结果被重新嵌入带HTML代码中,然后一起发送给浏览器。JSP都是面向web服务器的技术,客户端浏览器不需要附加任何的软件支持。系统总体模型图如图4.1所示。客户端浏览器客户端浏览器数据库学校内部网JSP页面JavaBeans组件图4.1基于jsp的开发模型图该系统在实现过程中,主要采用COM组件和JSP数据库访问技术,如图4.2所示。浏览浏览查询统计维护用户在线考试其他操作退出报表图4.2系统实现图实施方案:作为该系统的用户,学校总部所有职能部门及其每位学生及所属单位的人力资源管理部门必须事先在系统中进行注册。为此,需要在系统中定义一个对象类——用户,对所有用户进行统一管理。该系统能够把用户组成用户组,通过用户组代替用户的授权登陆不同的应用模块。如将同一职能部门的学生组成用户组;除考试部门以外的所有职能部门组成一个用户组;将所有二级单位组成—个用户组等等。该子系统通过IE直接与数据库连接,用户通过浏览器注册即可。利用“附加函数”功能来构造用户所需的字段。即使目的表数据的来源不能从一张原表中得到,系统也可以通过构造数据源来实现多表对单表之间的数据传递。用户实施过程如图4.3所示。用户用户用户用户设置表单维护在线考试系统查询要求查询结果统计要求和统计结果图4.3用户实施图4.2数据字典学生基本信息表见表4-1。表4-1学生基本信息表名字:学生基本信息表描述:学生基本信息表编号:F1组成:studentid,username,name,password,address,sex,email教师基本信息表见表4-2。表4-2教师基本信息表名字:教师基本信息表描述:记录教师的资料编号:F2组成:teacherid,username,password考试科目信息表见表4-3。表4-3考试科目信息表名字:考试科目信息描述:考试科目信息编号:F3组成:subjectid,name,[time],state,intro,sdate考试题目信息表见表4-4。表4-4考试题目信息表名字:考试题目表描述:考试题目编号:F4组成:optionid,questionid,content课程信息表见表4-5。表4-5课程信息表名字:课程信息描述:课程信息。编号:F10组成:lessonid,lessonname,teacher,studentid考试结果信息表见表4-6。表4-6考试结果信息表名字:考试结果记录描述:考试结果记录。编号:F11组成:resultid,studentid,subjectid,score,starttime,endtime5详细设计5.1系统功能结构系统功能结构图如图5.1所示。在线考试系统在线考试系统系统后台系统前台系统后台系统前台用户管理考生管理用户管理考生管理试卷信息管理考试设置管理题库信息管理考试评分管理进入试卷答题用户密码修改添加用户信息考生用户密码修改添加用户信息考生信息管理试卷信息录入试卷信息的维护班级考试设置问题信息管理问题类型管理试题科目管理图5.1在线考试系统功能结构图系统结构图如图5.2所示。浏览网站浏览网站学生考试科目管理学生管理题库管理管理员管理成绩管理查询成绩管理员登录后经权限判断系统管理员图5.2系统结构图5.2接口设计5.2.1外部接口(1)用户界面接口在用户界面部分,根据需求分析的结果,用户需要一个和谐友好的界面。在界面设计上,采用了多种简便,便于操作的控件,做到简单明了,易于操作,并且注意到界面的布局,突出的显示重要以及出错信息。外观上也要做到合理化,考虑到用户多对WINDOW风格较熟悉,尽量向这一方向靠拢。在色彩方面考虑观看舒适程度颜色采用柔和的颜色,和操作过程的简单化。总的来说,系统的用户界面作到可靠性、简单性、易学习和使用。(2)数据库接口配置SQLServer2000与JAVA的编程语言接口是SQLServer2000DriverforJDBC驱动程序,JDBC技术的驱动程序共分4种:JDBC-ODBC桥接驱动程序,本地API部分JAVA驱动程序,JDBC网络纯JAVA驱动程序和本地协议纯JAVA驱动程序。本系统设计用的是本地API协议JAVA驱动程序,其配置如图5.3所示。数据库客户端 数据库服务器端JAVA应用程序JAVA应用程序JDBCAPIJDBC驱动DBMSDBMS接口服务器数据库图5.3系统设计配置图(3)硬件接口在输入方面,对于键盘、鼠标的输入,可用标准数据入/输出,对输入进行处理,输出在显示器上。(4)内部接口内部接口方面,各模块之间采用函数调用、参数传递、返回值的方式进行信息传递。内部接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在各模块间传输。5.2.2内部接口内部接口方面,各模块之间采用表单提交、超链接的方式进行信息传递。各模块可以通行引用类包调用相应的类中的方法,完成数据库的连接、查询、删除、添加、修改操作。5.3输入输出设计5.3.1输入设计格式中用字符C表示数据为字符型,C6表示字符串长为6位;用字符N表示数值型,N2表示整数2位无小数位,N6.2表示数据长6,整数位4位,小数位2位:登录用户输入设计表见表5-1。表5-1登录用户输入设计表输入名称:登陆用户表输入设备和介质:键盘、鼠标输入源:管理员输入时间和频率:每月一次输入信息量:共享范围:本系统使用登录用户输入格式及内容表见表5-2。表5-2登录用户输入格式及内容表数据项名称类型实际长度备注ID登陆N10自动生成IDC10密码C10用户角色C2登陆记录C1题库输入设计表见表5-3。表5-3题库输入设计表输入名称:题库输入设备和介质:键盘、鼠标输入源:管理员输入时间和频率:每月一次输入信息量:共享范围:本系统使用题库输入格式及内容表见表5-4。表5-4题库输入格式及内容表数据项名称类型实际长度备注IDN10自动生成试题名称C15编号N10学生信息输入设计表见表5-5。表5-5学生信息输入设计表输入名称:学生信息表输入设备和介质:键盘、鼠标输入源:管理员输入时间和频率:每月一次输入信息量:共享范围:本系统使用管理员信息输入设计表见表5-6。表5-6管理员信息输入设计表输入名称:管理员信息表输入设备和介质:键盘、鼠标输入源:管理员输入时间和频率:每月一次输入信息量:共享范围:本系统使用成绩信息输入设计表见表5-7。表5-7成绩信息输入设计表输入名称:成绩信息表输入设备和介质:键盘、鼠标输入源:管理员输入时间和频率:每月一次输入信息量:共享范围:本系统使用5.3.2输出设计学生信息输出设计表见表5-8。表5-8学生信息输出设计表输出名称:学生信息清单输出设备和介质:打印机.打印纸.输出类型:打印输出输出时间和步骤:每月输出一次一份输入格式和内容:准客户清单姓名性别学号生日职位手机email重要教育XXXXXXXXXXXXXXXXXX考试科目信息输出设计表见表5-9。表5-9考试科目信息输出设计表输出名称:考试科目清单输出设备和介质:打印机.打印纸.输出类型:打印输出输出时间和步骤:每月输出一次一份输入格式和内容:考试科目拜访清单科目名称日期学生编号成绩XXXXXXXX试卷信息输出设计表见表5-10。表5-10试卷信息输出设计表输出名称:试卷清单输出设备和介质:打印机.打印纸.输出类型:打印输出输出时间和步骤:每月输出一次一份输入格式和内容:试卷单清单试卷编号状态试卷名称考试人数生效日期应考人数实考人数学生编号难度教师编号XXXXXXXXXXXXXXXXXXXX5.4运行设计5.4.1运行环境操作系统:Windows7DBMS:SqlServer2000WEB服务器:Tomcat6.x体系结构:B/S5.4.2运行模块的组合(1)用户在浏览器中的地址栏中输入系统的主页回车,在用户名项输入用户(员工)自己的编号,在密码项输入密码,在验证项中输入验证码,单击登陆按钮将结果提交给服务器进行验证,验证通过进入主界面,可以进行其相应的操作。(2)服务器接收到用户发出的请求后,通过JAVABEAN中间件对后台数据进行访问。进行查询、打印报表等操作。5.4.3运行控制(1)运行控制将严格按照各模块请求方式调用。(2)在网络方面,客户在发出请求后,等待WEB服务器的确认收到请求,收到后,再次等待服务器发送回答数据,然后对数据进行确认。服务器在接到数据后发送确认信号,在对数据处理、访问数据库后,将返回信息送回客户机,并等待确认。5.4.4运行时间在软件的需求分析中,对运行时间的要求为必须对作出的操作有较快的反应。当网络负载量大时,对操作的反应可能受到影响。所以采用快速以太网络,实现客户机与服务器之间的连接,以减少网络在传输时的开销。服务器的性能非常重要,它会对数据库访问时间即操作时间的长短,影响可能会加大客户机操作的等待时间,因此需要使用性能高的WEB服务器和DB服务器,建议使用Pentium4处理器以上的PC机。总之,硬件对系统的速度的影响会大于软件的影响。5.5出错处理设计5.5.1出错输出信息(1)对于软件错误,输入数据后点击提交按键后,后出现错误提示窗口,然后给出错误提示,返回当前输入的窗口。(2)对于硬错误,可在出错的相应模块中输出简单的出错语句,并将程序重置。返回输入阶段。5.5.2出错处理对策(1)所有的客户机及服务器需要安装上不间断电源系统以防止由于停电或电压不稳所造成的数据库数据的丢失。如果真断电时,客户机不会有较大的影响。(2)在网络传输方面,可考虑建立一条成本较低的后备网络,用来保证当主网络断路时数据的通信。(3)在硬件方面需要选择比较可靠和稳定的服务器机种,己保证系统的可靠运行。6系统实现6.1登录模块登陆界面如图6.1所示。图6.1登陆界面6.2注册管理界面注册界面如图6.2所示。图6.2注册管理界面6.3学生管理界面学生管理界面如图6.3所示。图6.3学生管理界面6.4题库管理界面题库管理界面如图6.4所示。图6.4题库管理界面7用户手册7.1运行环境要求(1)操作系统:Windows7(2)数据库:MicrosoftSQLServer2000(3)运行环境:MyEclipse+Struts+Tomcat7.2系统安装与初始化系统安装运行步骤如下:(1)安装Tomcat5.0或以上的版本(2)安装MicrosoftSQLServer2000(3)安装MicrosoftSQLServer2000SP4补丁(4)将webroot下面有一个orims06222328文件,需要建立hrms数据库(sql2000),然后用此文件还原该数据库。(5)将源文件拷贝到Tomcat相应的文件夹下(6)安装MicrosoftSQLServer2000DriverforJDBC(7)启动Tomcat,在浏览器上输入http://localhost:8080/文件名,就可以运行系统了。7.3系统操作说明一定要安装一定格式,输入合理的数据,否则系统可能会发生某些不可预测的错误,系统没有进行优化,同时在线的用户要加以限制,不要有过多的用户同时在线,否则系统服务器可能承受不了,造成网络拥塞。7.4测试原则及测试方法概述进行软件测试是为了发现错误而不断执行程序的过程。或者说,软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例(即输入数据及其

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论