基于BS架构的雅思的在线考试系统的设计与实现_第1页
基于BS架构的雅思的在线考试系统的设计与实现_第2页
基于BS架构的雅思的在线考试系统的设计与实现_第3页
基于BS架构的雅思的在线考试系统的设计与实现_第4页
基于BS架构的雅思的在线考试系统的设计与实现_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

1、. . . . 1 / 27论文摘 要随着信息技术的发展,教育网络化已经渗透到各个领域。作为对传统考试方式的改革,网络化考试是近年来研究的一个热点课题。在线考试系统是网络化考试系统的重要组成部分,本论文的主要工作是研究并实现一个在线考试系统。该系统由学生考试模块,教师管理模块两部分组成。可允许学生和教师在客户端使用浏览器通过Internet访问该系统数据库,其中学生考试模块具有在线考试的功能,教师管理模块具有添加试题、试卷管理、学生信息管理、批阅试卷等功能。本系统利用 Windows XP 作为开发平台,JSP 作为开发技术,后台数据库使用SQLSERVER2000 实现连接;设计的软件综合了

2、具有一定代表性的在线考试系统的模式。在中间层采用的技术主要有 JSP。最终,该系统完成了课题设计要求的任务,达到了简化试卷的出、答、改、管理的目的。关键词:关键词: 在线考试 JSP SQLSERVER2000. . . . 2 / 27ABSTRACTABSTRACTWith the development of information technology, education network has infiltrated into various fields. As a way to the traditional examination of the reforms, in rec

3、ent years the network is on the examination of a hot topic. Online network examination system is an important component part of this papers main task is to study and the realization of online examination system. This system consists of students and teachers management module exam module two parts. A

4、llows students and teachers in the client browser through the use of Internet SQLServer2000 the database system, including test module is online examination function, the teacher management module is added test, examination management, information management, the students read papers, etc. This syst

5、em uses Windows XP as development platform, JSP as the development of technology, the backend database using SQLSERVER2000 realize connecting, The software design of integrated with typical online examination system model. In the middle of the main technology using JSP. Finally, this system has comp

6、leted the task, design requirements subject to simplify the papers, and answer, change management, purpose.KeyKey word:word: online examination JSP SQLSERVER2000. . . . 3 / 27目目 录录第一章绪论 1 11.1 开发背景 11.2 目的与意义 11.3 系统的开发工具 2第二章需求分析 4 42.1 问题分析 42.2 方案选择 42.2.1 JSP 优点:42.2.2 SQLServer2000 简介 4第三章系统总体设

7、计 6 63.1 系统功能设计 63.1.1 系统结构图 63.1.2 系统功能 63.2 系统功能流程图 7第四章数据库设计 10104.1 系统 E-R 图 104.2 数据库中表的设计 10第五章五章系统详细设计与实现 13135.1 学生考试模块的详细设计 135.2 管理员管理模块的详细设计 155.3 管理员管理模块的详细设计 17第六章软件测试 19196.1 软件测试的目的与意义 196.2 测试的方法 196.3 测试用例 19总结 2121辞 2222参考文献 2323. . . . 1 / 27第一章 绪论1.1 开发背景随着网络技术的飞速发展,现在很多国外的大学和社会其

8、他部门都已经开设了远程教育,通过计算机网络实现异地教育和培训。现在,计算机硬件技术的发展已经达到了相当高的水平。但是,远程教育软件的开发目前还处于起步阶段,随着这项技术的不断深入发展,就要求有更好、更完善的软件系统应用到远程教育当中去,这就给软件设计人员提出了更高的设计要求。远程教育包括很多环节,例如教学系统、答疑系统和考试系统等等。其中很重要的一个环节就是在线考试系统,同时它也是最难实现的环节。在我国,虽然远程教育已经蓬勃地发展起来,但是目前学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。显然,随着

9、考试类型的不断增加与考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。随着计算机应用的迅猛发展,网络应用不断扩大,如远程教育和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。人们迫切要求利用这些技术来进行在线考试,以减轻教师的工作负担与提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证、客观,更加激发学生的学习兴趣。例如目前许多国际著名的计算机公司所举办的各种认证考试绝大部分采用这种方式。在线考试是现阶段研究开发的一个热点。它是建立在国际互联网上的应用系统,客户端的配置可以极为简单,使考

