《软件工程》应用题
四、应用题(每小题10分)
1.某培训中心要研制一个计算机管理系统。它的业务是:
将学员发来的信件收集分类后,按几种不同的情况处理。
(1)如果是报名的,则将报名数据送给负责报名事务的职员,他们将查阅课程文件,检查该课程是否额满,然后在学生文件、课程文件上登记,并开出报告单交财务部门,财务人员开出发票给学生。
(2)如果是想注销原来已选修的课程,则由注销人员在课程文件、学生文件和帐目文件上做相应的修改,并给学生注销单。
(3)如果是付款的,则由财务人员在帐目文件上登记,也给学生一张收费收据。
要求:
(1)对以上问题画出数据流程图。
(2)画出该培训管理的软件结构图。
解答:
(1)数据流图
(2)软件体系结构
2.建立窗口系统的对象模型,问题陈述如下:“窗口分为对话窗、图形窗、滚动窗三种。对话窗中有若干对话项,由唯一的项名字来确定;对话项分为按钮、选择项和正文项三种,选择项中有若干选择项入口。图形窗中有若干形状元素,形状元素分为一维形状和二维形状。一维形状又分为直线、圆弧、折线;二维形状分为圆、椭圆、矩形、多边形,其中折线与多边形由若干有序顶点组成。正文窗是滚动窗的一种,而图形滚动窗既是图形窗又是滚动窗。”
解答:
3.假设某航空公司规定,乘客可以免费托运行李的重量不超过30公斤。当行李的重量超出30公斤时,对一般舱的国内乘客超重部分每公斤收费4元,对头等舱的国内乘客超重部分每公斤收费6元。对国外乘客超重部分每公斤收费比国内乘客多一倍,对残疾乘客超重部分每公斤收费比正常乘客少一半。试画出相应判定表。
注意:免费那个行去掉右面的√
4.下图描述了某个子程序的处理流程,根据判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖、路径覆盖等五种覆盖标准,从供选择的答案中分别找出满足相应标准的最小的测试数据组。
(1) a=5 b=1 (2) a=5 b=-1
(3) a=5 b=1 (4) a=5 b=1
a=-5 b=-1 a=0 b=-1
(5) a=5 b=-1 (6) a=5 b=1
a=-5 b=1 a=0 b=0
a=-5 b=-1 a=-5 b=-1
(7) a=5 b=1 (8) a=5 b=1
a=0 b=1 a=0 b=-1
a=0 b=-1 a=-5 b=1
a=-5 b=1 a=-5 b=-1
流程图如下:
解答:
达到判定覆盖为(4);
达到条件覆盖为(3);
达到判定/条件覆盖为(6);
达到条件组合覆盖为(8);
达到路径覆盖为(7)。
5.人们往往根据天气情况决定出门时的行装;天气可能下雨,也可能不下雨;天气可能变冷,也可能不变冷。如果天气要下雨,出门时带上雨伞;如果天气变冷,出门时要穿上大衣。解答:
6.建立以下有关“微机”的对象模型。
一台微机有一个显示器,一个主机,一个键盘,一个鼠标,汉王笔可有可无。主机包括一个机箱,一个主板,一个电源及储存器等部件。储存器又分为固定储存器和活动存储器两种,固定存储器为内存和硬盘,活动存储器为软盘和光盘。
解答:
7.某银行计算机储蓄系统的工作流程大致如下:储户填写的存款单或取款单由业务员键入系统,如果是存款则系统记录存款人的姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、利率及密码(可选)等信息,并印出存款单给储户;如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。请用数据流图描绘本系统的功能,并画出系统的E-R图。
解答:
DFD图:
ER图:
8.请对下列子程序进行测试:
procedure example(y,z: real; var x: real)
begin
if (y>1) and (z=0) then x:=x/y;
if (y=2) or (x=l) then x:=x+l;
end.
该子程序接受x, y, z的值,并将计算结果x的值返回给调用程序。
要求:
(1)画出程序流程图。
(2)依据条件组合覆盖标准设计测试用例。
(1)程序流程图
(2)条件组合覆盖设计测试用例
①y=2, z=0, x=4;
②y=2, z=1, x=1;
③y=1, z=0, x=2;
④y=1, z=1, x=1.
9.自学考试报名过程中有个“记录报名单”的加工。该加工主要是根据报名表(姓名、性别、身份证号、课程名)和开考课程(课程名、开考时间)、经校核,编号、填写、输出准考证给报名者,同时记录到考生名册中(准考证号、姓名、课程)。
请绘制该加工的DFD图,并写出数据词典中的数据流条目。
解答:
(1)DFD图:
(2)数据流词典
报名单= 姓名+ 性别+ 身份证号+ 课程名
开考课程= 课程名+ 开考时间
考生名册= 准考证号+ 姓名+ 课程
10.下图描述了某个子程序的处理流程,根据判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖、路径覆盖等五种覆盖标准,从供选择的答案中分别找出满足相应标准的最小的测试数据组。
(1) a=5 b=1 (2) a=5 b=-1
(3) a=5 b=1 (4) a=5 b=1
a=-5 b=-1 a=0 b=-1
(5) a=5 b=-1 (6) a=5 b=1
a=-5 b=1 a=0 b=0
a=-5 b=-1 a=-5 b=-1
(7) a=5 b=1 (8) a=5 b=1
a=0 b=1 a=0 b=-1
a=0 b=-1 a=-5 b=1
a=-5 b=1 a=-5 b=-1
流程图如下:
解答:
达到判定覆盖为(4);
达到条件覆盖为(3);
达到判定/条件覆盖为(6);
达到条件组合覆盖为(8);
达到路径覆盖为(7)。
11.某培训中心要研制一个计算机管理系统。它的业务是:
将学员发来的信件收集分类后,按几种不同的情况处理。
1)如果是报名的,则将报名数据送给负责报名事务的职员,他们将查阅课程文件,检查该课程是否额满,然后在学生文件、课程文件上登记,并开出报告单交财务部门,财务人员开出发票给学生。
2)如果是想注销原来已选修的课程,则由注销人员在课程文件、学生文件和帐目文件上做相应的修改,并给学生注销单。
3)如果是付款的,则由财务人员在帐目文件上登记,也给学生一张收费收据。
要求:
1)对以上问题画出数据流程图。
2)画出该培训管理的软件结构图的主图。
解答:
(1)数据流图:
(2)软件结构图:
12.某“调整工资”处理模块接受一个“职称”的变量,根据职称的不同(助教,讲师,副教授,教授)作不同的处理,其中若是助教还必须输入工龄,只有工龄超过两年才能调整工资。请用等价类划分法设计测试用例。
解答;
划分等价类:
计测试用例:
13.对以下程序进行测试:
PROCEDURE EX(A,B:REAL;VAR X:REAL);
BEGIN
IF(A=3)OR(B> 1)THEN X:=A×B
IF(A>2)AND(B=0)THEN X:=A-3
END
要求:先画出程序流程图。再按语句覆盖法设计测试数据。
语句覆盖A=3 B=0
14.某报社采用面向对象技术实现报刊征订的计算机管理系统,该系统基本需求如下:(1)报社发行多种刊物,每种刊物通过订单来征订,订单中有代码,名称,订期,单价,
份数等项目,订户通过填写订单来订阅报刊。
(2)报社下属多个发行站,每个站负责收集登陆订单、打印收款凭证等事务。
(3)报社负责分类并统计各个发行站送来的报刊订阅信息。
请就此需求建立对象模型。
解答:
15.为以下程序流程图分别设计语句覆盖和判定覆盖测试用例并标明程序执行路径。
(x=2) OR (z>1)
a
(x>1) AND (y=0)语句段1
语句段2
开始
结束
T
T
F
F
b
c
d
e
解答:
1)语句覆盖测试用例
令x=2,y=0,z=4作为测试数据,程序执行路径为abcde。
2)判定覆盖——分支覆盖
可以设计如下两组数据以满足判定覆盖:
x=3,y=0,z=1(通过路径abce);
x=2,y=1,z=2(通过路径acde)。
x=2,y=1,z=1;覆盖路径acde
x=1,y=1,z=1;覆盖路径ace
x=3,y=0,z=1;覆盖路径abce
16.高考录取统分子系统有如下功能:
(1)计算标准分:根据考生原始分计算,得到标准分,存入考生分数文件;
(2)计算录取线分:根据标准分、招生计划文件中的招生人数,计算录取线,存入录取线文件。
试根据要求画出该系统的数据流程图,并将其转换为软件结构图。
解答:
1)数据流图:
(2)软件结构图:
①原始分②标准分③招生计划④录取线
17.某校制定了教师的讲课课时津贴标准。对于各种性质的讲座,无论教师是什么职称,每课时津贴一律是50元;而对于一般的授课,则根据教师的职称来决定每课时津贴费:教授30元,副教授25元,讲师20元,助教15元。请用判定表描述上述问题。
解答:
判定表:
12345
18.已知有如下的伪代码程序:
START
I:=1;
WHILE i:<=n-1 DO
min:=A[i];
j:=i+1;
WHILEj<=n DO
IF min>A[j]
THEN
BLOCK
temp:=min;
min:=A[j];
A[j]:=temp;
ENDBLOCK
ENDIF;
j:=j+1;
ENDDO
i:=i+1;
ENDDO
STOP
请用流程图描述。
解答:
19.某旅馆的电话服务如下:
可以拨分机号和外线号码。分机号是从7201至7299。外线号码先拨9,然后是市话号码或长话号码。长话号码是以区号和市话号码组成。区号是从100到300中任意的数字串。市话号码是以局号和分局号组成。局号可以是455,466,888,552中任意一个号码。分局号是任意长度为4的数字串。
要求:写出在数据字典中,电话号码的数据条目的定义(即组成)。
解答:
电话号码=分机号|外线号码
分机号=7201..7299
外线号码=9+[市话号码|长话号码]
长话号码=区号+市话号码
区号=100 (300)
市话号码=局号+分局号
局号=[455|466|888|552]
分局号=4{数字}4
20.某报表处理系统要求用户输入处理报表的日期,日期限制在2003年1月至2008年12月,即系统只能对该段期间内的报表进行处理,如日期不在此范围内,则显示输入错误信息。系统日期规定由年、月的6位数字字符组成,前四位代表年,后两位代表月。现要求用黑盒测试法中的边界值法写出测试用例。
解答:
21..某公司为本科以上学历的人重新分配工作,分配原则如下:
(1)如果年龄不满18岁,学历是本科,男性要求报考研究生,女性则担任行政工作;
(2)如果年龄满18岁不满50岁,学历本科,不分男女,任中层领导职务,学历是硕士不分男女,任课题组组长;
(3)如果年龄满50岁,学历本科,男性任科研人员,女性则担任资料员,学历是硕士不分男女,任课题组组长。
要求:画出分析过程,得出判定表,并进行化简。
解答:
(1)判定条件可能取值表:
(2)计算组合数2*3*2=12;
(3)初步判定表
行政√
资料员√
考研√
22.根据下列条件使用等价类划分法设计测试用例。某一8位微机,其八进制常数定义为:以零开头的数是八进制整数,其值的范围是-177~177,如05,0127,-065
1)划分等价类并编号,如下表示:
(2)为合理等价类设计测试用例,表中有两个合理等价类,设计两个例子
(3)为不合理等价类测试用例,至少设计一个测试用例
23.图书馆的预定图书子系统有如下功能:
(1) 由供书部门提供书目给订购组。
(2) 订书组从各单位取得要订的书目。
(3) 根据供书目录和订书书目产生订书文档留底。
(4) 将订书信息(包括数目,数量等)反馈给供书单位。
(5) 将未订书目通知订书者。
(6) 对于重复订购的书目由系统自动检查,并把结果反馈给订书者。
试根据要求画出该问题的数据流程图,并把其转换为软件结构图。
解答:
(1)数据流图:
(2)软件结构图:
24.下面是某程序的流程图:
(1) 计算它的环路复杂性。
(2) 为了完成基本路径测试,求它的一组独立的路径。解答:
(1)环路复杂性=判断数+1=6+1=7(个)
(2)路径1:0 —①—○13—○19
路径2:0 —②—③—○14—○19
路径3:0 —②—④—⑤—○15—○19
路径4:0 —②—④—⑥—⑦—○16—○19
路径5:0 —②—④—⑥—⑧—⑨—○17—○19
路径6:0 —②—④—⑥—⑧—⑩—○11―○18—○19路径7:0 —②—④—⑥—⑧—⑩—○12—○19