资源描述
摘要本系统实现了在线考试系统的主要功能,以无纸化的管理不但可以提高工作效率、减少监考人员数量、增强公平性等,而且可以实现学校或企业的低成本投入、高效率办公的宗旨。本在线考试系统,它包括有考生有效身份登录、新考生注册和报考、在线考试、查询成绩、考生管理、管理员登录及管理、题库管理、统计查询等功能。该系统主要介绍系统总体设计以及考生模块、教师模块、管理模块的实现,并建立了数据库。本系统主要采用上左右框架式,看起来清爽简洁。登录实现了考生、教师和管理员的登录,这是在线考试的前提;考生管理可以提供在线考试、查看成绩以及修改密码等基本功能;管理模块主要实现对管理员、教师、考生信息的管理和对成绩的统计查询。本在线考试系统主要采用在Dreamweaver嵌入Jsp动态网页技术的B/S结构设计,系统从安全性、易维护性等方面着手实现了后台管理端和前台客户端的分离。系统设计过程中用到了网页制作关键技术,如用框架和CSS样式表来控制布局,还用了JavaScript脚本语言实现前台浏览器端的校验功能。Jsp+Servlets模式是Web网站开发较为成功的解决方案,因此在本系统中也采用了这一模式来设计,也真正体会到了它的优势。关键词在线考试;数据库;题库AbstractThe present system of examinations on-line core functions of the system in order scripless management will not only improve efficiency and reduce the number of examiners, and enhance fairness, but also the realization of the business school or into low-cost, efficient office purposes.On-line examination of the system, which includes candidates have effectively logged, the new registration of candidates and applicants, on-line test, query results, the management of s-tudents, administrators and log management, bank management, statistical inquiries and other functions. The system introduces the system design as well as candidates module, teachers module, management module, and the establishment of the database. The present system is mainly used around the frame, look simple and refreshing. Log in to achieve the candidates, teachers and administrators of the registry, which is a prerequisite for on-line test; candidates managed to provide on-line test to see results, as well as to amend the basic functions, such as passwords; management module of the main administrators, teachers, students and information management Statistics on the results of the inquiry.On-line examination of this system is mainly used in Dreamweaver embedded dynamic pages Jsp technology B / S structure design, from the security system and easy to maintain, and other aspects of the realization of a back-and front-end management of the clients separation. System design process used to produce a page of key technologies, such as the framework and CSS style sheets to control layout, but also with the JavaScript scripting language to achieve front side of the browser check function. Jsp + Servlets model is more successful Web site development solutions, so the system is also used this model to design, but also realize that its real advantage.Key wordson-line testdatabasebank目录摘要IAbstractII第1章 绪论31.1 课题背景31.2 目的和意义41.3 系统设计思想4第2章 系统可行性分析62.1 系统操作流程图62.2 系统可行性分析82.2.1 技术可行性82.2.2 运行可行性9第3章 需求分析113.1 在线考试系统的数据定义11数据流图113.2 在线考试系统的功能分析12第4章 系统总体设计144.1 系统模块总体设计144.2 数据库设计154.2.1 数据库设计概述154.2.2 数据库数据分析164.2.3 数据库的详细设计16第5章 详细设计215.1 系统主界面设计215.2 考试模块功能设计225.2.1 考生登录225.2.2 考生注册、报考245.2.3 找回密码265.2.4 在线考试275.2.5 考生密码修改和成绩查询295.3 教师模块功能设计305.3.1 添加考题315.3.2 查询考题325.4 管理模块功能设计335.4.1 添加功能345.4.2 查询功能36第6章 系统测试与性能分析386.1 软件测试概念38测试的目的386.2 软件测试计划38测试步骤396.3 系统测试结果分析396.3.1 功能测试396.3.2 性能测试406.3.3 可用性测试40结论41致谢43参考文献44附录145第1章 绪论1.1 课题背景随着网络技术的飞速发展,全球已经进入了信息化、网络化的时代,在这个发展的过程中也包括了教育事业中的远程教育。现在很多国家都已经开设了远程教育,通过计算机网络实现异地教育和培训。目前计算机硬件技术的发展已经达到了相当高的水平。但是,远程教育软件的开发目前还处于起步阶段,随着这项技术的不断深入发展,就要求有更好、更完善的软件系统应用到远程教育当中去,这就给软件设计人员提出了更高的设计要求。我国已与世界信息高速公路接轨,企业通过计算机网络获得信息必将为企业带来巨大的经济效益和社会效益,企业的办公及管理都将朝着高效、快速、无纸化的方向发展。MIS系统的最终目的是使管理人员及时了解公司现状,把握将来的发展路径。而在线考试系统是管理信息系统的一种,所谓管理信息系统(MIS)系统,是一个由人、计算机及其他外围设备等组成的能进行信息的收集、传递、存贮、加工、维护和使用的系统。其主要任务是最大限度的利用现代计算机及网络通讯技术加强企业的信息管理,建立正确的数据,加工处理并编制成各种信息资料及时提供给管理人员,以便进行正确的决策,不断提高企业的管理水平和经济效益。在线考试系统在远程教育中是最难实现的环节。在我国远程教育虽然已经蓬勃地发展起来,但是目前学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。随着计算机应用的迅猛发展,网络应用不断扩大,如远程教育和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。1.2 目的和意义随着Web技术在各行各业的广泛应用,网络技术在教学管理中已充当重要的角色。在线考试系统的设计就是实现考试网络化的解决方案。传统考试方式在试题管理和批卷等方面上很浪费时间,且不易维护和管理。基于目前校园网建设逐步完善,大多数院校也已具备利用网络进行考试的条件,实现网上考试是一个发展趋势。开发网上考试系统就是希望充分利用网络资源,提高教学管理水平,减轻考务负担,提高工作效率等。同时在线考试系统可以借助于遍布全球的Internet进行。因此,考试既可以在本地进行,也可以在异地进行,大大拓展了考试的灵活性。缩短了传统考试要求教师打印试卷、安排考试、监考、收集试卷、评改试卷、讲评试卷和分析试卷,这个漫长而复杂的过程,使考试更趋于客观、公正。系统实现在线考试、即时阅卷、成绩查询以及考题和考生信息管理等功能的网络在线考试系统。1.3 系统设计思想本系统针对固定的群体考生、教师以及管理员进行设计与实现的中小型在线考试系统。该系统主要以方便考生、教师以及管理员使用,软件具有操作友好界面、基本功能稳定、运行速度较快、通过计算机技术、网络技术以及教育学的相关技术结合开发出客户端与服务器端,以方便快捷清晰的进行数据传输和实现功能。1. 实用性:系统以考生、教师以及管理员为需求目标,以方便考生、教师以及管理员为原则。根据考生、教师以及管理员的实际需求,来制定本系统该实现哪些功能。从考生角度出发通过实现注册、找回密码、修改密码信息、查询成绩等功能为考生服务,尽可能方便了考生的使用,满足考的需求;从教师的角度出发在完成相同的工作量的同时节约了教师的时间、提高工作效率还完成了工作量;从管理员的角度出发管理模块的信息一目了然,管理员工作起来方便快捷。总之,本系统有较强的实用性。2. 先进性:系统应用了现有成熟的计算机技术、网络技术、软件开发技术。以最新版本MyEclipse 6.5为主要开发环境,其丰富强大功能是成熟技术Severlet的有力后盾。3. 高可靠性:一个实用的系统同时必须是可靠的,在线考试系统通过合理的网络设计以及软、硬件优化选型,可保证系统数据传输的正确性。4. 高安全性:在设计中,将充分利用网络软、硬件提供的各种安全措施,既可以保证用户共享资源,同时也可保证关键数据的安全性。5. 采用标准技术:本系统的所有设计遵循国际上现行的标准进行,以提高系统的开放性。6. 可维护性:系统的设计要求方便维护,包括硬件的维护,软件的维护和网络的维护。7. 可扩展性及灵活性:系统的设计以方便未来业务的扩展和系统扩充为目标,系统要求能够方便的升级,充分保护系统的投资。8. 智能性:系统在设计时,充分考虑系统运行的智能性,在使用系统一段时间后,系统可以适应于任何局域网。第2章 系统可行性分析由于教育事业的高速发展,根据实际的市场调查再结合自身条件,设计在线考试系统的一系列功能。本系统实施后,应能够达到以下目标:1. 考生模块可以方便、快捷、灵活的实现考生注册、报考、登录、考试、查询成绩、修改密码等功能。2. 提供快速、准确的考生、教师、管理员信息和试题信息。3. 界面友好简洁,操作简单易行,查询灵活方便。4. 通过系统实施可提高考生考试效率、教师和管理员的工作效率,同时还节省了资源,也为环保工作进了一份力量。2.1 系统操作流程图在线考试系统的业务包括考生注册、报考业务,主要负责考生信息处理;考生考试业务,依据注册及报考的信息进行考试;题库管理业务,主要负责考试题的维护工作;管理员管理业务,主要对考生、教师及管理员的信息进行处理,以及负责考生的成绩统计查询工作。具体业务流图如图2-1所示:图2-1在线考试系统操作流程图1. 考生首先需要注册自己的信息以及报考科目等信息,在注册及报考成功之后,进入登录界面,在考生正确输入准考号和密码以后,接着应该进入考生信息界面。在该界面上包括四类:一类是当前考生考试模块,又一类是当前考生成绩的查询模块,再有一类是当前考生修改密码模块,最后是退出该主界面。考生点击【在线考试】以后,进入准备考试界面,系统智能显示当前考生准考号及考试科目,当考生阅读了考试规则并同意该规则,即可以进行考试,否则不能进行考试。当进入考试界面时,首先选择要考的类型,才开始考试,并由计算机随机提取试卷,并开始进行倒计时。考生进行考试时,不能进行刷新,否则答题结果会被清空,当考生答完试题后交卷,当考试时间用完时强行交卷,并回到主界面。考生提交答卷后,由计算机进行处理判卷,得出考试分数,显示出来,并把该生考试记录存入数据库。考生点击【成绩查询】以后,进入查询成绩界面,本系统设计了自动显示成绩功能,考生只能查询自己的考试成绩。查询完毕后,返回主界面。考生点击【修改密码】以后,进入密码修改界面,考生输入旧密码、新密码和确认密码后,系统会根据该考生的准考号确认考生输入旧密码与原密码是否相符,如不符就会进入错误页面,提示非法考生操作,如相符就修改考生的密码信息,并返回考生主页面。2. 以上是系统进行考试功能的部分,要对系统进行管理,如题库管理、考生信息管理、管理员信息管理、统计查询等就需要设计一些管理界面。要进行管理首先要有教师和管理员登录验证,通过考生登录界面中的管理员登录和教师登录链接来打开各自的登录界面的,三个登录虽然看起来相似,但都是从不同的表中提取数据进行验证的,以便于系统扩充和增加安全性。教师登录以后,显示的是一个有上下结构,也有左右结构的界面。上面是标题,用来告诉教师当前的位置,左边是一个竖着的菜单,根据教师的不同需要,选择要用的功能,右边就显示该功能要实现的操作。其中左边界面应该包括题库信息管理等内容。题库管理界面用来添加、查询、修改、删除考试题等功能,以方便对考试题的管理。管理员登录以后,同教师的管理方式一致。上面是标题,用来告诉管理员当前的位置,左边是一个竖着的菜单,选择要用的功能,右边就显示该功能要实现的操作。其中左边界面应该包括考生信息管理、教师信息管理、管理员信息管理、考试结果统计等内容。考生信息管理的界面,实现对考生信息的查询和删除等功能。教师信息管理界面用来添加、查询、修改、删除教师等功能。管理员信息管理界面用来添加、查询、修改、删除管理员功能。统计查询界面可以对考生的考试进行记录、排榜等功能的实现,方便了管理员分析考生的考试情况。2.2 系统可行性分析本在线考试系统的目标确定后,可以从技术可行性和运行可行性两个方面对能否实现新系统目标进行可行性分析。2.2.1 技术可行性对目前现有技术进行评价,以能利用现有技术进行系统开发及系统实施。计算机网络技术的发展和计算机硬件性价比的不断提升,使计算机全面应用于在线考试管理的各个环节成为可能。B/S模式、Severlet、JavaScript等技术在国内各行各业的信息管理系统开发中已经被广泛采用,实践证明这些技术都非常适合在线考试系统的开发。本系统主要开发工具简介如下:1. MyEclipse是一个专门为Eclipse设计的商业插件和开源插件的完美集合。MyEclipse为Eclipse提供了一个大量私有和开源的Java工具的集合,很大程度上解决了各种开源工具的不一致和缺点问题,并大大提高了Java和JSP应用开发的效率。MyEclipse的实际价值来自其发布的大量的可视化开发工具和实用组件。如CCS/JS/HTML/XML的编辑器,帮助创建EJB和Struts项目的向导并产生项目的所有主要的组件如Action/Session Bean/Form等,此外还包含编辑Hibernate配置文件和执行SQL语句的工具。新版本的MyEclipse提供了AJAX/WEB 2.0 Tools、UML Modeling With Full Roundtrip Engineering、Split-screen Web Designer For YSIWYG Development、Visual JSF & Struts Development、Hibernate Tools、Spring IDE Integration等功能。这些功能毫无疑问可以简化Web应用开发,并对Struts、Hibernate、Spring等开发框架的广泛应用起到了非常好的促进作用。此外MyEclipse还包含大量由其他组织开发的开源插件,Genuitec增强了这些插件的功能并且撰写了很多实用文档便于开发者学习。综上所述,MyEclipse插件对加速Eclipse的流行起到了很重要的作用,并大大简化了复杂Java/JSP应用的开发。2. SQL Server 2000最初是由Microsoft Sybase和Ashton-Tate三家公司共同开发的。SQL Server 2000,是Microsoft公司推出的SQL Server数据库管理系统的新版本。该版本继承了SQL Server 7.0 版本的优点,同时又比它增加了许多更先进的功能,具有使用方便、可伸缩性好、与相关软件集成程度高等优点。SQL Server 2000是运行于Windows操作系统的、面向分布式客户机/服务器结构的关系型数据库管理系统,是新一代电子商务、数据仓库和数据库。SQL Server 2000是一种采用T-SQL语言,用来存储和管理数据。SQL Server 2000解决方案包含三部分内容:数据库引擎、管理工具、数据库。2.2.2 运行可行性运行可行性是指该系统对使用机构的影响,包括对现有人员和机构、设施、环境等方面的适应性和可行性。国内自上世纪80年代末就开始使用信息管理系统,经过20年左右的发展,我国绝大多数高校都有信息管理系统科,大部分高校都使用过单机版计算机软件来完成考试管理工作。调查发现华东地区近95%的学校都在20世纪90年代中期开始应用信息管理系统。而且学校老师的自身素质也为在线考试系统的运行过程提供了可靠保证。系统运行平台设置包括硬件环境和软件环境平台1. 硬件环境:台式计算机(PC)一台,如表23所示。表2-3运行环境硬件配置硬件配置处理器Pentium III800以上内存1G以上硬盘空间20G以上2. 软件环境:Windows XP Professional操作系统第3章 需求分析需求是用户对系统提出的要求,它可能是原始的、抽象的、细化的。一个软件系统的开发必须以一组需求作为开发点。需求分析则是在综合分析用户对系统提出的如功能、性能、数据等方面需求的基础上,构成一个从抽象到具体的逻辑模型,来表达软件将要实现的需求,为下一阶段的软件设计提供设计基础。3.1 在线考试系统的数据定义需求分析过程是整个系统开发的重要阶段,分析的成功与否,决定着整个系统功能的完善性以及稳定性。在该阶段需求分析人员需要确定整个产品的功能要求,并且将现实事务抽象成对象并建模。3.1.1 数据流图在线考试系统数据流图如图3-1所示。图3-1考生模块数据流图3.2 在线考试系统的功能分析根据企业及高校管理的实际要求和考试系统的基本功能管理,结合考试管理的实现过程,本系统提供给考生、教师、管理员群体使用,不同的群体所能完成的功能不同,下面是本系统要实现的功能:1. 考生主要是参与考试、完成试卷、查询成绩以及更新自己的信息等。该模块要掌握本考试系统范围内所有考生的基本情况,包括编号、姓名、密码、性别、年龄、身份证号等信息。(1) 注册功能,考生通过注册功能,可以将考生信息保存到本系统中,从而能够进行报考、考试等功能。(2) 报考功能,在考生注册成功之后,直接进入报考界面进行报考,在这个界面,将实现把考生要报考的信息保存到数据库中,为考生考试时提供信息。(3) 登录功能,考生在注册和报考之后就可以登录到本系统,系统通过考生输入的准考号和密码进行验证登录。(4) 在线考试,系统自动查询该考生的报考信息,并显示相应的考试题目,让考生进行考试,当考试时间到了之后系统自动提交试卷。(5) 成绩查询,在考生考完试之后,系统自动批阅试卷,当考生点击成绩查询时,就会显示出考生考试的相关成绩信息。(6) 修改密码,除了考试之后,还为考生提供了修改密码的服务,让考生可以修改自己的密码信息,只要输入考生的旧密码,新密码以及确认密码即可以修改考生密码信息了。2. 题库的更新由教师来完成,教师可以创建考题、删除无用的考题、进行题库维护,而考生不允许对试题进行更新操作。(1) 教师登录,系统通过教师名和密码验证教师是否为指定教师,当验证后为指定教师就能成功登录,进行管理题库。(2) 管理题库,教师成功登录后可以对试题进行添加、查询、修改、删除操作。3. 管理员可以对管理员信息、教师信息、考生信息进行维护和更新,还对成绩信息进行统计查询等;试卷是由本系统自动生成的,管理员不对其进行任何操作。(1) 管理员登录,管理员需要通过管理员姓名和密码进行登录到本系统。(2) 管理员信息管理,管理员可以对管理员的管理员的信息进行添加、查询、修改和删除。(3) 教师信息管理,管理员可以对教师信息的信息进行添加、查询、修改、删除等操作。(4) 考生信息管理,管理员可以管理考生的信息,如查询、修改、删除等。但是不能添加,因为考生只是通过注册进行添加。第4章 系统总体设计总体设计又称为概要设计或初步设计。主要是用来阐述系统的整体设计思想,各个模块所要实现的主要功能,数据库设计的基本目标以及数据库中表与表之间的相互联系。总的来说总体设计是概要地回答了系统应该如何更好的实现。4.1 系统模块总体设计本在线考试系统是专门用于考生注册、登录、参加在线考试和教师进行试题录入、修改、删除以及管理员对管理员信息、教师信息、考生信息维护、更新和对成绩的统计查询。它应该具有开放性、方便性和灵活性。考生进行有效的身份验证登录后,选择考试科目,并要求在规定的时间内进行答题,当达到规定的时间后,系统将自动提交试卷。一旦考生做完交卷后便能立即看到自己的考试成绩,并且其分数将被记入库中以供审核和查阅;另外,还可完全由计算机自动灵活、随机的抽取试题库中的各类试题组成各种形式的试卷,其内容会随着库中试题的改变而改变,而且,不同的考生生成的试题是不同的,系统功能如图4-1所示。图4-1系统功能结构图4.2 数据库设计4.2.1 数据库设计概述系统总体结构功能模块设计后,就要对数据库进行设计了。支持管理信息系统的数据库系统由模式、子模式、应用程序、数据库和数据库管理系统等几部分组成,其中除数据库管理系统可以从现有产品中选购外,外模式、子模式、应用程序、数据库等则必须根据用户的具体要求进行分析和设计,这项工作称为数据库设计,它的核心问题是如何从系统的观点出发建立一个数据模式,使其满足以下几个条件:1. 符合用户的要求,即能正确地反映用户的工作环境,该环境包括拥护需处理的所有“数据”,并支持用户需进行的所有“加工”。2. 与所选用的数据库管理系统所支持的数据模式相匹配。3. 数据组织合理,应易于操作,易于维护,易于理解。为管理信息系统设计一个数据库系统通常包括如下几个步骤:1. 考生需求分析;2. 基本数据库结构的设计;3. 中间数据库结构的设计;4. 与应用程序的接口。4.2.2 数据库数据分析数据分析过程同数据库的逻辑结构和物理结构密切相关,需要确定、编制、组织、筛选应用程序所使用的信息。它以一种能够分析和分类的方式来捕获用户的所有信息,这使得某一模型可以直接转化成数据库结构。我们使用一种信息建模技术,这种技术是通过实体、关系、属性三种基本对象来定义信息。实体是需要维护和使用的相关特性的集合体;属性是实体的特性或特征;关系是实体之间的联系,关系为实体记录(实例)之间的联系和交互作用方式建立了模型。要确定实体和关系的性质,用户必须确定单个实体和他们相关的属性。为每个对象定义一个完整的与商业相关的描述以及他单独使用的要求,这也包括确定此实体是否使用应用程序的永久需求,每种关系的基本定义使用了商业定义和与关系相连接的需求。在为实体确定相关的属性过程中,也需要确定此实体的主键和索引,并且要确定在每个实体中怎样组织这些属性,确定属性的数据类型和它是否为空值。在高层次的描述过程中,还可以确定所有扩展属性信息,包括长度、格式、编辑风格、校验规则和初始值。单独实体的属性被组织起来,用户就能够开始以某一种组织方式来给实体分类。用户必须通过关系,来为实体分组的方式确定分类模式,这是抽象化的初始层,或者说是通过隐藏模糊的信息来提高对分析的理解,通过将数据分类成组,就产生了相关分组的不同类型,这样,更加易于观察和分析。4.2.3 数据库的详细设计在设计数据库时,应考虑以下事项:1. 数据库的用途及该用途将如何影响设计,应创建符合用途的数据库计划。2. 数据库规范化规则,防止数据库设计中出现错误。3. 对数据完整性的保护。4. 数据库和用户权限的安全要求。5. 应用程序的性能需求,设计数据库时必须利用SQL Server 2000中能够提高性能的功能。对于性能而言,在数据库大小和硬件配置之间权衡也是很重要的。数据库E-R如图4-2所示。图4-2数据库E-R图根据对数据库的数据分析,本在线考试系统的数据库命名为:onlineES,在本数据库中建立的表信息如下。考生表(student)如表4-1所示。表4-1student(考生表)序号英文名中文名类型长度(字符)1sid考生准考号VarChar20字节2sname考生姓名VarChar8字节3spwd考生密码VarChar20字节4ssex考生性别VarChar2字节5squestion考生提示问题VarChar20字节6sanswer考生提示答案VarChar20字节7scard考生身份证号Varchar18字节教师表(teacher)如表4-2所示。表4-2teacher(教师表)序号英文名中文名类型长度(字符)1tid教师IDint4字节2tname教师姓名VarChar8字节3tpwd教师密码VarChar20字节4tsex教师性别VarChar2字节5tcard教师身份证号Varchar18字节管理员表(janitor)如表4-3所示。表4-3janitor(管理员表)序号英文名中文名类型长度(字符)1jid管理员IDint4字节2jname管理员名字VarChar8字节3jpwd管理员密码VarChar20字节4jsex管理员性别VarChar2字节5jcard管理员身份证VarChar18字节章节表(zhangjie)如表4-4所示。表4-4zhangjie(章节表)序号英文名中文名类型长度(字符)1zjid章节IDint4字节2zjname章节名字VarChar20字节3kmid科目IDint4字节单选题表(single)如表4-5所示。表4-5single(单选题表)序号英文名中文名类型长度(字符)1sigid单选题IDint4字节2sigquestion单选题问题VarChar200字节3saA选项VarChar200字节4sbB选项VarChar200字节5scC选项VarChar200字节6sdD选项VarChar200字节7siganswer单选题答题Varchar2字节8zjid章节IDint4字节科目表(kemu)如表4-6所示。表4-6kemu(科目表)序号英文名中文名类型长度(字符)1kmid科目IDint4字节2kmname科目名字VarChar20字节3author科目作者VarChar8字节4press出版社VarChar20字节5length考试时间长度int4字节成绩表(grade)如表4-7所示。表4-7grade(成绩表)序号英文名中文名类型长度(字符)1gid成绩IDint4字节2single单选成绩int4字节3sid考生IDVarChar20字节报考表(baokao)如表4-8所示。表4-8baokao(报考表)序号英文名中文名类型长度(字符)1bkid报考IDint4字节2bkname报考名字VarChar20字节3sid考生IDVarChar20字节4kmid科目IDint4字节第5章 详细设计详细设计的主要任务是确认开发平台所需的系统配置,为每个模块确定采用的完成方法,选择适当的开发工具表达完成系统设计的过程,写出模块的详细过程性描述,确定每一模块使用的数据结构。详细设计的目标是实现模块功能逻辑上的正确性与算法运用描述的完整性。5.1 系统主界面设计本系统分为考试模块、教师模块、管理模块三个部分,对于考试模块的的主界面简单明了,通过图片进行链接到各个功能子模块,而教师和管理模块都是上左右结构的界面,上面部分显示系统名称,左面部分罗列了模块的全部功能,右面部分为用户区域,即显示当前操作的使用窗口。因此主界面分为两个部分显示:1. 考试模块的主界面如图5-1所示。图5-1考试模块主界面2. 教师、管理模块主界面如图5-2所示。图5-2管理模块主界面5.2 考试模块功能设计考试模块程序流程图说明了考生从开始进入系统到结束的整个流程走向,下图为考试模块程序流程图如图5-3所示。图5-3考试模块程序流程图5.2.1 考生登录考生登录是考生进入本系统的窗口,要进入本系统首先看到的就是考生登录界面,通过考生登录界面可以进入注册和报考、报回密码、进入管理员和教师登录界面,具体内容如图5-4所示。图5-4考生登录图1. 实现目标在考生进行登录的时候,考生需要填写考生准考号、准考证密码等信息。这些信息将与考生信息表中的考生信息进行比较,当考生的要登录信息与考生信息表中的信息一致时,考生可以通过登录并跳转到下一页,当信息不一致的时候,不能通过登录并返回到登录页面,重新填写考生要登录信息,这样确保只有注册过的考生可以顺利登录自己的功能界面。点击“重置”按钮考生所填写的内容将被全部清空,考生可以进行重新填写;按照相应提示要求填写完要登录的信息填写后点击“登录”按钮系统将把考生信息送到后台进入处理。成功后跳转页面。2. 实现过程窗体名:index.jsp考生登录页面(index.jsp)如表5-1所示。表5-1考生登录控件信息列表名称主要属性设置作用sid输入考生准考号信息spwd输入考生准考证密码信息Submit提交按钮Reset重置按钮5.2.2 考生注册、报考当考生第一次进入本系统时,需要注册到本系统中,方便在本系统中实现各种功能,在注册之后,需要进行报考,将考生的报考信息保存到数据库中。考生注册界面如图5-5所示。图5-5考生注册图考生报考界面如图5-6所示。图5-6考生报考图1. 实现目标在考生进行注册功能操作时,考生进行准考号、考生姓名、密码、确认密码、提示问题、提示答案、性别、身份证号码等相关信息的填写。这些信息将存储在考生信息表中,以作日后考生更新和系统核对,确保考生信息填写的正确性。点击“取消”按钮考生所填写的内容将被全部清空,考生可以进行重新填写;点击“退出”按钮考生将放弃注册操作返回到考生登录界面;按照相应提示要求填写完注册信息后点击“注册后报考”按钮系统将把考生信息存储到数据库中。同时跳到考生报考界面,在该界面中考生准考号为只读属性,考生只需要选择报考的科目和名称即可“报考”。2. 实现过程窗体名:register.jspbaokao.jsp考生注册页(register.jsp)如表5-2所示。表5-2考生注册主要控件信息列表名称主要属性设置作用sid输入/显示考生准考号信息spwd输入/显示考生密码信息Spwd1输入/显示考生确认密码信息squestion输入/显示考生提示问题信息sanswer输入/显示考生提示答案信息sname输入/显示考生姓名编号信息ssex输入/显示考生性别名称信息scard输入/显示考生身份证号信息Submit1onclick=return fun()提交注册并跳转到报考按钮Reset重置按钮Submit2onclick=window.close()退出按钮考生报考页(baokao.jsp)如表5-3所示。表5-3考生报考主要控件信息列表名称主要属性设置作用sidreadonly=true显示考生准考号信息bkname选择考生报考名称信息kmid选择考生科目名称信息SubmitonSubmit=ruturn fun()提交报考信息按钮Reset重置按钮5.2.3 找回密码找回密码是在考生登录界面中链接而来的,考生进入本系统的第一个窗口,当考生忘记密码无法登录时,就选择找回密码链接,通过找回密码界面可以除密码以外的其它考生信息,来帮助找回考生的密码信息,具体内容如图5-7所示。图5-7考生找回密码图成功找回密码如图5-8所示。图5-8考生找回密码图1. 实现目标考生进行找回密码功能操作时,考生需要填写准考证号码、密码提示问题、密码提示答案信息。系统将这些信息与存储在考生信息表中的考生信息进行比对,寻找与考生输入的信息相符的考生信息,当系统找到符合条件的记录时,就把密码信息返回给考生,如果找不到符合条件的信息时,提示考生该准考证号码不存在,请重新输入查找。2. 实现过程窗体名:zhaohuimima.jsp找回密码页面(zhaohuimima.jsp)如图5-4所示。表5-4考生找回密码主要控件信息列表名称主要属性设置作用sid输入/显示考生准考号信息squestion输入/显示考生提示问题信息sanswer输入/显示考生提示答案信息Submit提交考生信息按钮Reset重置按钮5.2.4 在线考试当考生顺利登录本系统之后,就进入了考试模块的主界面,在这里选择在线考试时,就会显示考试规则及考试信息,如图5-9所示。图5-9准备考试图当考生接受考试规则之后,方可开始考试,如图5-10所示。图5-10在线考试图1. 实现目标考生进入准备考试界面之后,会出现考试规则和考试信息,当考生阅读考试规则和考试信息之后方可进行考试,如果考生不阅读考试规则系统会提示需要考生阅读考试规则信息,如阅读了考试规则并选择“我接受”才能进入下个页面。2. 实现过程窗体名:zhunbeikaoshi.jspsingle.jsp准备考试页面(zhunbeikaoshi.jsp)如表5-5所示。表5-5准备考试主要控件信息列表名称主要属性设置作用textareareadonly=true显示考生的考试规则dlcheckbox选择接受复选钮sid显示考生准考号信息bkname显示考生报考名称信息SubmitonSubmit=ruturn fun()提交报考信息按钮Reset重置按钮考生考试页面(single.jsp)如图5-6所示。表5-6考生考试主要控件信息列表名称主要属性设置作用sid1readonly=true显示考生准考号信息thetimeonload=startclock()选择接受复选钮bknamereadonly=true显示考生报考名称信息id显示单选按钮组Submit提交考题信息按钮5.2.5 考生密码修改和成绩查询除了在线考试之后,在考生登录了之后,还有考生密码修改和查询成绩功能,考生密码修改如图5-11所示。图5-11考生密码修改查询成绩功能如图5-12所示。图5-12考生成绩查询1. 实现目标考生进入密码修改界面时,考生需要进行考生旧密码、考生新密码、考生确认密码的填写。这些信息系统会暂时存储起来,并调出该考生的信息进行检验,确认无误 后将暂存信息写入考生信息表。考生进入查询成绩界面时,系统会自动显示该考生的考试成绩信息,无需要考生输入任何信息。2. 实现过程窗体名:xuigaimima.jspgrade.jsp修改考生密码页面(xuigaimima.jsp)如表5-7所示。表5-7修改考生密码主要控件信息列表名称主要属性设置作用oldspwd输入/显示考生旧密码信息spwd输入/显示考生新密码信息spwd1输入/显示考生确认密码信息SubmitonSubmit=ruturn fun()提交信息按钮Reset重置按钮修改考生密码页面(xuigaimima.jsp)如表5-8所示。表5-8寝室费设置主要控件信息列表名称主要属性设置作用sidvalue=$a0显示考生准考证号信息singlevalue=$a1显示考试成绩信息sumgradevalue=$a5显示考试总成绩信息argevalue=$a6显示考试平均成绩信息5.3 教师模块功能设计教师模块程序流程图说明了教师从开始进入系统到结束的整个流程走向,下图为教师模块程序流程图如图5-13所示。图5-13教师模块程序流程图5.3.1 添加考题在教师通过身份验证成绩登录了之后,可以对题库信息进行管理,其中添加考题如图5-14所示。图5-14添加考题图1. 实现目标在教师成绩登录之后,进入教师管理的主页面,选择添加单选题后,在添加单选题页面,教师选择要添加试题的所属章节,并进行问题、A选项、B选项、C选项、D选项、答案的填写。点击“添加”按钮系统将这些信息存储到题库信息表中。2. 实现过程窗体名:addsingle.jsp添加单选题页面(addsingle.jsp)如表5-9所示。表5-9添加单选题主要控件信息列表名称主要属性设置作用zjid输入/显示章节IDsigquestion输入/显示单选题问题sa输入/显示A选项sb输入/显示B选项sc输入/显示C选项sd输入/显示D选项siganswer输入/显示单选题答案Submit提交信息按钮Reset重置按钮5.3.2 查询考题在添加考题之外还有查询考题功能,在这个界面中,又包括了修改和删除功能,如图5-15所示。图5-15单选题查询图1. 实现目标:教师进行查询考题功能操作时,教师填写查询条件信息进行查询,当教师什么也不填写的时候系统将查询全部信息进行查询。2. 实现过程窗体名:selectsingle.jsp查询考题(selectsingle.jsp)如表5-10所示。表5-10查询考题主要控件信息列表名称主要属性设置作用sigid显示单选题的ID信息zjid显示章节ID信息Query查询按钮firstfenye(first,selectsingle)显示第一页按钮pageUpfenye(pageUp,selectsingle)显示上一页按钮pageDownfenye(pageDown,selectsingle)显示下一页按钮last1fenye(last1,selectsingle)显示最后一页按钮5.4 管理模块功能设计教师模块程序流程图说明了教师从开始进入系统到结束的整个流程走向,下图为教师模块程序流程图如图5-16所示。图5-16管理模块程序流程图5.4.1 添加功能在管理模块中管理员实现对管理员、考生、教师信息的管理,管理主要是通过增、删、改、查操作完成的,添加功能如图5-17所示。图5-17管理员信息添加1. 实现目标管理员进入管理模块之后,在管理模块的主界面结构的左边显示了管理模块的全部功能,在这里选择添加新管理员,在随后出现的添加管理员界面中,管理员进行管理员姓名、管理员密码、确认密码、性别、身份证号等的填写。点击“添加”按钮系统将这些信息存储到管理员信息表中。2. 实现过程窗体名:addjanitor.jsp添加管理员(addjanitor.jsp)如表5-11所示。表5-11费用添加主要控件信息列表名称主要属性设置作用jname输入/显示管理员名称信息jpwd输入/显示管理员密码信息jpwd1输入/显示确认密码信息jsex输入/显示性别信息jcard输入/显示身份证号信息5.4.2 查询功能和教师的查询功能一样,在查询功能中,还包括了修改、删除的链接,查询功能如图5-18所示。图5-18管理员信息添加3. 实现目标管理员选择查询管理员信息之后,进行查询时,管理员要填写查询条件信息进行查询,当管理员什么也不填写的时候,系统将显示全部信息供管理员进行查阅。4. 实现过程窗体名:selectjanitor.jsp查询管理员信息页面(selectjanitor.jsp)如表5-12所示。表5-12查询管理员主要控件信息列表名称主要属性设置作用jid输入/显示管理员ID信息jname输入/显示管理员姓名信息Query查询按钮firstfenye(first,selectjanitor)显示第一页按钮pageUpfenye(pageUp,selectjanitor)显示上一页按钮pageDownfenye(pageDown,selectjanitor)显示下一页按钮last1fenye(last1,selectjanitor)显示最后一页按钮第6章 系统测试与性能分析系统在经过需求分析、总体设计、详细设计等阶段的开发后,在编码过程中和编码之后,都要进行测试。测试阶段要进行系统全方位的测试与性能分析,查找出系统中存在的问题和漏洞,并及时的改正。使系统在投入实施之后能够正常运行,并且能能达到开发前所预计的性能效果。6.1 软件测试概念软件测试即使用人工或者自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。它是帮助识别开发完成的计算机软件整体或部分的正确度、完全度和质量度的软件实现过程。总之软件测试贯穿整个软件开发生命周期、对软件产品或阶段性产品进行验证和确认的活动过程,其目的是尽快尽早地发现在软件产品中所存在的各种问题与用户需求、预先定义的不一致性。6.1.1 测试的目的明确测试的目的是一件非常重要的事,因为在现实世界中对测试工作存在着许多模糊或者错误的看法,这些看法严重影响着测试工作的顺利进行。软件测试的目的是尽可能多地发现软件产品(主要是指程序)中的错误和缺陷。有人认为测试是为了证明程序是正确的,也就是说程序不再有错误,事实证明这是不现实的。因为要通过测试来发现程序中的所有错误就要穷举所有可能的输入数据,检查它们是否产生正确的结果。例如,一个需要3个16位字长的整型输入数据的程序,输入数据的所有组合情况大约有31014种,若每组数据的测试时间为1ms,那么即使一年365天,每天24小时地测试,也大约需要1万年的时间。6.2 软件测试计划软件测试计划中包括软件测试的步骤及软件测试的基本方法,通过对计划的分析,找出适合本网站软件测试的相应方法,进行更好的测试。6.2.1 测试步骤测试过程按4个步骤进行,即单元测试、集成测试、确认测试和系统测试。1. 单元测试,单元测试即集中对用源代码实现的每一个程序单元进行测试,检查各个程序模块是否正确地实现了规定的功能。 2. 集成测试,集成测试是把已测试过的模块组装起来,主要对与设计相关的软件体系结构的构造进行测试。 3. 确认测试,确认测试则是要检查已实现的软件是否满足了需求规格说明中确定了的各种需求,以及软件配置是否完全、正确。 4. 系统测试,系统测试是把已经经过确认的软件纳入
展开阅读全文