10、试不受地域的局限。一个完备的在线考试系统可以使用户在网上学习过后与时检验自己的学习效果,已发现自己的不足,使得学习效率得到很大提高。在线考试系统中题目的生成、试卷的提交、成绩的批阅等都可以在网络上自动完成。只要形成一套成熟的题库就可以实现考试的自动化。这样一来,教师所要做的只是精心设计题目、维护题库,而不是组织考试,从而大大减轻了教师的负担,这表明其经济性是相当可观的。为了适应新形势的发展,我进行了这一系统的初步设计工作,也可以说是做一个初步的探索,希望它能够在各类考试中发挥高效、便捷的作用,把老师从繁重的工作中解脱出来。1.2 目的与意义通过互联网实现授课的同时,也可以实现集中统一的网上考试

11、,实现考试现代化、科学化的管理,在线考试是现阶段研究开发的一个热点。它是建立在国际互联网上的应用系统,客户端的配置可以极为简单,使考试不受地域的局限。一个完备的在线考试系统可以使用户在网上学习过后与时检验自己的学习效果,发现自己的不足,使得学习效率得到很大提高。. . . . 2 / 27为此,本次设计基于 B/S 架构的雅思的在线考试系统,正是顺应了教育信息化改革的大趋势,是 Internet 技术与计算机技术在教育教学领域的应用。网络考试系统,它将给现代教育教学的考试,提供一个很好的解决方案,成为教育教学管理的最佳辅助方式之一,让传统教育中的考试也朝网络化的方向发展。在线考试系统借助计算机

12、技术,能够在 Windows 平台上,使用 IE 浏览器,完成考试、交卷等考试任务,还可以通过互联完成考试的控制。借助原来的数据库,各考点可以通过网络决定试卷。学生通过网络选择开考的试卷,然后进行在线作答。答卷后,学生可在线自动交卷。交卷同时,系统将自动评分,生成考试成绩数据。教师可在线查看各考生的成绩。同时本系统,可对学生基本信息与考试成绩信息进行查询、更改等管理,也有利于学校教务的管理。在线考试系统是集合现代考试理论、方法和现代信息技术手段的智能化网上考试系统,为学生的个性化学习提供“灵活、方便、科学、公平”的“个别化考试服务” ,是终结性评价系统。本系统适合各类的成人远程教育管理使用,也

13、适合组织校园在校生开考用。1.3 系统的开发工具系统的开发中使用到的工具有 S 微软公司生产的 SQLSERVER2000 数据库和 Visual studio 2008,操作系统是 Microsoft Windows XP(SP2)。JSP 是 Active Server Page 的缩写,意为“动态服务器页面” 。JSP 是微软公司开发的代替 CGI 脚本程序的一种应用,它可以与数据库和其它程序进行交互,是一种简单、方便的编程工具。JSP 的网页文件的格式是.JSP,现在常用于各种动态中。 JSP 是一种服务器端脚本编写环境,可以用来创建和运行动态网页或 Web 应用程序。JSP 网页可以

14、包含 HTML 标记、普通文本、脚本命令以与 COM 组件等。利用 JSP 可以向网页中添加交互式容(如在线表单) ,也可以创建使用 HTML 网页作为用户界面的 web 应用程序。 与 HTML 相比,JSP 网页具有以下特点:(1)利用 JSP 可以实现突破静态网页的一些功能限制,实现动态网页技术;(2)JSP 文件是包含在 HTML 代码所组成的文件中的,易于修改和测试;(3)服务器上的 JSP 解释程序会在服务器端执行 JSP 程序,并将结果以 HTML 格式传送到客户端浏览器上,因此使用各种浏览器都可以正常浏览 JSP 所产生的网页;(4)JSP 提供了一些置对象,使用这些对象可以使

15、服务器端脚本功能更强。例如可以从 web 浏览器中获取用户通过 HTML 表单提交的信息,并在脚本中对这些信息进行处理,然后向 web 浏览器发送信息;(5)JSP 可以使用服务器端 ActiveX 组件来执行各种各样的任务,例如存取数据库、发现和那个 Email 或访问文件系统等。(6)由于服务器是将 JSP 程序执行的结果以 HTML 格式传回客户端浏览器,因此使用者不会看到 JSP 所编写的原始程序代码,可防止 JSP 程序代码被窃取。. . . . 3 / 27(7)方便连接 SQLSERVER2000 与 SQL 数据库.(8)开发需要有丰富的经验,否则会留出漏洞,让黑客利用进行注入

