附加题:
1对下列子程序进行调试:
procedure example(y,z: real; var x: real)
begin
if (y>1) and (z=0) the n x:=x/y;
if (y=2) or (x=l) the n x:=x+l;
en d.
该子程序接受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.
2、某报表处理系统要求用户输入处理报表的日期,日期限制在2003年1月至2008年12月,即系统只能对该段期间内的报表进行处理,如日期不在此范围内,则显示输入错误信息。
系统日期规定由年、月的6位数字字符组成,前四位代表年,后两位代表月。现要求用黑盒测试法中的边界值法写出测试用例。
答:
输入条件测试用例说明测试数据
报表日期的1个数字字符5
类型及长度5个数字字符20035
7个数字字符2003005
有1个非数字字符2003.5
全部是非数字字符MAY---
6个数字字符200305
日期范围在有效范围200301
边界上选取200812
数据200300
200813
月份范围月份为1月200301
月份为12月200312
月份<1200300
月份>12200313
3、对以下程序进行测试:
PROCEDURE EX (A , B: REAL ; VAR X: REAL );
BEGIN
IF (A=3 ) OR ( B> 1 ) THEN X : =A X B
IF (A>2 ) AND (B=0 ) THEN X : =A —3 END
先画出程序流程图。再按不同逻辑覆盖法设计一种(写出名称)测试数据。
答:
4、程序功能说明书指出,某程序的输入条件为:每个学生可以选修法设计测试
用例。
(1) 按等价分类法设计测试用例(要求列出设计过程)
(2) 按边缘值分析法设计测试用例。
答:
1) 合理等价类
选修1门
选修2门
选修3门
不合理等价类
没选课
选3门以上
测试用例
选修=2
选修=0 选修>3
1至3门课程,试用黑盒语句覆盖A=3 B=0
2) 边缘值法
0,1,3,4
5、设被测试的程序段为:begin
s1 ;
if (x=0) and (y>2) then s2;
if (x<1) or (y=1) then s3 ;
s4 ;
end
可供选择的测试数据组为:
IV 3 1
找出实现( 1 )语句覆盖;( 2)条件覆盖;( 3)判定覆盖至少要选择的数据组。答:(1)I (2) I ,V (3) I ,n 4.请使用流程图、PAD 图各PDL 语言描述下列程序的算法。
(1) 在数据A( 1 ) -A ( 1 0)中求最大数和次大数。
(2) 输入三个正整数作为边长、判断该三条边构成的三角形是等边、等腰或一般三角形。答:
(1)
1 )流程图:
2) PAD 图
3) PDL 语言定义n1=n2=0 输入A(1) A(10)
n1=n2=A(1) while i>10 if A(i)>=n1 n2=n1 n1=A(i) end while
5.用PAD 图描述下面问题的控制结构。
有一个表A(1)、A(2)、 ....... A(n),按递增顺序排列。给定一个Keyw值,在表中用折半查
找。若找到将表位置i送入x,否则将零送到x,同时将Key值插入表中。算法:1)置初值H=1(表头),T=N (表尾)。
2) 置i=[(H+T)/2](取整).
3) 若Key=A(i),则找到,i送到x;若Key>A(i),则Key在表的后半部分,i+1送入H ;
若KeyT为止。
4) 查不到时,将A(i),....,A(N)移到A(i+1),??…A(N+1),Key 值送入A(i)中。
2、已知模块C中的一个判定影响到模块B,如图所示,它违反了SD的设计原则。试问:可以
采用哪些手段对结构图作改进,请说明改进办法并画出改进的结构图。
4、咼考录取统分子系统有如下功能:
(1) 计算标准分:根据考生原始分计算,得到标准分,存入考生分数文件;
(2) 计算录取线分:根据标准分、招生计划文件中的招生人数,计算录取线,存入录取线文件。
试根据要求画出该系统的数据流程图,并将其转换为软件结构图。
答:
(1) 数据流图:
GET Al, A2AK A2-B1. B2
| GET A AA T1T2
3、已知有一抽象的DFD图如下所示,请用SD方法画出相应的结构图。
答:
(2) 软件结构图:
5、图书馆的预定图书子系统有如下功能:
(1) 由供书部门提供书目给订购组。
(2) 订书组从各单位取得要订的书目。
(3) 根据供书目录和订书书目产生订书文档留底。
(4) 将订书信息(包括数目,数量等)反馈给供书单位。
(5) 将未订书目通知订书者。
(6) 对于重复订购的书目由系统自动检查,并把结果反馈给订书者。试根据要求画出该问题的数据流程图,并把其转换为软件结构图。
答:
(1)数据流图:
b 2——梗肝书目3——归焚书目.讦书话草4——归类书目J——订书话单
打——书书目7—iT节书目S——已肝书目9——r S
10——酉肝书目L2, 13-——电新书目14——订书僧息
6、在结构化设计过程中,要将数据流图(DFD)映射成系统结构图(SC),分别画出变换型
数据流和事物型数据流的映射方式。
答:
变换型事务型
曲入变搀传出
琨务|卩心
ZL
按覺事务调度模块输出模块
1
动作1动柞2动柞3
10. 某银行的计算机储蓄系统功能是:将储户填写的存
款单或取款单输入系统,如果是存款,系统记录存款人姓名、住址、存款类型、存款日期、利率等信息,并打印出存款单给储户;如果是取款,系统计算清单储户。请用DFD和IDEF0 描绘该功能的需求,并建立相应的数据字典。
(1)数据流条目:
数据流名称:存款单别名:无
简述:储户存款时填写的项目
来源:储户
去向:记帐数据流量:未知
组成:姓名+住址+存款类型+存款日期+ 利率数据流名称:取款单
别名:无
简述:储户取款时填写的项目
来源:储户
去向:统计数据流量:未知
组成:姓名+住址+取款类型+取款日期+ 利率数据流名称:清单别名:无简述:储户取款后得到的项目来源:记录去向:储户数据流量:未知组成:姓名+住址+取款类型+取款日期+利率+余额
(2)数据存储条目:数据存储名称:账单别名:无简述:存放储户信息及其账目组成:姓名+住址+余额+存款类型+最后修改日期+ 利率组织方式:未知查询要求:能立即查询
(3) 数据项条目:未知
(4) 加工条目:加工名:分类检查编号:无激发条件:接收到存/取款单优先级:优先输入:存/ 取款单
输出:存/ 取款单
加工逻辑:IF 存款单THEN 把存款单输出到统计
ELSE 把取款单输出到统计
ENDIF
加工名:统计编号:无
激发条件:取款单优先级:无输入:取款单输出:清单加工逻辑:根据账单检查此储户是否存在,不存在输出错误{ IF取款数<余额THEN 余额=余额-取款数输出清单到储户,输出现金到储户ELSE
输出错误清单到储户
ENDIF
}
加工名:记录
编号:无
激发条件:存款单优先级:无输入:存款单输出:存款单加工逻辑:根据账单检查此储户是否存在,不存在则建立此储户{
余额=余额+存款数
输出存款单到储户
}
11. 某图书管理系统工程有以下功能:
(1) 借书:输入读者借书证。系统首先检查借书证是否有效,对于第一次借书的读者,在借
书文件建立档案。否则,查阅借书文件,检查该读者所借图书是否超过10本,若已达10
本,拒借,未达10本,办理借书(检查库存、修改库存目录并将读者借书情况登入借书文件).
(2) 还书:从借书文件中读出与读者有关的记录,查阅所借日期,如果超期( 3个月)作罚款处理。否则,修改库存目录与借书文件。
(3) 查询:可通过借书文件、库存目录文件查询读者情况、图书借阅情况及库存情况,打印各种统计表。请就以上系统功能画出分层的DFD图,并建立重要条目的数据字典。
12. 某厂对部分职工重新分配工作的政策是:
年龄在伙岁以下者,初中文化程度脱产学习。高中文化程度当电工;年龄在20岁到40岁之
间者,中学中学文化程度男性当钳工,女性当车工,大学文化程度都当技术员。年龄在40
岁以上者,中学文化程度当材料员,大学文化程序当技术员。请用结构化语言、判定表或判
定树描述上述问题的加工逻辑。
(1)结构化语言:
根据职工年龄和文化程序:
REPEAT
If年龄<=20
If初中文化Then脱产学习endif
else if高中文化Then电工endif
en dif
If 20< 年龄<40
If中学文化
If男性Then钳工
Else
车工
En dif
else if大学文化Then技术员endif
en dif
en dif
If年龄>=40
If中学文化Then材料员
else if大学文化Then技术员endif
en dif
en dif
Un til没有剩余未分配员工
年龄
<=20
C M1=3
>20, <40 D >=40
E 文化程度
中学
G M2=3 咼中 H 大学 I 性别
男 M M3=2 女
F
厂初中脱产学习
1自学考试报名过程中有个“记录报名单”的加工。该加工主要是根据报名表
(姓名、 性
别、身份证号、课程名)和开考课程(课程名、开考时间)、经校核,编号、填写、输出准考证 给报名者,同时记录到考生
名册中
(准考证号、姓名、课程)。请绘制该加工的DFD 图,并写
出数据词典中的数据流条目。 答:
数据流词典 数据流条目:
报名单=姓名+性别+身份证号+课程名 开考课程=课程名+开考时间
考生名册=准考证号+姓名+课程
2、“决定比赛名单”这个加工,根据“运动员名单”和“比赛项目”产生 “项目参加者”
如下图所示,运动员名单要包括所在队名,运动员编号号,运动员姓名,及参加的所有项目。 请写出这三个数据流条目。
附加题: 工工伟
电匸
2 0^r ■高屮或初中一1 -人学技术员 ■高中或初中材料员 -大学技术员 「男性创丄 -女性车工 年龄I 0 * — 址开考课程 正成报名单