软件质量保证与测试作业册参考答案习题一、选择题(每题 1 分,共"分)12345678910DCDAADCADB11121314151617BADBDCB二、填空题(每空 1 分,共 11 分)1、运行、测定2、预防成本、评价成本、失败成本3、软件自身的特点、团队合作、设计和实现问题、管理问题。4、软件缺陷、满足用户的需要三、判断题(每题 1 分,共 11 分)12345678910XXXXXXXXX11X四、解答题(共 40 分)1.试分析应如何降低软件质量成本。(8 分)软件质量成本由预防成本、评价成本、失败成本三个部分组成。预防成本、评价成本的合理变化区间范围较小,而失败成本的变化范围非常大,小到可以忽略不计,大到无法承受。如果不投入必要的预防成本、评价成本,那么软件质量将没有保障,可能问题很多,投入实际使用后可能产生软件失败,导致严重后果和重大损失。2所以软件生产应当投入合理的预防成本和评价成本,提高软件质量,防止软件失败,降低失败成本,从而降低总的软件质量成本。2•什么是 PIE 模型,试分析 PIE 模型对软件测试设计有何指导意义?(10 分)PIE 是 PropagationsInfectionsExecution 三个英文单词首字母的缩写。程序中的缺陷,如果要通过动态测试来观察到,需要三个必要的条件:⑴程序执行路径必须通过错误的代码(Execution-执行);⑵ 在执行错误代码的时候必须符合某个或者某些特定条件,从而触发出错误的中间状态(infection-感染);⑶ 错误的中间状态必须传播到最后输出,使得观测到输•出结果与预期结果不一致(Propagation-传播)这就是 PIE 模型。对某个软件进行软件测试时,如果包含缺陷 Fault 的代码可能没有被执行到;或者测试执行到了包含缺陷 Fault 的代码,但由于不满足特定的输入条件,没有产生错误的中间状态 error;或者产生了错误的中间状态,但没有传播到最后输出,从外部没有发现问题,以上情况都会导致测试工作不充分,发现不了软件中存在的缺陷!PIE 模型对软件测试设计的指导意义在于:通过执行软件,能够发现的问题只有PIE 模型中外部层面的软件失败 Failure,也就是表现出来的问题。程序中处于内部静态层次的缺陷 Fault,和内部中间状态层次的错误 Error,是难以通过执行软件来直接检测出来的。测试设计要做的重要工作之一,就是如何恰当的设计测试数据,使得可能存在的软件缺陷 Fault,通过程序执行都尽可能的产生失败 Failure 并被外部观察到。3.第一类测试方法与第二类测试方法的各自的优缺点是什...