16、攻击.当在 Web 站点中融入 JSP 功能后,将发生以下事情: (1)用户向浏览器地址栏输入网址,默认页面的扩展名是.JSP。 (2)浏览器向服务器发出请求。 (3)服务器引擎开始运行 JSP 程序。(4)JSP 文件按照从上到下的顺序开始处理,执行脚本命令,执行 HTML 页面容。 (5)页面信息发送到浏览器。SQLServer2000 是微软公司推出的基于 Windows 的桌面关系数据库管理系统(RDBMS,即 Relational Database Management System) ,是 Office 系列应用软件之一。它提供了表、查询、窗体、报表、页、宏、模块 7 种用来建立数

17、据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。SQLServer2000 的最初名称是 Cirrus。它开发于 Visual Basic 之前,当时的窗口引擎称作 Ruby。比尔盖茨看过 Ruby 的原型后决定把这个基于 Basic 语言的组件作为一个独立的可扩展应用程序与 SQLServer2000 联合开发。这个项目称作 Thunder。这两个项目互相独立的被作为底层的窗口引擎开发并且互不兼容。 然而,在 VBA 出现后它们被合并在一起。

18、1995 年末,SQLServer2000 95发布,这是世界上第一个 32 位关系型数据库管理系统,使得 SQLServer2000 的应用得到了普与和继续发展。1997 年,SQLServer2000 97 发布。它的最大特点是在SQLServer2000 数据库中开始支持 web 技术,这一技术上的发展,开拓了SQLServer2000 数据库从桌面向网络的发展。21 世纪初,microsoft 发布SQLServer20002000,这是微软强大的桌面数据库管理系统的第六代产品,也是 32 为位 SQLServer2000 的第三个版本。至此,SQLServer2000 在桌面关系型数

19、据库的领域的普与已经跃上了一个新台阶。2003 年微软正式发布了 SQLServer2000 2003,这是继2002 年后发布的最新版本,它在继承了以前版本的有点外,又新增了一些使用功能. . . . 4 / 27第二章 需求分析2.1 问题分析传统的学校教学中,进行一场考试,要求老师刻试卷、印试卷、安排考试、监考、收集试卷、评改试卷、讲评试卷和分析试卷,这是一个繁杂的过程,需要大量人力、物力与时间的投入,已经越来越不适应学校信息化建设与现代教学的需要。尤其在远程网络教学中,学生分布广,不易统一集中安排考试,给校方和学生带来了众多的不便。而网络考试系统,正是信息化建设的产物,它是传统考场的延

20、伸。它可以利用互联网络和局域网,随时随地的对学生进行考试,加上数据库技术的利用,大大简化了传统考试的过程。因此网络考试是电子化教学的不可缺少的辅助手段。在线考试系统是基于计算机网络的应用系统。它可以使考试不受时间、地域限制。一方面,极减轻了教师出卷、改卷的工作量;另一方面,在线考试系统采用试题库方式提供试题来源,考前无任何成套试卷。考试时考卷由计算机现场随机生成,各考生试卷不完全一样,从而避免了互相参看等作弊现象或不公平成绩的出现。此外,试题库还可指定专人负责管理,因而增强了试卷的性。采用传统的卷面考试时,由于出卷、印刷等方面的原因,一般一次考试所印试卷套数较少,使得试卷整体覆盖面有限,容易形

21、成小围复习或猜题等现象,影响了考试的客观性。在线考试系统采用随机抽题的方式,试题抽取围相对较大,从而使试卷整体覆盖面变大,可较全面的考察考生的实际水平,保证了考试的客观准确性,还可以使学生能随时检验自己的学习效果,使学习效率得到更大的提高。另外,考试者选择答案提交后,应该由计算机自动判卷,得到成绩后可以显示并且能够打印。考试完毕后,考试者可以返回登录界面或继续考试。此外,还应该能够方便、快捷的对在线考试系统进行管理。2.2 方案选择用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构以与数据处理的流程,组成一份详尽的数据

22、字典,为后面的具体设计打下基础。2.2.1 JSP 优点:从技术角度来分析,Microsoft Active Server Pages 即我们所称的 JSP ,其实是一套微软开发的服务器端脚本环境, JSP 含于 APACHE 之中 , 通过 JSP 我们可以结合 HTML 网页、 JSP 指令和 ActiveX 元件建立动态、交互且高效的 WEB 服务器应用程序。有了 JSP 你就不必担心客户的浏览器是否能运行你所编写的代码,因为所有的程序都将在服务器端执行,包括所有嵌在普通 HTML 中的脚本程序。当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大

