软件工程导论课后习题答案 联系客服

发布时间 : 星期六 文章软件工程导论课后习题答案更新完毕开始阅读c58f28ffaef8941ea76e058a

大学生校园网—努力打造大学生最实用的网络平台! http://www.vvschool.cn

黑盒测试也称为功能测试,它着眼于程序的外部特征,而不考虑程序的内部逻辑结构。测试者把被测程序看成一个黑盒,不用关心程序的内部结构。黑盒测试是在程序接口处进行测试,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。

黑盒测试主要采用的技术有:等价分类法、边沿值分析法、错误推测法和因果图等技术。 5.什么是白盒测试?白盒测试主要采用的技术有哪些?

测试者了解被测程序的内部结构和处理过程,对程序的所有逻辑路径进行测试,在不同点检查程序状态,确定实际状态与预期状态是否一致。

白盒测试主要采用的技术有:路径测试技术和事务处理流程技术,对包含有大量逻辑判断或条件组合的程序采用基于逻辑的测试技术。

6.路径测试技术中几种主要覆盖的含义?举例说明?

语句覆盖:至少执行程序中所有语句一次。

判定覆盖:使被测程序中的每一个分支至少执行一次。故也称为分支覆盖。 条件覆盖:执行所有可能的穿过程序的控制路流程。

条件组合测试:设计足够的测试用例,使每个判定中的所有可能条件取值组合至少执行一次。

(例略)

7.等价分类法的测试技术采用的一般方法?举例说明?

(1) (1) 为每个等价类编号;

(2) (2) 设计一个新的测试方案,以尽可能多的覆盖尚未被覆盖的有效等价类,重复这

一步骤,直到所有有效等价类被覆盖为止。

(3) (3) 设计一个新的测试方案,使它覆盖一个尚未被覆盖的无效等价类, 重复这一步

骤,直到所有无效等价类被覆盖为止。 (例略)

8.软件测试的一般步骤?

单元测试、子系统测试、系统测试、验收测试、平行测试。 9.比较集成试的两种方式的优劣?

非渐增式测试方式:分别测试模块,再把所有模块按设计要求放在一起组成所要的程序。该方法编写测试软件工作量大,模块间的接口错误发现得晚,错误定位较难诊断,总体测试有的错误容易漏掉,测试时间相对较少,可以并行测试所有模块,能充分利用人力,加快工程进度。。

渐增式测试方式:把下一个要测试的模块,同已经测试好的那些模块结合起来进行测试。该方法利用已测试过的模块作测试软件,开销小,较早发现模块间的接口错误,错误定位往往和最近入的模块相关,对已测试好的模块可在新加入模块的条件下受到新的检验,测试更彻底,需要较多的测试时间,不能并行测试。

总的来说,渐增式测试方法比较好。 10.软件测试的策略?

(1) (1) 在任何情况下都应使用边界值分析的方法。 (2) (2) 必要时用等价类划分法补充测试方案。 (3) (3) 必要时再用错误推测法补充测试方案。 (4) (4) 对照程序逻辑,检查已设计出的测试方案。

(5) (5) 根据对程序可靠性的要求采用不同的逻辑覆盖标准,再补充一些测试方案。 二.某电力公司有A、B、C、D共四类收费标准,并规定,居民用电每月200度以下按A类收费, 200度以上按B类收费。动力电以每月1万度为分界,非高峰用电不足1万度按B类收费,达到或超过1万度按C类收费。高峰用电不足1万度按C类收费,达到或超过1万度按D类收费。试用基于逻辑的测试方法为它设计足够的测试用例实现条件组合的完全覆概。 规则号 1 2 3 4 5 6 居民 用电 200度以下 Y 更多精彩尽在大学生校园网—VvSchool.CN

大学生校园网—努力打造大学生最实用的网络平台! http://www.vvschool.cn

200度以上 动非高力峰 用电 高峰 1万度以下 1万度以上 1万度以下 1万度以上 收费 标准 用电类型 居民 用电 动力用电 非 高峰 高峰 测试用例 输入数据 90度/月 110度/月 8000度/月 12000度/月 9000度/月 11000度/月 预期结果 A B B C C D A类 B类 C类 D类 ▲ Y ▲ Y ▲ Y ▲ Y ▲ Y ▲ 三.如图显示某程序的逻辑结构。 试为它设计足够的测试用例,分别实现对程序的判定覆概、条件覆概和条件组合覆概。

设计测试方案

更多精彩尽在大学生校园网—VvSchool.CN

大学生校园网—努力打造大学生最实用的网络平台! http://www.vvschool.cn

