
1.分析图3和表1,其中模块p、t、u更新同一个数据库,其它模块的关系如表1所示,请确定模块之间的耦合类型。
表1 模块间的接口描述
| 编号 | 输入 | 输出 |
| 1 | 班级名称 | 班级编号 |
| 2 | 学生学号 | |
| 3 | 功能代码 | |
| 4 | 学生姓名 | |
| 5 | 班级编号 | 班主任 |
| 6 | 班级编号 | 班长 |
p-s:标记耦合
q-r:控制耦合
q-s:标记耦合
r-t:数据耦合
s-u:数据耦合
p-t-u:公共环境耦合
2.分析图4所示程序流程图,请分析采用条件覆盖进行测试的测试用例,将测试数据写入对应单元格内。
| A | B | C | D |
T1 A>0 , F1 A<0
T2 B>0 , F2 B<0
| 输入条件 | 有效等价类 | 无效等价类 |
| 学生代码输入类型及长度 | 6位数字字符(1) | 有非数字字符(4) |
| 小于6位(5) | ||
| 大于6位(6) | ||
| 入学年份范围 | 在2010~2014之间(2) | 小于2010(7) |
| 大于2014(8) | ||
| 码范围 | 在01到12之间(3) | 小于01(9) |
| 大于12(10) |
| 用例编号 | 学生代码值 | 覆盖范围 |
| 1 | 201001 | (1) (2) (3) |
| 2 | 2010ab | (4) |
| 3 | 20102 | (5) |
| 4 | 2010012 | (6) |
| 5 | 200901 | (7) |
| 6 | 201501 | (8) |
| 7 | 201000 | (9) |
| 8 | 201013 | (10) |
1).分析实验教学管理系统的功能,请用数据流图或者用例图建立功能模型。说明:如果采用数据流图,至少画出顶层和零层。
2).分析实验教学管理系统中的对象,采用类图建立对象模型。
8. 以下伪代码的功能是在输入三个整数后,能够输出最大数和最小数。
程序开始。
定义整型变量a, b, c, max, min;
输入三个数;
if( a > b )
{ max = a;
min = b;
}
else
{ max = b;
min = a;
}
if( max < c )
max = c;
else if( min > c )
min = c;
输出最大值最小值
程序结束。
1)请画出该程序段的控制流图,采用McCabe方法计算其复杂度。
程序流程图:
本题要求是控制流图,我画的是程序流程图,下面那个图是控制流图,根据程序流程图画出来的。
控制流图:
复杂度为4
2)下表为使用条件覆盖法为其计测试用例,请将空缺部分补充完整。
| 用例 | 条件a > b | 条件max < c | 条件min > c |
| a=3,b=2,c=4 | T | T | 未测试 |
| a=2,b=3,c=1 | F | F | T |
| a=2,b=4,c=3 | F | F | F |
10. 有一个自动饮料售货机软件,其规格说明如下:一个自动售货机软件可以销售单价1元5角的盒装饮料。该售货机只接收1元和5角两种硬币,若投入1元5角硬币,按下“可乐”、“雪碧”或“红茶”按钮,则送出相应的饮料;若投入的硬币少于1元5角,则显示错误信息并退出硬币;若投入的硬币多于1元5角,则送出饮料的同时退还多余的硬币。为了测试该软件,使用黑盒测试对其进行测试,请将下面测试用例3—12补充完整。
| 序号 | 输入参数 | 期望输出 | |
| 投入硬币 | 饮料按钮 | ||
| 1 | 无 | 可乐 | 错误信息 |
| 2 | 无 | 雪碧 | 错误信息 |
| 3 | 无 | 红茶 | 错误信息 |
| 4 | 1元 | 可乐 | 错误信息 |
| 5 | 1元 | 雪碧 | 错误信息 |
| 6 | 1元 | 红茶 | 错误信息 |
| 7 | 1.5元 | 可乐 | 可乐 |
| 8 | 1.5元 | 雪碧 | 雪碧 |
| 9 | 1.5元 | 红茶 | 红茶 |
| 10 | 2元 | 可乐 | 送出可乐,并退5角 |
| 11 | 2元 | 雪碧 | 送出雪碧,并退5角 |
| 12 | 2元 | 红茶 | 送出红茶,并退5角 |
| 13 | 2元 | 可乐 | 无零钱,退出所有钱 |
| 14 | 2元 | 无 | 显示已投2元 |
i浏览学生信息:网络学院的任何人员,包括学生和老师,均可以浏览学院任何学生的信息,包括姓名、学号和专业名称。
ii浏览教师信息:网络学院的任何人,包括学生和老师,均可以浏览学院任何教师的信息,包括姓名、工号和职称。
iii登录:网络学院给每人一个账号。拥有授权帐号的学生和老师,可以使用系统提供的页面设置个人密码,并使用该帐号和密码向系统注册。
iv修改个人信息:学生或老师向系统注册后,可以发送电子邮件或使用系统提供的页面,对个人信息进行修改。
v删除个人信息:只有管理员才能删除相关人员的信息。
(1)哪些是参与者?他们之间有什么关系?(5分)
答:学生,教师,管理员。
(2)哪些是用例?(5分)
答:学生,教师,管理员,网络学院的人员
(3)请用UML的用例图分析上题中的系统功能。(5分)
12. 黄淮学院欲开发一个成绩管理系统,用来管理管理院系开出课程的成绩,其主要功能描述如下:
i每门课程的成绩由平时成绩和期末成绩构成。其中平时成绩反映学生平时表现;课程结束后进行期末考试,其成绩作为这门课程的考试成绩。
ii每门课程的主讲教师将学生的平时成绩和考试成绩上传给成绩管理系统。
iii在记录学生成绩之前,系统需要验证这些成绩是否有效。首先,根据学生信息文件来确认该学生是否选修这门课程,若没有,那么这些成绩是无效的;如果他的确选修了这门课程,再根据课程信息和班级信息文件来验证平时成绩和考试是否有效,如果是,那么这些成绩是有效的,否则无效。
iv对于有效成绩,系统将其保存在课程成绩文件中。对于无效成绩,系统会单独将其保存在无效成绩文件中,并将详细情况提交给教务处。在教务处没有给出具体处理意见之前,系统不会处理这些成绩。
v若一门课程的所有有效的平时成绩和考试成绩都已经被系统记录,系统会发送课程完成通知给教务处,告知该门课程的成绩已经齐全。教务处根据需要,请求系统生成相应的成绩列表,用来提交考试委员会审查。
vi在生成成绩列表之前,系统会生成一份成绩报告给主讲教师,以便核对是否存在错误。主讲教师须将核对之后的成绩报告返还系统。
vii根据主讲教师核对后的成绩报告,系统生成相应的成绩列表,递交考试委员会进行审查。考试委员会在审查之后,上交一份成绩审查结果给系统。对于所有通过审查的成绩,系统将会生成最终的成绩单,并通知每个选课学生。
现采用结构化方法对这个系统进行分析与设计,得到如图1-1所示的顶层数据流图和图1-2所示的0层数据流图。
图1-1 顶层数据流图
图1-2 0层数据流图
(1)使用说明中的词语,给出图1-1中外部实体E1~E4的名称。(4分)
E1:考试委员会 E2:主讲教师 E3:学生 E4:教务处
(2)使用说明中的词语,给出图1-2中数据存储D1~D5的名称。(5分)
D1:学生信息文件
D2:课程单元文件
D3:课程信息文件
D4:课程成绩文件
D5:无效成绩文件
(3)数据流图1-2缺少了三条数据流,根据说明及数据流图1-1提供的信息,分别指出这三条数据流的起点和终点。(6分)
| 数据流名称 | 起 点 | 终 点 |
| D4课程成绩文件 | 4 生成成绩列表 | |
| D1学生信息文件 | 5 生成最终成绩单 | |
| 4 学生成绩列表 | 5 生成最终成绩单 |
13. 某个学生成绩管理系统的部分功能如下:
(1)基本信息管理:教务管理人员输入或修改学期教学执行计划、学生名单和教师名单;
(2)学生选课:学生根据教学执行计划进行选课;
(3)分配任课教师:教务管理人员为符合开课条件的课程分配教师,并打印任课通知单给教师;
(4)成绩管理:每门课程的教师在考试评分结束后将考试成绩交给教务管理人员,教务管理人员输入、维护成绩,系统可生成成绩单(发给学生)、成绩统计分析表(发给教务管理人员)。
请根据要求画出该问题的分层数据流图(要求画出顶层和0层数据流图)。
14.下面是一段伪码程序(代码前的数字只作标号用,不参与程序执行):
START
1:INPUT(A,B,C,D)
2:IF(A>0)AND(B>0)
THEN
3:X=A+B
ELSE
4:X=A-B
5:END
6:IF(C>A)OR(D
THEN
7:Y=C-D
ELSE
8:Y=C+D
9:END
10:PRINT(X,Y)
STOP
根据以上的描述
(1)画出对应的流程图。
(2)计算程序图的环形复杂度。
15.某电器集团公司下属的厂包括技术科、生产科等基层单位。现在想建立一个计算机辅助企业管理系统,其中:
生产科的任务是:
(1)根据销售公司转来的内部合同(产品型号、规格、数量、交获日期)制定车间月生产计划。
(2)根据车间实际生产日报表、周报表调整月生产计划
(3)以月生产计划为以及,制定产品设计(结构、工艺)及产品组装月计划。
(4)将产品的组装计划传达到各科,将组装月计划分解为周计划,下达给车间
技术科的任务是:
(1)根据生产科转来的组装计划进行产品结构设计,产生产品装配图给生产科,产生外购需求计划给供应科,并产生产品自制物料清单。
(2)根据组装计划进行产品工艺设计,根据产品自制物料清单产生工艺流程图给零件厂。试写出以上系统中生产科和技术科处理的软件结构图。