23、大提高了交互的速度。. . . . 5 / 272.2.2 SQLServer2000 简介目前,绝大多数流行的关系型数据库管理系统,如 Oracle、Sybase、Microsoft SQLServer2000、Access 等都采用了 SQL 语言标准。虽然很多数据库都对 SQL 语句进行了再开发和扩展,但是包括 Select、Insert、Update、Delete、Create 以与 Drop 在的标准的 SQL 命令仍然可以被用来完成几乎所有的数据库操作。SQLServer2000 能够管理 OLTP 和 OLAP 两种数据库:OLTP 数据库和 OLAP 数据库。OLTP 数据库:

24、通常情况下,为了降低数据库的冗余信息,并加快数据库更新的速度,OLTP 数据库中的数据被组织存放到关系表中。SQLServer2000 能够允许大量用户执行事务处理,并且能够并发更改OLTP 数据库中的实时数据。在实际工作中,OLTP 数据库得到了广泛的应用,诸如航空售票系统和银行事务系统等。OLAP 数据库:通过利用 OLAP 技术对大量数据进行组织和汇兑,分析程序能够对数据进行快速评价,甚至得到实时分析结果。Microsoft SQLServer2000 2000 Analysis Services 能够对数据进行组织,使其能够适用于大量的企业解决方案,诸如企业报告、企业分析、数据建模和决

25、策支持等领域。根据本系统的特点,本系统采用的是 SQLServer2000。MSSQLSERVER2000 是微软公司生产的中型关系数据库管理系统,它有如下的一些特点: (1)客户/服务器体系结构。 (2)图形化的用户界面,使系统的管理更加直观和简单。 (3)丰富的编程接口,为用户进行应用程序设计提供了更大的选择余地。 (4)与Windows NT操作系统的有机集成,多线程体系结构设计,提高了系统对用户并发访问的速度。 (5)对Web技术支持,使用户能够很容易的将数据库中的数据发布到网上。(6)价格上的优势。与其它一些大型数据库系统如Oracle、Sybase等相比,SQLServer2000

26、的价格非常便宜。综上所述,此系统开发目标已明确,在技术和经济等方面都可行,并且投入少、见效快。因此系统的开发是完全可行的。. . . . 6 / 27. . . . 7 / 27第三章 系统总体设计3.1 系统功能设计软件在需求分析结束后的下一个阶段就是系统总体设计。系统设计的方法有:面向数据流的设计,面向功能的设计和面向对象的设计。本考试系统采用面向对象的设计。面向对象分析和面向对象的设计之间有密切的衔接关系。从分析到设计是一个逐渐扩充的过程,是在同一个对象模型基础上调整改进和扩充的过程。OOA以问题为中心,OOD则解决如何在计算机系统中实现,它遵循抽象、求精和模块独立性的原则。抽象是一种思

27、考和解决问题的方式,它关注于事物的一般特性,不考虑底层细节。求精是一个和抽象相反的过程,它将某个宏观功能不断分解,逐步细化。模块独立性指模块之间的接口唯一,高聚低耦合,各个模块相对独立式的软件容易开发,容易维护。3.1.1 系统结构图根据需求分析,本系统总体可以分为两大部分:学生子系统、教师子系统,分别面向学生和教师,其系统总体结构如下图3-1所示:在线考试系统学生子系统教师子系统学生登陆学生考试试卷管理批阅试卷考生信息管理图 3-1 在线考试系统结构图3.1.2 系统功能本系统主要包含了两大功能:学生考试和教师管理。(1) 学生考试功能 学生登录:学生考试系统必须给出有效身份,如用户名或密码

28、等,该功能是确认考生身份与成绩的重要部分。 在线考试:该功能是考试系统中最关键的部分。考生登录后,由系统根据考生. . . . 8 / 27登录情况,判别考生是否初次登录,如是则依据组卷规则产生随机数,从试题库中随机抽取试题组成试卷,并直接在屏幕上显示,同时转入考生考试状态,如不是初次登录,则说明考生可能在考试中途因机器故障或其它原因需重新进入考试,此时,考生试卷可重新恢复到已答试题的状态,因此系统不需做新试卷抽取工作,而直接恢复考生原有试卷即可。 试卷提交:包括考生在规定时间主动提交试卷和考试时间己到系统强迫提交试卷的相关处理。 自动判卷:考生交卷后,系统根据评分标准会自动准确、迅速评分,并