覆盖种类 判定覆盖 需满足的条件 A>1,B=0 A>1,B?0或 A?1,B=0或 A?1,B?0 以下四种情况各出现一次 A>1 A?1 条件组合 覆盖 A>1,B=0 A>1,B?0 A?1,B=0 A?1,B?0 B=0 B?0 测试数据 A=2,B=0 A=2,B=1或 A=1,B=0或 A=1,B=1 A=2,B=0 A=1,B=1 A=2,B=0 A=2,B=1 A=1,B=0 A=1,B=1 期望结果 执行S1 执行S2 执行S1 执行S2 执行S1 执行S2 执行S2 执行S2 条件覆盖

四.某城市电话号码由三部分组成。它们的名称和内容分别是: 地区码:空白或三位数字; 前 缀:非‘0’或‘1’的三位数字; 后 缀:4位数字。 假定被测程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的电话号码。根据该程序的规格说明,作等价类的划分,并设计测试方案。 1.划分等价类 输入条件 有效等价类 无效等价类 地区码 前 缀 1.空白; 2.三位数; 3.从200到999之间的三位 4.四位数字。 1. 1. 有非数字字符;2.少于三位数字; 3.多于三位数字。 4.有非数字字符;5.起始位为‘0’; 6.起始位为‘1’; 7.少于三位数字; 8.多于三位数字。 9.有非数字字符;10.少于四位数字; 11.多于四位数字。 后 缀

方案 设计测试方案 内容 地区码 前缀 200~999之间的三位数字 后缀 四位数字 四位数字 输 入 ( )276-2345 (635)805-9321 (20A)723-4567 (33 )234-5678 (5555)345-6789 (345)5A2-3456 (345)012-3456 (345)132-3456 (345) 92-3456 (345)4562-3456 预期 输出 有效 有效 无效 无效 无效 无效 无效 无效 无效 无效 无效 无效 1 空白 2 三位数字 3 有非数字字符 4 少于三位数字 5 多于三位数字 6 7 8 9 10 11 12 有非数字字符 起始位为‘0’ 起始位为‘1’ 少于三位数字 多于三位数字 有非数字字符 (345)342-3A56 少于四位数字 (345)342- 356 更多精彩尽在大学生校园网—VvSchool.CN

大学生校园网—努力打造大学生最实用的网络平台! http://www.vvschool.cn

13 多于四位数字 (345)562-34567 无效

第八章 软件维护 习题答案

1.为什么说软件的维护是不可避免的? 因为软件的开发过程中,一般很难检测到所有的错误,其次软件在应用过程中需要随用户新的要求或运行环境的变化而进行软件的修改或完成功能的增删等,为了提高软件的应用水平和使用寿命,软件的维护是不可避免的。

2.软件的维护一般分为哪几类? 改正性维护:满足用户对已开发产品的性能与运行环境不断提高的要求,进而达到延长软件寿命的目的。 适应性维护:对程序使用期间发现的程序错误进行诊断和改正的过程,配合变化了的环境进行修改软件的活动; 完善性维护:满足用户在使用过程中提出增加新的功能或修改已有功能的建议而进行的工作;

预防性维护:为了改善未来的可维护性或可靠性而修改软件的工作。

3.影响软件维护的因素有哪些? 开发方法:采用模块化详细设计文档有助于理解软件的结构、界面功能和内部流程;开发过程中严格而科学的管理规划及清晰可靠的文档资料对发生错误后的理解与纠错是至关重要的;开发过程中模块的独立程度越高,对软件修改越容易,对软件的改进和移植越方便。 开发条件:软件开发及维护人员的水平决定了软件开发的质量和维护的效率;开发过程中使用标准的程序设计语言和标准的操作系统接口,可以大大提高软件的可维护性;在测试过程中用例的有效性,可极大地减少软件存在的错误;其次使用规范化的文档资料可为维护提供更好的依据。

4.软件维护困难主要表现在什么方面?

(1) 一般来讲,维护人员对开发人员写的程序及文档,理解都比较困难,对维护工作不会喜欢;

(2) 维护持续时间都很长,在开发人员不在现场的轻快下,维护软件通常是很困难的; (3) 绝大多数软件在设计时对将来的软件修改都没有考虑或考虑不多,尤其未能在设计中强调并认真解决好模块的独立性,使软件的修改既困难又易发生差错。

5.决定软件可维护性的因素?

(1) 软件的可理解性、可测试性、可修改性;

(2) 文档描述符合要求、用户文档简洁明确、系统文档完整并且标准。

6.软件价格应该计入维护成本吗?为什么? 在软件的生命周期中,软件维护的工作量非常大,不同应用领域的维护成本差别也很大。一般大型软件的维护成本远远高于开发成本若干倍。因此软件价格

更多精彩尽在大学生校园网—VvSchool.CN