当前位置:文档之家› (0010)软件工程复习思考题

(0010)软件工程复习思考题

(0010)《软件工程》复习思考题
模拟试卷一(开卷)
“商场管理信息系统”问题描述:
库房管理员负责录入商品的入库和出库信息,系统自动根据库房管理员的输入修改库房的库存商品信息;当商品的库存数量低于临界值,系统自动打印出缺货商品的采购单交给采购员。

售货员负责登入商品销售信息(品名,编号,销售量,单价),系统根据售货员的输入,自动修改前台商品库存信息,当前台商品数量低于临界值,系统打印出领货通知单交给库房管理员。

问题1:画出尽可能详细的“商场管理信息系统”数据流图。

问题2:按照软件工程的规范写出“商品入/出库信息”的数据字典(定义到第2层)。

问题3:根据问题1中你所画的数据流图,采用面向数据流的方法,画出系统的软件结构图问题4:已知“销售模块”的IPO表如下,请画出该模块的程序流程图。

问题5:请至少用两种测试方法设计出两套测试数据,用于测试问题4中你设计的程序,并说明你采用了什么测试方法。

模拟试卷二(开卷)
“报刊订阅系统”问题描述:
系统保存所有通过邮局发行的报刊的与发行有关的信息;接受订阅者的订阅和付款,并保存订阅、付款日期和金额、以及投递信息;输出投递和订阅清单;接受顾客的查询服务;统计各报刊的各阶段的总订阅数,并输出各报社、各杂志社的订单汇总表。

问题1:画出尽可能详细的“报刊订阅系统”数据流图。

问题2:按照软件工程的规范写出“报刊订单”的数据字典(定义到第2层)。

问题3:根据问题1中你所画的数据流图,采用面向数据流的方法,画出系统的软件结构图问题4:已知“订阅模块”的IPO表如下,请画出该模块的程序流程图。

问题5:请至少设计出两组测试数据,用于测试问题4中你设计的程序,并说明你采用了什么测试方法和目的。

(0010)《软件工程》复习思考题答案
模拟试卷一
“商场管理信息系统”问题描述:
库房管理员负责录入商品的入库和出库信息,系统自动根据库房管理员的输入修改库房的库存商品信息;当商品的库存数量低于临界值,系统自动打印出缺货商品的采购单交给采购员。

售货员负责登入商品销售信息(品名,编号,销售量,单价),系统根据售货员的输入,自动修改前台商品库存信息,当前台商品数量低于临界值,系统打印出领货通知单交给库房管理员。

问题1:画出尽可能详细的“商场管理信息系统”数据流图。

问题2:按照软件工程的规范写出“商品入/出库信息”的数据字典(定义到第2层)。

问题3:根据问题1中你所画的数据流图,采用面向数据流的方法,画出系统的软件结构图问题4:已知“销售模块”的IPO表如下,请画出该模块的程序流程图。

问题5:请至少用两种测试方法设计出两套测试数据,用于测试问题4中你设计的程序,并
说明你采用了什么测试方法。

参考答案 问题1.
问题2. 商品入/出库信息={品名+编号+生产厂家+数量+单价+入/出库日期+经手人}
品名=20{ 字符 }20 编号=10{ 数字} 10 数量=10{ 数字} 10
生产厂家=20{ 字符 }20
单价=5{ 数字} 5+”.”+2{ 数字} 2 入/出库日期=10{ 数字 }10
经手人=
10{ 字符 }10 问题3.
问题4:
问题5
由于流程图只有一个判断语句,且判断语句中的变量(ng)只有一个,而临界值是一个常数10,所以测试数据的选取只与ng有关。

1、取ng=10,可对该程序进行边界值测试法,这属于黑盒测试,测试目的在于测试程序能不能处理商品数量刚好等于临界值的情况。

2、取:ng =11,
ng=8
可对该程序进行语句覆盖或判定覆盖测试,属于白盒测试。

语句覆盖的测试目的在于将程序的每条语句都执行到,以判断语句有无错误;判定覆盖测试目的在于
通过测试将程序中判定的真假分支都执行一遍,以观察判定的每个分支有无错误产
生。

模拟试卷二
“报刊订阅系统”问题描述:
系统保存所有通过邮局发行的报刊的与发行有关的信息;接受订阅者的订阅和付款,并保存订阅、付款日期和金额、以及投递信息;输出投递和订阅清单;接受顾客的查询服务;统计各报刊的各阶段的总订阅数,并输出各报社、各杂志社的订单汇总表。

问题1:画出尽可能详细的“报刊订阅系统”数据流图。

问题2:按照软件工程的规范写出“报刊订单”的数据字典(定义到第2层)。

问题3:根据问题1中你所画的数据流图,采用面向数据流的方法,画出系统的软件结构图问题4:已知“订阅模块”的IPO表如下,请画出该模块的程序流程图。

问题5:请至少设计出两组测试数据,用于测试问题4中你设计的程序,并说明你采用了什么测试方法和目的。

参考答案:
问题1.
说明:绘制数据流图可以采用分层的方法,即先绘制出顶层数据流图,用于说明整个系统的概貌,然后再分块绘制下层数据流图。

本题答案给出的是顶层数据流图,大家可自行绘
制“订阅,付费”,“订单统计”等下层数据流图。

问题 2.
问题 3.
问题 4
问题5:
因为程序中有两个判断,所以测试数据围绕这两个判断展开,令“存在该报刊”为X,“付款”为Y,则
为达到条件覆盖,需要四组测试数据:
(X=true,Y=true)
(X=true,Y=false)
(X=false,Y=true)
(X=false,Y=false)
条件覆盖的含义是,不仅每个语句至少执行一次,而且使判定表达式中的每个条
件都取到各种可能的结果。

为达到判定覆盖,需要三组测试数据:
(X=true,Y=true)
(X=true,Y=false)
(X=false,Y=true或false)
判定覆盖又叫分支覆盖,它的含义是,不仅每个语句必须至少执行一次,而且每
个判定的每种可能的结果都应该至少执行一次,也就是每个判定的每个分支都至
少执行一次。

相关主题