29、得出客观题的成绩。 (2) 教师管理功能 题库管理:题库管理系统包括试题录入、试题分类、试题库维护等功能。试题库是试题来源,对试题库的管理非常重要;试题录入可采取集中录入或随时录入;试题库中的试题可长期保存使用;试题库中的试题以单个试题存放并不形成成套试卷;试题库中的试题,按类别的不同分别分类管理;试题库维护主要包括对试题库中的试题进行添加、删除、修改、浏览等功能。 试卷类型设置:考试前,由教师对本次考试试卷组成进行设置,如各类型题量(如单选题 x 道、多选题 y 道)、各类型试题分值与考试时间等的设置,学生考试时考试系统根据试卷类型随机生成符合要求的试卷。 考生成绩查询:对所有考生考试成绩的

30、显示以与各分数段考生人数的统计。 密码修改:系统提供对教师管理密码的修改功能。 考生信息管理:由管理员实现对考生信息的浏览和删除等操作。 成绩管理:对所有考生考试成绩的显示以与对不与格考生可以给与二次考试的机会。同时可以作弊考生进行显示和处理。 批阅试卷:对试卷上的主观题进行批阅 密码修改:管理员可以对自己的密码进行修改。3.2 系统功能流程图在线考试系统的用户分为学生和教师。两种用户的功能各不一样,所以功能流程图也不同。学生考试的流程为:首先进入登录页面,输入正确的用户名和密码,用户名和密码由管理员分配,系统验证成功后转入考生考试页面,考生可以参加考试。其功能示意流程图如图 3-2 所示:.

31、 . . . 9 / 27 开始考生登录身份验证登陆成功开始考试结束是否图 3-2 学生考试功能示意流程图教师管理的流程为:首先进入登录页面,输入正确的用户名和密码,用户名和密码由管理员分配,系统验证成功后转入教师管理页面,教师可以对题库进行增加、删除、修改等维护,当学生考完试时,教师可以查看所有考生的考试成绩以与各分数段考生人数,还可以修改自己的密码。其功能示意流程图如图 3-3 所示:. . . . 10 / 27图 3-3 开始考生登录身份验证登陆成功结束是否题库维护试卷设置修改密码成绩统计教师管理功能示意流程图学生考试功能流程图、教师管理功能和管理员管理功能流程图三个加在一起就构成了本

32、系统的一个完整的功能流程图。. . . . 11 / 27第四章 数据库设计数据库结构是在线考试系统设计方案中的一个重要组成部分,在进行数据库逻辑结构设计时,应尽量使一个功能操作较少的数据表,所以在数据库结构设计时,要将数据进行合理组合,在数据表设计时,应遵循 3NF 规,使数据库的逻辑结构合理,尽量避免重复存储.数据库设计的好坏将直接影响系统的效率以与实现效果。4.1 系统 E-R 图 图 4-1 学生考试 E-R 图该图描述了通过组卷规则,从试题库中随机抽取试题生成试卷的过程和学生考试功能用到的数据。图中数据实体有学生,试卷、试题,关系有考试、组卷,考试关系联系了学生和试卷两个实体,一个学

33、生使用本考试系统考试多次,是一对多的关系。组卷关系联系了试卷和试题两个实体,随机的多道试题组成了多试卷,是多对多的关系。4.2 数据库中表的设计通过系统需求分析与总体设计,数据库的需求设计也就变得逐渐清晰起来了。按照前面的需求分析,在 SQLServer20002000 中,建立了如下六个表。. . . . 12 / 27学生信息表 4-1 主要是存储学生用户的基本信息,包括 ID、name、pwd 等。学生的信息由管理员添加,学生登录后可以修改自己的密码,当学生忘记自己的密码时可以通知管理员,由管理员进行密码重置。当学生结课不需要再进行考试时,由管理员删除学生的所有信息。表 4-1 tb_S

34、tudent 学生信息表名称类型长度含义是否为空备注IDvarchar16学生编号not主键namevarchar20学生notpwdvarchar20学生密码notsexvarchar20学生性别notjoinTimedatetime8注册时间notquestionvarchar50密码问题notanswervarchar50问题答案notprofessionvarchar30专业notcardNovarchar18not管理员信息表 4-2 主要是存储管理员的基本信息。包括 logname,password 等。管理员的信息由系统设定时添加,管理员登录后可以对自己的信息进行修改。表 4-2

35、tb_manager 管理员信息表名称类型长度含义是否为空备注IDbigint8管理员编号not主键namevarchar30管理员用户名notPWDvarchar30管理员密码not学生成绩表 4-3 主要是存储学生的考试成绩,在学生参加考试前此表为空,当学生考试结束后由系统计算考试成绩并添加进数据库中。管理员通过管理界面可以对此表进行管理。表 4-3 tb_StuResult 学生成绩信息表名称类型长度含义是否为空备注idbigint8编号not主键stuIdvarchar16学生编号notJoinTimedatetime8考试时间notwhichLessonvarchar60考试科目no

