( 2012 -- 2013 年度第2 学期)
课程设计报告
名 称: 软件设计与实践 题 目: 在线考试系统
内 容: 软件计划、需求分析、 软件设计、系统测试
院 系: 计算机系 班 级: 学 号: 学生姓名:
指导教师: 宋雨、陈晴、王德文 设计周数: 2 成 绩:
日期:2013年 6 月 19 日
一、 课程设计的目的与要求
1. 课程设计目的
软件工程课程设计是学习软件工程课程后所进行的实践环节,目的是培养学生用工程化的思想和标准文档化的思想进行软件开发。本次课程设计通过开发一个小型实用的软件系统,亲身体验软件生命周期中的各个环节,以加深对软件工程课程的深入理解、锻炼分析、解决问题的能力。
2. 课程设计要求
2.1 课程设计准备
1)复习软件工程课程的主要内容,熟练掌握软件生命周期的理论以及各阶段的基本概念。 2)明确可行性分析、需求分析、设计、测试等阶段的基本任务和基本方法。 3)熟练运用规范化的描述方法和文档,描述软件开发的各个阶段。 4)熟悉开发环境和开发工具。
2.2 内容要求
1)对所设计和实现的系统进行可行性分析,提交可行性分析报告;
2)对系统进行需求分析,可以选择传统的分析方法或者面向对象的分析方法,提交软件需求规格说明书(SRS);
3)在SRS的基础上进行软件的概要设计和详细设计,提交软件设计文档; 4)遵循上述文档的要求,实现软件;
5)对所实现系统进行软件测试,完成软件测试报告。
二、 设计正文
1. 可行性分析报告
1.1 项目简介
1.1.1 项目目标
1)开发背景
在现实世界,竞争越来越激烈,知识的重要性也随之越发凸显。在人们接受教育的过程中,不可避免的要接受各种各样的考试,传统的考试方式对人们往往有这样和那样的,例如在传统考试方式下,组织一次完整的考试至少要经历教师出卷、试卷印刷、学生考试、教师改卷、成绩统计等5个步骤。
传统考试方法存在以下几方面的弊端:(1)试题单一,容易泄题。(2)试卷一样,易作弊。(3)误判、漏判、统错分。(4)成绩上网,不易操作。(5)纸质考试成本高,也不方便管理 。这对参考者造成了很大的影响,小的说可能拿不到某些证件,往大的方面说就可能涉及到个人的工作等等。目前随着考试类型的不断增加和考试要求的不断提高,组织考试的工作量越来越大;管理人员和教师在组织考试的过程中需要花费较多的时间和精力,人为错误率也较高;另外,当考生数量比较大时,对学生成绩统计及分析十分烦琐且容易出错;而且,成绩公布之前学生为查看成绩给教师和教务部门带来的麻烦也不少,考试管理工作效率逐渐降低。可以说,传统的考试方式已经不能适应目前考试的需要。为了适应现在考试的要求,软件开发工作者经过长时间的积累、研究开发出了在线考试系统,使考生能够远程登录,系统能够自动判卷。不管在哪方面,在线考试系统都优于传统的考试方式。
2)相关内容
使用在线考试系统,便于管理人员管理考试人员信息与考试成绩,管理人员可以根据考生信息管理考试科目以及考试时间等等。参加网络考试的考生使用考试管理人员分配的账号登录考试系统,然后选择需要考试的科目,并开始答题。交卷后,系统自动阅卷,并给出考试结果,这样即节省判卷时间,也可以在最短时间内告诉考生自己的成绩。
3)目标概述
开发一个适合用于学校的一个在线考试系统(简单、全面、通用、易用),力求软件界面友好美观、功能较为全面(例如有关数据库的增、删、改、查等等)、操作要简单统一。 1.1.2 系统的简要描述,主要功能
在线测试系统的基本功能是管理员对试题和学生进行管理,学生可以答题。具体如下: 1)管理员:管理科目(增加科目、修改科目信息、删除科目)、试题(向题库中增加试题、修改试题、 删除试题)、生成试卷,管理学生信息(添加学生包括登录账号、密码、姓名,删除学生)、学生成绩管理(查询、录入、管理)、管理员修改密码
2)学生:修改密码、重新登录、选择考试科目、成绩查询、查询考务公告、进行考试、重新登录 等
1.2 对现有系统的分析
1.2.1 处理流程和数据流程(系统流程图)
开发的在线测试系统的系统流程图如下图所示: 管理员系统流程图:
管理员 考生系统流程图: 科目信息 科目管理 表 登陆成功 试题管理 试题表 登录页面 考生信息 考试管理 表 试卷信息 生成试卷 表 考生成绩查 询 成绩表 管理员信 修改密码 息表
修改密码 考生信息表 选择考试科目 考生 登陆成功 考生信息表 答题 试卷信息表 试题表 交卷 考生界面 自动判卷生成成绩 查询考试记录 考试记录查询 成绩查询 成绩表
1.2.2 对现有系统的其他说明
1)维护:在系统交付之后的两年期限之内,系统的维护只要由开发单位提供维护;
2)人员:开发人数较少,管理员数目一定,参加考试的人员必须是数据库中的存在人员,所以在每进行一次考试之前,管理人员都要确定可以参加考试的考生。
3)开发者需要的环境: 硬件环境: (1) 处理器(CPU):双核I5 (2) 内存容量(RAM):4G 软件环境:
(1) 操作系统:Microsoft Windows 7
(2) 数据库管理系统:MYSQL,配置TCP/IP协议 (3) myeclipse集成开发环境 (4)Jtest等软件测试工具
1.3 技术可行性分析
基于浏览器的在线考试系统,关键技术在于网页的动态显示和管理,即从数据库中取得相应的试卷数
据,并收集用户输入数据,能够对考试过程进行控制。采用最新的web与SQL技术开发,管理端和考生界面全部采用B/S模式构建,系统的部署、应用、维护更加方便。同时,大型数据库mysql提供了数据库
管理的能力,因此技术方案是成熟的和可行的。
1.4 经济可行性分析
此软件开发周期一般为2-3个月,开发所需硬件软件设施目前大多数PC机系统能够承担,开发费用不高。然而,实际上我们做的只是真正的考试系统的一小部分,所以我们的开发时间为2周。目前,大多数单位都拥有高性能微机和局域网,该软件系统的安装、部署、运行和维护,都不会给单位增加太高的费用。所以该系统在经济上是可行的。
1.5 社会因素可行性分析
1.5.1 法律因素
开发本系统时,使用的都是正版软件,所有的技术资料都是由开发单位保管的允许范围内;本项目不涉及在社会上或政治上引起侵权、破坏或其他责任问题。设计本项目的一切活动都在国家法律允许范围内。系统开发和运行与国家的法规不存在任何冲突和抵触之处。因此,此在线考试系统在法律方面是可行的。
1.5.2 用户使用可行性
在线考试系统是针对各行各业要对学者进行考核的需求进行开发的一个在线系统。从管理者角度来看,纸质的考试不仅物质成本高,而且消耗大量的人力资源;此外,纸质的考试不够灵活,使得考试变得不够人性化,不能体现出考试的这是目的。另外,本系统操作较为简单,容易上手,和传统纸质考试在本质方面没有大的区别。操作人员要求具有一定的计算机接触即可。在用户使用方面,本系统的开发是可行的。
1.6 可供选择的方案
1.6.1 采用C/S模式 其与B/S模式基本一样,只是需要安装。但是其设计对于画面的设计要求较高,所以其费用较高。
1.6.2 选用B/S模式自行开发一个在线考试系统,系统主要分为两部分:考生部分和管理员部分,考生部分实现的功能有:参加考试,查询考务公告,成绩查询;管理员部分实现的主要功能有:考生管理,考试管理,试题试卷管理,自动判卷功能等。
该方案的优点和选择该方案的原因:
(1)在用户接口方面B/S 建立在浏览器上, 有更加丰富和生动的表现方式与用户交流; (2)开发难度减低,减低开发成本;
(3)在系统维护方面,B/S 构件组成,方面构件个别的更换,实现系统的无缝升级. 系统维护开销减到最小;
(4)在硬件要求方面,B/S 建立在广域网之上的, 不必是专门的网络硬件环境。
2. 软件需求规格说明书(SRS)
2.1 需求概述
1)给出软件需求的摘要和简单描述
传统的考试方式对人们往往有这样和那样的,这对参考者造成了很大的影响。相对于传统的考试方式,网络在线考试可以给考试者和管理者带来很大的方便:第一,管理员可以动态的管理各种考试信息,只要设计好考试试题,就可以自动生成考试试题;第二,考试时间灵活,考生可以在规定的时间内参加考试;第三,阅卷迅速,在考试完毕后,可以迅速给出考试成绩,给考生以最大的公平感。
网络在线考试是一套功能强大、操作简便而又实用的模拟考试管理软件,它可以被广泛用于各种类型的考试中。系统由管理员管理试卷和考生考试两部分组成。管理员部分包括科目信息管理、试题信息管理、生成试卷以及查看考生成绩等功能。学生考试部分实现学生答卷、分数统计分析和控制考试时间等功能。 2)运行环境
Win xp/2007
2.2 功能需求
1)用例图 考生用例图
管理员用例图:
2)部分顺序图
时序图用来描述对象之间的动态交互,着重体现对象间消息传递的时间顺序。它以垂直轴表示时间,水平轴表示不同的对象。对象用一个带有垂直虚线的矩形框表示,并标有对象名和类名。垂直虚线是对象的生命线,用于表示在某段时间内对象是存在的。对象间的通信在对象的生命线间通过消息符号来表示,消息的箭头指明消息的类型。
第一个:管理员修改自己的密码。考生修改密码和管理员的类似,在这里只写一种情况。
第二个:管理员添加科目。管理员向题库中添加试题以及管理员添加考生信息的序列图与管理员添加科目的序列图是类似的,所以这里只画出一个。
第三个:管理员生成试卷序列图。
第四个:学生考试序列图
2.3 数据描述
2.3.1数据词典:
对于数据流图中的每个元素,都可以通过数据词典加以描述,以保证数据定义的严格性,针对本系统,
也对数据词典的描述如下: 用户登录信息=登录账号+密码 用户名=[管理员 |考生]
管理员=登录账号+管理员姓名+管理员密码 密码=1{字符}10
对考试科目的维护=[添加考试科目信息|删除考试科目信息|修改考试科目信息] 对考试题库的维护=[修改考试试题|添加考试试题|删除考试试题] 对考生信息的维护=[添加考生信息|删除考生记录修改考生记录]
试卷生成=确定试卷科目+卷面总分+单选题数量及分值+多选题数量及分值+考试时间+考试有
效期+确定可以参加考试的考生
管理员查询请求=[查询所有参考人员考试成绩]
考生=考生学号+考生准考证号+考生姓名+考生密码+考生权利 考生学号=1{字符}50 考生准考证号=1{字符}50 考生姓名=1{字符}50 考生密码=1{字符}50
考生权利=1{字符}50
考生考试=选择考试科目+开始考试 科目=科目序号+科目名称 科目序号=1{字符}50 科目名称=1{字符}50
试卷=试卷序号+试卷所属科目+单选题数量+单选题分值+多选题个数+考试时间+多选题分值
+考试有效期的开始时间+考试有效期的结束时间
试题=试题编号+试题所属科目+题目类型+题目内容+A选项+B选项+C选项+D选项+试题答案
+试题是否被选
考试记录=试卷编号+试题内容+试题选项+试题答案+考生自己做的答案+ 考生成绩=序号+考试科目序号+学生学号+试卷号+开始答题时间+交卷时间+分数
2.3.2类图
1)考生类
考生类包含的属性主要是考生号,考生姓名,考生密码,考生权利(是否可以参加考试)。 学生类的方法主要是一些增、删、改、查等基本操作。
2).管理员类
管理员类包含的属性主要包括:管理员登录账号、管理员姓名、管理员密码。 管理员类地方法主要有选择和更新(修改自己的密码)。
3)科目类
科目类包含的属性主要有:科目序号、科目名称。管理员类的方法主要有添加、删除、选择和更新。设计类图如图所示:
4)试卷类
试卷类包含的属性主要有:试卷编号、试卷科目、试卷名。试卷类地方法主要是添加,插入和删除试卷。
5)试题类
试题类包含的属性主要有:试题编号、题目内容、A选项、B选项、C选项、D选项、试题答案。试题类的方法主要有添加、删除和更新。
6)考生成绩类
考生成绩包括考试成绩记录序号、科目序号、学生学号、试卷号、考试开始时间、考试结束时间、 分数。主要方法有添加成绩,删除成绩等。
2.4 性能需求
1) 数据精确度
本系统对于数据的精确度的要求主要体现在对学生成绩的统计,学生成绩不能为负,且大小在0到卷面总成绩之间。登陆的用户名字要区分大小写等。 2) 时间特性
系统响应时间较快,为用户直观所能接受。要保证在有2万人同时在线考试时,保持系统的运行正
常本系统不是实时性系统,对时间的要求不是特别高。 3)适应性
要求系统能够在较长时间内适应操作系统(Windows 7)的升级,能够保持比较好的兼容性。对于系统本身,也要求能够适应高校对于系统要求的提高,系统本身能够进行升级,可维护性好,可测 试,可扩充,可移植。为适应网络时代发展,将来数据可以做到通过TCP/IP协议进行远程操作
2.5 运行需求
1)用户界面
本系统是以网页的形式工作的,打开系统后,呈现在眼前的是一个网页,输入用户名和密码进入系统,便可以选择要进行的操作,各种操作都和数据库连接,数据库的数据保持实时性,一旦做出改动,数据库马上保存,保证不数据的完整,不丢失。对用户友好。用户界面的设计要遵循用户界面设计的原则,做到以人为本、尽可能减少用户记忆、保持界面的一致性。力求设计结果应做到美观大方、直观、明了、条理清晰,实现“傻瓜型”管理——易学、易用、易管理。 2)硬件接口
需要串行接口和并行接口 3)软件接口 系统: Windows 2007;
软件:mysql myeclipse
要求系统软件接口良好,易于实现相接模块的连结。 4)故障处理
对于硬件故障,系统能够自动备份数据,防止由于计算机故障致使数据丢失; 对于数据库,要求在发生故障时,能够实现数据的恢复;
对于实际应用程序,要求能够判断,当用户输入一些错误信息后,系统应该能够给出相应的错误提示信息,不应该因输入错误信息而终止系统的运行。
2.6 其它需求
使用性原则——最大限度地满足实际考试系统的需要;
可扩展性与可维护性——为适应将来的发展,系统应该具有良好的可扩展性和可维护性。软件设计尽可能模块化、组件化、是应用系统可灵活配置,适应不同的情况;
安全可靠性原则——应用软件与数据库系统的设计要做到安全可靠,防止非法用户的入侵。数据库的备份策略恰当,以防灾难性事故发生。
系统最小寿命——系统应能在无重大改动的条件下正常运行3年以上。 数据集中——要求系统用统一的数据库实现数据的完整性和实时性
3. 软件设计说明书
3.1 软件模块结构图
本系统主要是用于考生在线考试,根据实验的要求,把本系统划分成两大模块,分别是考生子模块、管理员子模块,具体的SC图如下所示:
在线测试系统
考 生 管 理 员
管修管生查 修选查查管理改理成询 改择询询理科密题试学 密科成考考目 码 库 卷 生 码 目 绩 试生成 记信绩 录 息
答添删修选试添删修确确设删添修
题 加除改择题加除改定定置除加改
科科科科数试试试考考卷学学学
目 目 目 题 题 题 目 量生 试面生生生
分时总信信信
值 间 分 息 息 息
根据系统要实现的功能,每个模块具体实现的具体内容如下所示: (1)管理员子系统:
1)读入登录者输入的口令、密码,并判断读入的是否正确,若不正确则提示出错; 2)管理科目信息:主要包括添加科目信息、删除科目记录、修改科目信息; 3)管理题库信息:包括向题库中添加试题、删除试题、修改试题;
4)生成试卷:选择考试科目、确定卷面总分、单选多选题目数量及分值、设定考试时间及考试
有效期、确定考试人员
5) 查询成绩:管理员可以看到所有参考人员的考试成绩 6) 修改密码:管理员只能修改自己的 (2)考生子系统:
1)读入登录者输入的口令、密码,并判断读入的是否正确,如不正确则提示出错; 2)修改密码:考生只能修改自己的密码 3)选择考试科目 4)考试答题 5)查询成绩 6)查询考试记录
3.2 文件结构和全局数据
3.2.1数据库设计/外部文件描述:包括数据库的逻辑设计和外部文件的逻辑设计 1. 管理员信息表
2. 考生信息表
3. 考试科目表
4. 考试试卷表
5. 考试试题表
6. 考试结果表
3.2.2数据库中各表之间的关系图
3.2.3 E-R图
我们所涉及的在线测试系统E-R图如下图所示:
M2 成绩 N3
查询1
查询2 N1 1 N4 管理 1 M4 学 生 管 理 员 N5 N2 1 管理2 1 N6 选择 M5 M2 科目 1 修改1 管理3 修改2 包含 1 M6 N 1 管理员密码 试题 学生密码 在线测试系统E-R图
3.3 模块描述
3.3.1 管理员管理科目模块描述
1)功能:管理员登录后,可以对考试科目进行管理,添加考试可以考试的科目、删除考试科目、编辑考试科目信息
2)接口:由管理员模块调用此模块 3)数据:数据有科目序号、科目名称 4)处理:
管理员管理科目的模块的流程处理,如图3-1 所示
3.3.2 管理员管理题库模块描述
1)功能:管理员登录后,可以对题库进行管理,即可以向题库中添加试题,也可以从题库中删除试
题,也可以编辑考试试题
2)接口:由管理员模块调用此模块
3)数据:试题编号、所属科目序号、题目类型、题目内容、A选项、B选项、C选项、D选项、试题答案、试题是否被选择
4)处理:管理员管理科目的模块的流程处理,如图3-2所示
3.3.3 管理员生成试卷模块描述
1)功能:管理员登录后,可以生成试卷,
2)接口:由管理员模块调用此模块,调用此模块的有考试答题模块
3)数据:试卷编号、试卷科目、试卷总分、单选题数量、单选题分值、多选题个数、多选题分值、考试时间、考试有效期的开始时间、考试有效期的结束时间 4)处理:管理员生成试卷的模块的流程处理,如图3-3所示
3.3.4 管理员管理考考生模块描述
1)功能:管理员登录后,可以对考生信息进行管理,添加考生、删除考生、编辑考生信息等 2)接口:由管理员模块调用此模块,用到此模块的有登录模块
3)数据:考生学号,考生准考证号,考生姓名,考生密码,考生权利(是否可以参加考试) 4)处理:
管理员管理考生的模块的流程处理,如图3-1 所示
3.3.5 管理员查询考生考试成绩模块描述
1)功能:管理员登录后,可以查看已参加考试的考生的成绩
2)接口:由主模块调用此模块,用到此模块的有学生查询自己的成绩模块
3)数据:记录序号、科目序号、学生学号、试卷号、考试开始时间、考试结束时间、 分数 4)处理:管理员点击“查询成绩后”,即可查看所有考生考试的成绩 3.3.6 考生查询考试成绩模块描述
1)功能:考生登录后,可以查看自己已参加考试的成绩
2)接口:由考生模块调用此模块,用到此模块的有管理员查询考生的成绩模块
3)数据:记录序号、科目序号、学生学号、试卷号、考试开始时间、考试结束时间、 分数 4)处理:考生点击“查询成绩”后,即可查看自己已参加考试的考试的成绩 3.3.7 考生查询考试记录模块描述
1)功能:考生登录后,可以查看自己已参加考试的考试记录 2)接口:由考生模块调用此模块
3)数据:录序号、试题号、考试科目号、、用户答案、试卷号
4)处理:考生点击“查询考试记录”后,即可查看自己已参加考试的考试记录
4. 软件测试报告
4.1 测试范围
测试目的:
虽然软件在开发过程中使用了很多保证软件质量的方法和技术,但开发出的软件还是会隐藏许多的 错误和缺陷,规模大、复杂性高的软件更是如此。所以,严格的软件测试对于保证软件质量具有重要的作用。软件测试的根本目的是尽早的、尽可能多的发现缺陷,能够使系统高效、低错率的运行。 测试范围:
对于本系统的测试主要是针对用户登录(包括管理员、考生)、管理员管理科目(是否可以添加、 删除、更新科目信息)、管理员管理题库(是否可以向题库中添加试题、是否可以删除试题、编辑试题)、 管理员管理考生信息(是否可以向考生表中添加考生、是否可以删除删除考生、编辑考生信息)等等。可以使用白盒测试和黑盒测试,等测试方法设计测试用例。 主要步骤:
测试过程按4个步骤进行,即单元测试、集成测试、确认测试和系统测试及发版测试。
4.2 测试计划
软件测试不只是最后对系统进行功能测试即可,而是我们在开发整个系统的过程中,一直都要进行软件测试。第一,在编写代码的阶段,没编写完一个模块的代码就应该进行相应的模块测试;第二,在编写完整个系统之后要进行系统集成测试和用户界面测试;第三,最后要进行beta测试 4.2.1 测试阶段
1) 第一阶段:与编码同步进行单元测试,主要进行白盒测试,代码覆盖率要求达到100%,主要是对函数的逻辑验证
2) 第二阶段:集成测试,对软件设计报告中划分的模块进行功能测试,主要包括系统对管理员模块和考生考试模块功能的测试,例如管理员和考生能否登录、考生是否可以考试、管理员是否可以查看学生的成绩等进行测试;
3)第三阶段:界面测试,这个阶段主要是测试系统的易用性和美观性,应该做到只要登录该系统的人就可以知道该怎么使用该软件,界面一定要友好;
4)第四阶段:回归测试,此阶段是针对前两个阶段作的修改,进行重新测试,检验修改是否影响了系统的其它部分;
5)最后一个阶段:Beta测试,交予其它非开发人员进行黑盒测试,确认完成了需求说明书中的所有功能; 4.2.2 测试进度: 测试模块名称 系统登录测试 测试顺序 按各种登录方式顺序测试 先序完成的测试 无 测试日程安排 2013.06.06上午 管理员添加科目模块 删除科目信息模块 编辑科目模块 管理员添加试题 删除试题模块 管理员生成试卷模块 考生考试模块 按输入科目序号顺序测试 无 无 按试题序号测试 五 无 无 系统登录测试 系统登录测试 系统登录测试 系统登录测试 系统登录测试 系统登录测试、管理员管理科目题库测试 管理员生成试卷模块测试、科目管理测试、试题管理模块 考生考试模块 系统登录测试 系统登录测试 系统登录测试 管理员生成试卷模块测试、科目管理测试 考试考试模块 考生考试模块 2013.06.06上午 2013.06.06上午 2013.06.06上午 2013.06.06上午 2013.06.06下午 2013.06.06下午 2013.06.06晚上 管理员查询成绩模块 管理员添加考生模块 删除考生模块 编辑考生信息模块 考生选择考试科目模块 考生查询成绩模块 考生查询考试记录模块 考生考试先后顺序 按学号先后顺序测试 无 五 无 无 无 2013.06.06下午 2013.06.06下午 2013.06.06下午 2013.06.06晚上 2013.06.06晚上 2013.06.06晚上 2013.06.06晚上 1.1 测试项目说明
1.1.1 管理员和考生登录模块测试
1) 测试目的:
测试系统的登录是否正确、合法,对于合法的用户是否能够执行转入正确的界面,对于非法的用户能否进行正确的处理。 2) 测试方法和测试软件:
以系统管理员信息表中某个用户信息登录系统和非管理员信息表中的任意数据来登录系统,分别用白盒测试中的逻辑覆盖进行测试。
以考生信息表中某个用户信息登录系统和考生信息表中的任意数据来登录系统,分别用白盒测试中的逻辑覆盖进行测试。 3) 测试用例
测试用例1:(管理员)
账号:huangfeng; 密码:hah 预测结果:
登录成功
测试用例2:(管理员)
用户名:12(没有相关的用户); 密码:123456 预测结果:
输入的账号或密码错误,请重新输入 测试用例3:(普通考生)
账号:haungfeng ; 密码:haungfeng 预测结果:
登录成功
测试用例4:(普通考生)
用户名:12(没有相关的用户); 密码:1234 预测结果:
输入的账号或密码错误,请重新输入
1.1.2 管理员添加科目模块
1)测试目的:
测试输入的科目信息是否正确,是否可以添加到科目信息表。 2)测试方法和测试软件:等价类划分法 3)测试用例 测试用例1:
科目序号:1; 科目名称:数学 预测结果:
添加成功 测试用例2:
科目序号:1; 科目名称:数学 预测结果:
提示:科目序号已经存在,不能添加
1.1.3 管理员添加考生信息模块
1)测试目的:
测试输入的考生信息是否正确,是否可以添加到考生信息表。 2)测试方法和测试软件:等价类划分法 3)测试用例 测试用例1:
考生学号:6 准考证号:16 考生姓名:风风 考生密码:123 预测结果:
添加成功 测试用例2:
考生学号:5 准考证号:16 考生姓名:风风 考生密码:123 预测结果:
提示:学号不能重复
1.1.4 管理员添加试题模块
1)测试目的:
测试输入的试题信息是否正确,是否可以添加到试题信息表。 2)测试方法和测试软件:等价类划分法 3)测试用例 测试用例1:
试题编号:30 所属课程号:1 试题类型:单选 试题答案:…… 试题内容:…… A选项:…… B选项:…… C选项:…… D选项:…… 预测结果:
添加成功 测试用例2:
试题编号:1 所属课程号:1 试题类型:多选 试题答案:…… 试题内容:…… A选项:…… B选项:…… C选项:…… D选项:…… 预测结果:
提示:同一门科目试题编号不能一样
1.1.5 考生考试模块
1)测试目的:
测试登录系统的考试是否有考试权限,已经考试过的科目是否还可以考试。 2)测试方法和测试软件:等价类划分法 3)测试用例 测试用例1:
登录账号:1 密码:123 选择科目:马克思主义基本原理 预测结果:
可以考试 测试用例2:
登录账号:1 密码:123 选择科目: 大学物理 预测结果:
提示:该考生该科目考试已完成,不能重复考试。
1.1.6 管理员删除考试科目模块
1)测试目的:
测试管理员删除考试科目后,数据库中是否还有该考试科目的信息。 2)测试方法和测试软件:等价类划分法 3)测试用例 测试用例1:
删除科目序号为2的科目 预测结果:
不再显示该科目信息
1.2 测试分析
1.2.1 管理员和考生登录模块测试
测试的结果和我们的预期结果一致,用例能很好的执行,系统登录测试时,发现了应有的问题,测试成功。
1.2.2 管理员添加科目模块
管理员添加科目时,由于科目的序号是字符串类型,所有和我们预期的科目序号应按“1,2,3,4,…………9,10,11,12……”有出入,实验中是按“1,11,12,……2,……”排序的,发现了测试用例的问题。测试成功。 1.2.3 管理员添加考生信息模块
考生的信息,考生的学号就是主码,所以,添加信息时,考生的名字可以重复,但是考生的学号一定不能重复。测试用例很成功的提出了这个问题。测试成功。 1.2.4 管理员添加试题模块
管理员添加试题时一定要注意的是:在试题库中,试题的编号只能有一个,虽然它们是不同类型的题。要想在一个庞大的数据库中,准确的找到一个题目,就必须设置唯一的编号。测试用例就是针对这一问题设计的,测试成功。 1.2.5 考生考试模块
通过测试,我们发现,我们设计的系统有问题,就是:当考生参加完某一门考试,重新登录号,他还能继续进行该科目的考试。通过修改,问题得到解决。测试成功。 1.2.6 管理员删除考试科目模块
这一模块的测试很简单,而且和删除试题、删除考生信息是一样的,所以我们只进行了一次测试。主要是用到了SQL语句中的Delete语句。测试用例很简单,但也说明了问题。测试成功。
三、 课程设计总结或结论
通过本次设计掌握了写软件项目计划和软件需求,并且了解了软件的测试,掌握了软件测试用例的设计方法。了解到在完成系统设计后,必须进行测试,看是否能实现需求分析中的功能。
四、 参考文献
[1] 史济民、顾春华、郑红. 软件工程: 原理, 方法与应用. 出版地:高等教育出版社,2009年 [2] 齐治昌、谭庆平、宁洪. 软件工程 出版地:高等教育出版社,1997年 [3] 柳永坡,刘雪梅,赵长海.JSP应用开发技术. 北京:人民邮电出版社,2005
[4] 蒋本珊,黄敏.基于数据库和ASP的网上自我测试系统.计算机系统应用,2002(1)
[5] Pressman R S, 郑人杰, 马素霞. 软件工程: 实践者的硏究方法[M]. 机械工业出版社, 2011.
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- ryyc.cn 版权所有 湘ICP备2023022495号-3
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务