36、tresSingleint4单选得分notresMoreint4多选得分notresTotalint4总分not课程信息表 4-4 主要是存储课程信息,每一位学生都会有多门课程可以考试,管理员根据具体情况可以添加、修改、删除课程,而学生在考试之前也必须对课程进行选. . . . 13 / 27择,否则无法参加考试。表 4-4 tb_lesson 课程信息表名称类型长度含义是否为空备注IDbigint8课程编号not主键Namevarchar60课程名称notJoinTimedatetime8添加时间not表 4-5 为套题信息表,主要负责存储每一门课程所包含的套题信息,包括套题编号、名称、所属

37、课程、添加时间这些容,学生在考试时选择完课程后也必须选择套题,否则无法参加考试。表 4-5 tb_TaoTi 套题信息表名称类型长度含义是否为空备注IDbigint8套题编号not主键namevarchar50套题名称notLessonIDbigint8所属课程notJoinTimedatetime8添加时间not表 4-6 为试题信息表,负责存储所有试题的信息,包括试题的 id、所属课程、试题类型、添加时间等信息,管理员在后台可以添加、修改、删除试题信息。表 4-6 tb_Questions 试题信息表名称类型长度含义是否为空备注idbigint8试题编号not主键subjectvarcha

38、r50所属课程nottypechar6试题类型notjointimedatetime8添加时间notlessonIdint4所属课程 IDnottaoTiIdbigint8所属套题 IDnotoptionAvarchar50选项 AnotoptionBvarchar50选项 BnotoptionCvarchar50选项 CnotoptionDvarchar50选项 Dnotanswervarchar10答案notnotevarchar50备注. . . . 14 / 27第五章五章系统详细设计与实现为了更好、更合理地开发这个系统,进行模块化设计是非常必要的。模块之间可以独立设计,以便设计可以同

39、时进行,互不干扰。最后模块可进行独立测试,最终构成一个完整的系统。经过前期的分析,本系统分为以下几大模块:学生考试模块、管理员管理模块、管理员管理模块。下面我们将对各个模块进行详细的说明。5.1 学生考试模块的详细设计学生考试模块包括登录注册、在线考试、修改密码、成绩查询,个人资料修改等部分。出于对系统操作安全性方面的考虑,学生参加考试必须先到登录页进行身份验证,通过此窗口学生输入用户名和密码,只有正确才能登录本系统。学生的登录界面如图5-1 所示:图 5-1 学生的登录页面图以下是将学生登录的核心部分实现的思路进行说明:学生在主页面上填写用户名,密码,通过表单发送到本页,然后调用验证函数来判

40、断格式的合法性,如果格式合法,然后主页面将执行相应重定向操作。做如下分析,当表单发送信息后,跳转到验证用户的 usercheck.jsp 中,usercheck.jsp 接收到信息后,判断用户类型,查询数据库核对相关信息。如果信息不正确就发出相应的提示信息,提醒学生错误原因。如果信息与数据库中一致,那么该学生为合法用户,并保存学生的信息到服务器变量 Session中,然后指向学生考试页面。学生登录后就可以进入考试页面了,在刚进入考试页面看到的是听到考场规则和注意事项,考生必须遵守考场纪律,否则将被罚出考场。在听完考场规则后考生可以选择开始考试和修改个人密码与查看上次考试成绩。如图 5-2 所示

41、:. . . . 15 / 27图 5-2 学生考试页面图学生可以随时参加考试,不再受时间的限制,关于考试部分的具体设计如下:组题方式:采用完全随机抽题机制,根据题库中试题的数量和考试设置中所要求的题量来决定组题的成功与否。随机数由“Random”类中的“nextInt(n)”方法产生,它返回一个整数随机数,围介于 0n 之间。这里 n 的值为题库中试题的数量,但 n 的值必须大于考试设置中所要求的题量,否则系统会提示错误。随机数产生后,用一个数组来统计所抽出的题,以免出现重复,然后从数据库中读取试题。当抽的试题数目满足条件时退出抽题程序,然后在考试页面上显示试题。考试方法:学生在规定的时间答

42、题,考试时间从进入答卷部分开始,考试结束之前二分钟,系统自动给予考生注意时间的提示。考试时间一到如果考生自己没有交卷,系统则自动完成交卷步骤。如图 5-3 所示:图 5-3 考试界面. . . . 16 / 27考生考试过程中如果关闭了答题窗口,考生可以重新登录系统再参加考试,考试过程禁止刷新和后退,系统已经通过程序禁止了各种刷新的方式,如点击刷新按钮。考试考试的成绩会保存下来,考试完毕后可以查看考试结果。成绩查询的试图如下:图 5-4 成绩查询用户可以修改个人密码,做如下分析,当表单发送信息后,跳转到验证用户的passwordcheck.jsp 中,passwordcheck.jsp 接收到

43、信息后,判断用户名和密码是否正确,查询数据库核对相关信息。如果信息不正确就发出相应的提示信息,提醒学生错误原因。如果信息与数据库中一致,那么该学生为合法用户,并保存学生的信息到服务器变量 Session 中,然后指向修改个人密码页面。试图如下图 5-5 修改密码5.2 管理员管理模块的详细设计管理员管理模块包括管理员信息管理、考生信息管理、课程信息管理、试题信息管理等部分。其中登录部分的设计与学生登录类似,这里不再赘述。界面图如下;. . . . 17 / 27图 5-6 管理员管理模块考试题目管理是与整个考试系统紧密关联的部分。首先介绍试题显示页面的制作。在默认的条件下,将显示题库中的所有记

44、录,并将试题分页显示,同时统计数据库中试题的总量。也可以根据实际需要,显示满足条件的题目。将所有的题目进行分页显示的原理为:首先统计满足条件的记录条数,然后定义页面的大小即每页显示记录的数量,这样可以得到需要的总页数。通过上一页、下一页等方式传递当前页的位置,得到位置后就可以显示属于本页面的记录了,当所在页的页码等于总的页数时即位置为末页,当页码为一时,既分页的第一页。如果是有一定条件显示的记录要求分页,则将查询条件保存下来,这样在翻页时才能正确显示满足要求的记录。另外在查询可以通过匹配关键字的方式进行查找。匹配方法在查询数据库时使用,通过 SQL 中的 LIKE语句实现。以下就题库的添加、修

45、改、删除三个部分的设计过程做详细介绍。添加功能:在选定所要添加试题类别后就可以进入添加页面进行试题添加。在填写完试题容后,点击保存即可。如果试题容、答案为空时会自动判断,并提示管理员完整填写试题容。表单判断通过JavaScript实现。如果添加成功,则都试题保存到数据库,选择题的添加和试题的添加原理基本一样。修改与查看功能:在列表中每个试题都有修改按钮,通过它能查看试题的详细容,并且能够修改试题容。实现方法与添加类似,不同点是添加会将新的题目添加到数据库中,而修改只是修改原有数据库中的试题。并且在列表中每个试题的题干都可以点击,点击后也可以查看试题的详细容。删除功能:删除试题相对其它功能来说容

46、易实现,只需要得到要删除题目的编号(主键),执行数据库删除语句即可。在删除之前做出相应的提示,因为一旦删除后就无法恢复。在删除功能中全部选定/取消按钮,通过JavaScript来实现,原理是通过循环使表单所有的复选框被选定。题库维护的实现页面如图5-7所示:. . . . 18 / 27图5-7 题库维护界面考生成绩查询是查看和分析考试的结果,首先是分页显示所有考生考试成绩,考生成绩查询的实现页面如图5-8所示:图 5-8 考生成绩查询的页面图5.3 管理员管理模块的详细设计管理员管理模块包括登录、学生信息管理、管理员管理、学生成绩管理、修改密码等部分。其中管理员登录页面如图 5-10 所示:

47、图 5-10 管理员登录界面. . . . 19 / 27用户管理在系统中具有重要的意义,它的设计决定着考试系统的成功与否。本系统的用户分为:学生、管理员、以与管理员。在设计用户管理功能时,不同类型用户能够进行的管理操作是不同的。管理员能够对使用本系统的用户进行操作,包括:添加、编辑、删除。其他用户都只能修改自己的登录密码,不能修改自己的其他信息,更无权操作别人的信息。管理员可以操作题库管理,管理员之间的数据是不可以浏览和共享的。考生之间的数据也是不能共享的。这里对用户进行操作时,要考虑到数据库的一致性操作。对用户的修改都要先去检查其他表中是否有与该用户相关的信息记录,如果有,必须同时处理,否

48、则数据的一致性就会受到破坏,会出现不存在的用户却有其他的考试记录。由于学生用户的数量比较多,管理较复杂,所以学生与管理员的管理分开。当学生的信息被删除后,学生的成绩也随之失效,所以成绩也必须在系统中删除,这个操作由系统自动完成。学生管理的实现页面如图 5-11 所示:图 5-11 考生信息管理页面图. . . . 20 / 27第六章软件测试6.1 软件测试的目的与意义系统测试是系统的开发周期中的一个十分重要环节。尽管在系统开发周期的各个阶段均采取了严格的技术审查,但依然难免会留下错误,如果没有在投入运行前的系统测试阶段被发现并纠正,问题迟早会在运行中暴露出来,到那时要纠正错误将会付出更大的代

49、价,因此系统在投入使用之前必须进行严格的测试。软件工程的根本目标是开发出高质量的完全符合用户需要的软件,因此,通过测试发现错误之后,还必须诊断并改正错误,这就是调试的目的。6.2 测试的方法任何商品都有两种测试方法:白盒测试和黑盒测试。 白盒测试:白盒测试是按照程序部的逻辑测试程序、检验程序中的每条通路是否都能按预定的要求正确工作。白盒测试又称为结构测试。主要对程序的部细节进行检查的过程,在编码和测试的早期阶段使用。黑盒测试:黑盒测试时完全不考虑程序部的结构和处理过程,只按照规格说明书的规定来检查程序是否符合它的功能要求。黑盒测试是在程序接口进行的测试,又称为功能测试。主要对程序的功能进行检查

50、,常使用在测试的后期阶段。测试用例指对一项特定的软件产品进行测试任务的描述,体现测试方案、方法、技术和策略。容包括测试目标、测试环境、输入数据、测试步骤、预期结果、测试脚本等,并形成文档。不同类别的软件,测试用例是不同的。测试用例更趋于是针对软件产品的功能、业务规则和业务处理所设计的测试方案。对软件的每个特定功能或运行操作路径的测试构成了一个个测试用例。本次系统测试主要使用了黑盒测试方法。黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用,在测试时,把程序看作一个不能打开的黑盆子,在完全不考虑程序部结构和部特性的情况下,测试者在程序接口进行

51、测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息,并且保持外部信息的完整性6.3 测试用例测试的主要容是按实际操作的数据向系统的各个功能模块输入数据,检测输出结果是否符合预期要求。管理员登录是管理员进行后台管理的开始,所以管理员登录用例是一个非常重要的用例,管理员要输入用户名和密码进行登录,系统根据用户输入的用户名和密码,在数据库中进行查找,如果用户名和密码在数据库中与 admire 表中logname 列和 password 列中的容相符,则管理员成功登录。如果系统查询到用户名和密码与 admire 表中的一项不符则提示“用户名或密

52、码错误”登录不成功。管理员登录. . . . 21 / 27测试用例如表 6-1 所示:表 6-1 管理员登录测试用例用例名称管理员登录测试基本描述管理员登录测试就是用户输入的用户名和密码进行管理员登录,系统判断该用户的输入是否合法,对此功能进行测试。测试方案分别使用系统承认的合法用户名与密码和系统不承认的非法用户名和密码进行测试。 输入数据1 用户名 admin 和密码 admin2 用户名 admir 和密码 admir 测试结果第一组用户名和密码正确用户成功登录到管理员界面第二组用户名和密码不合法,系统提示错误信息当系统查询到用户名和密码与 admire 表中的一项不符则提示“用户名或密

53、码错误”登录不成功。如图 6-1 所示:图 6-1 管理员登陆错误时提示界面系统的其它测试用例在此不再详述。整个系统的功能都严格按照测试用例进行了测试,并根据测试结果进行相应的处理,最终达到测试用例描述的预期结果。经过初步测试,系统在服务器端和客户端均能正常运行,对于不同显示分辨率下网页也能够正常显示而且网页的基本正确。但由于系统对操作人员录入的错误数据和数据本身的错误所造成数据的不完整性,系统的约束力较弱,应加强数据的完整性约束提高系统数据的正确性和相容性,以与系统的容错性,加强对用户输入端的数据进行检验。. . . . 22 / 27总 结通过以上对在线考试系统的详细介绍,已经基本上能够阐明整个系统的开发制作过程。本系统在实现预计功能的前提下,还具有以下优点:(1) 设计了一个B/S模式的雅思在线考试系统的总体框架,为计算机辅助考试向网络化发展提供了一套方案。(2) 提出了一个

温馨提示

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

评论

0/150

提交评论