教育部职业教育与成人教育司推荐教材·软件的质量:软件的分析、测试与验证pdf下载pdf下载

教育部职业教育与成人教育司推荐教材·软件的质量:软件的分析、测试与验证百度网盘pdf下载

作者:
简介:本篇主要提供教育部职业教育与成人教育司推荐教材·软件的质量:软件的分析、测试与验证pdf下载
出版社:机械工业出版社自营官方旗舰店
出版时间:2009-07
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

内容简介

  《软件的质量:软件的分析、测试与验证》详细地叙述了当前软件质量保证的技术、方法、原理和构成方面的最新知识,每一章的开始足本章的简介,使读者了解本章要讲述的内容;每一章的结束部分都有评价,对从业人员来说具有实践指导意义。《软件的质量:软件的分析、测试与验证》在写作上注重了将理论和实践、软件和硬件、经验知识和教学知汉领域的牢固结合,使读者更贴近软件开发这个重要的领域。
  《软件的质量:软件的分析、测试与验证》适合作为高等教育计算机相关专业的教材和教学参考书,也可用作从业人员的参考书。

内页插图

目录

出版说明
翮吾
第1章 引言
1.1 动机
1.2 数据和概念的定义
1.3 技术水平
1.3.1 质量管理
1.3.2 软件质量保证
1.3.3 硬件质量安全
1.3.4 软件密集型系统的质量保障
1.4 测试技术的分组与归类
1.4.1 动态测试
1.4.2 静态分析
1.4.3 形式技术:符号测试和形式证明流程
1.5 组织结构

第2章 面向功能型测试
2.1 面向功能型测试的属性和目标
2.2 功能性等价类划分
2.2.l功能性等价类划分的属性和目标
2.2.2 描述功能性等价类划分
2.2.3 评价功能性等价类划分
2.3 以状态为基础的测试
2.3.1 以状态为基础的测试的属性和目标
2.3.2 描述以状态为基础的测试
2.3.3 评价以状态为基础的测试
2.4 原因一效果一分析
2.5 其他面向功能型测试技术
2.5.1 句法测试
2.5.2 以事务流为基础的测试
2.5.3 以判定表格为基础或者以判定树为基础进行测试
2.6 评价面向功能型测试

第3章 面向控制流程的、面向结构的测试
3.l面向控制流程的测试属性和目标
3.2 指令覆盖测试
3.2.1 指令覆盖测试的属性和目标
3.2.2 描述指令覆盖测试
3.2.3 评价指令覆盖测试
3.3 了项覆盖测试
3.3 1子项覆盖测试的属性和目标
3.3.2 描述子项覆盖测试
3.3 3子项覆盖测试的问题
3.3.4 评价子项覆盖测试
3.4 条件覆盖测试
3.4.1 条件覆盖测试的属性和目标
3.4.2 简单的条件覆盖测试
3.4.3 条件/判定覆盖测试
3.4.4 最小多重条件覆盖测试
3.4.5 修正条件/判定覆盖测试
3.4.6 多重条件覆盖测试
3.4.7 问题
3.4.8 评估条件覆盖测试
3.5 测试循环的技术
3.5.1 属性和目标
3.5.2 结构化路径测试和边界一内部路径测试
3.5.3 LCSAJ测试
3.6 路径覆盖测试
3.6.1 路径覆盖测试的属性和目标
3.6.2 评价路径覆盖测试
3.7 评价面向流程控制的测试

第4章 数据流型、面向结构型测试
4.1 数据流型测试的属性和目标
4.2 定义/用途测试
4.3 必需的k元组测试
4.4 数据上下文覆盖
4.5 评价而向数据流的测试

第5章 特殊的动态测试技术
5.1 多样化测试
5.1.1 多样化测试的属性和目标
5.1.2 背靠背测试
5.1.3 变异测试
5.1.4 回归钡5试
5.l.5 评价多样化测试
5.2 定义域测试(DomainTesting)
5.2.1 定义域测试的属性和目标
5.2.2 路径域测试
5.2.3 测试发现错误的子域
5.2.4 分析分析
5.2 5评价定义域测试
5.3 随机测试
5.4 错误猜测
5.5 使用判断
5.6 评价

第6章 软件测量
6.1 软件度量的属性和目标
6.2 度量和规格
6.3 度量类型
6.4 对度量的要求
6.5 度量标准
6.5.l 基础
6.5.2 标准讨论
6.6 为度量系统记录数据
6.7 有目标的定义度量
6.8 分析度量
6.8.1 表述度量值
6.8.2 评价经验中获得的知识
6.8.3 用统计技术分析
6.9 软件的重要度量
6.9.1 跳字的复杂性
6.9.2 Halstead度量
6.9.3 度量活变量
6.9.4 度量“变量取值范围”
6.9.5 平均故障问隔时间
6.10 软件度量的个案研究
6.11 评价软件度量

第7章 利用工具进行静态代码分析
7.1 利用工具进行静态代码分析的属性和目标
7.2 形态分析
7.2.1 形态分析的属性和日标
7.2.2 测试是否遵循编程惯例
7.2.土评价形态分析
7.3 图形和表格
7.3.1 使用图形、表格的属性和目标
7.3.2 图形
7.3.3 表格
7.3.4 评价图形和表格的使用
7.4 限幅
7.4.l 限幅的属性和目标
7.4.2 静态限幅
7.4.3 动态限幅
7.4.4 评价限幅
7.5 数据流异常分析
7.5.1 数据流异常分析的属性和目标
7.5.2 执行数据流异常分析
7.5.3 数据流异常分析的问题及其解决方法
7.5.4 评价数据流异常分析
7.6 评价有工具支持的静态代码分析

第8章 软件验证和复审
8.1 软件验证和复审的属性及目标
8.2 形式验证技术
8.2.1 形式验证技术的属性和目标
8.2.2 描述形式验证技术
8.2.3 评价形式验证技术
8.3 会议技术中的传统复审:结构化普查
8.4 评论技术中的复审
8.5 评价软件验证和复审

第9章 形式技术:符号测试和形式正确性证明
9.1 形式技术的属性和目标
9.2 符号测试
9.2.1 符号测试的属性和目标
9.2.2 描述符号测试
9.2.3 评价符号测试
9.3 形式正确性证明
9.3.1 形式正确性证明的属性和目标
9.3.2 判断方法
9.3.3 代数技术
9.3.4 以自动机为基础的技术
9.3.5 评价形式正确性证明
9.4 评价形式技术

第10章 过程和测试策略
10.1 属性和目标
10.2 软件开发过程
10.3 开发
10.3.1 分析
10.3.2 设计
10.3.3 实施
10.4 测试
10.4.1 模块测试
10.4.2 集成和集成测试
10.4.3 系统测试
10.5 组织方面
10.6 文件和评价测试
10.7 标准
10.7.1 标准的含义
10.7.2 面向过程型标准
10.7.3 独立于应用领域的标准:标准
IEC61508
10.7.4 各领域的技术标准
10.8 评价

第1l章 工具
11.l 使用工具的属性和目标
11.2 工具类型
11.2.1 动态测试工具
11.2.2 静态分析工具
11.2.3 形式验证工具
11.2.4 模块化和分析型工具
1l.3 工具的可用性
11.3.1 技术拥有的工具数量
11.3.2 编程语言拥有的工具
11.3.3 开发平台形式和目标平台形式的工具使用情况
11.4 关于工具的信息来源
11.5 评价工具的利用情况

第12章 测试面向对象型软件
12.1 测试面向对象型软件的属性和目标
12.2 关于面向对象型开发的说明
12.3 面向对象型模块测试
12.3.l 类测试作为面向对象型模块测试
12.3.2 测试类的一种方法
12.3.3 面向功能型测试
12.3.4 面向结构型测试
12.3.5 形式规约用于支持面向对象型测试
12.3.6 测试参数化类
12.3.7 测试子类和回归测试
12.4 面向对象型集成测试
12.4.1 基础类的集成测试
12.4.2 集成测试和继承
12.5 而向对象型系统测试
12.6 评价面向对象型软件测试

第13章 测试嵌入软件
13.1 测试嵌人软什的属性和目标
13.2 嵌入软件的重要属性
13.2.1 安全级别
13.2.2 可靠度和可用性
13.2.3 实时能力
13.3 安全级别高的软件进行动态测试
13.4 安伞模块化和可靠度模块化
13.4.1 安全模块化和可靠度模块化的属性和目标
13.4.2 软件FMECA
13.4.3 错误树分析
13.4.4 马尔可夫模块化
l3.4.5 评价安全模块化和可靠度模块化
13.5 随机软件可靠度分析
13.5.1 随机软什可靠度分析的属性和目标
l3.5.2 随机可靠度分析的基础
13.5.3 比较硬件可靠度分析和软件可靠度分析
13.5.4 软件可靠度模型
13.5.5 模型的示例:Musa的基础执行时间模型
13.5.6 评价随机软件可靠度分析
13.6 评价嵌人软件的测试

第14章 实践指南
14.1 组织上的提示
14.2 技术提示
14.2.l 适合实践的简单测试策略
14.2.2 满足特殊的要求
14.3 总结
参考文献

精彩书摘

  第1章 引言
  每个开发软件的企业都努力提供最佳质量的软件。只有精确定义了一个目标,我们才能切实地实现这个目标,但这个道理却并不适用于“最佳质量”的概念。软件质量是涉及多方面的。一个软件的多种性能共同构成软件的质量。这些性能对使用者和制造商而言并非同等重要。一些性能对特定的软件产品特别重要,其他性能对相同的软件产品则毫无关系。一些性能相互发生负面作用。有人说,我们要做出质量最好的软件,显然是没有理解软件质量的含义。开发软件的目的不在于实现最好的质量,而是最合适的质量。为此,需要确定所谓的质量目标来制定所需的软件质量。随后,人们可以决定,采用何种方式来达到确定的质量。一般来说,必须采用设计上有前瞻性、经过分析检验的技术与组织管理方面的手段相结合。在实现质量的过程中,重要的是考虑到经济性,即一定不要忘记时间和成本两个要素。不同软件产品的多样性,造成了对软件质量的不同要求,加上时间和成本,导致人们无法找出万能的解决方案。本章将分门别类地为您介绍软件质量管理和软件质量保证的各种组织上和技术上的解决方案。
  1.1 动机
  随着计算机越来越深入人类生活的各个应用领域,其软件功能的正确性、可靠性也越来越重要。成本的发展表明,和硬件成本相比,软件成本明显呈上升趋势,同时,软件使用寿命也明显长于硬件。所以,在软件开发领域缩减成本是十分经济的做法。如果根据软件生命周期来分析软件开发的成本,则其结果是市场上某个软件产品的大部分成本在维护阶段产生,也就表明软件质量不够理想。在制作软件时产生的错误,和使用软件时发现的错误是导致软件质量不完善的原因。如果一个软件产品结构不清晰,内容不够简洁明了,要修正错误则是一件耗费时间的重任。软件产品日渐增强的复杂性同样也增加了软件质量不完善的可能性。要将错误本地化,并消除错误很难,特别是结构上有欠缺的软件,修正的错误可能会带来其他错误,因为对某一处的修改会与软件的其他部分相互作用。如果某个错误的形成原因已经在软件开发的早期阶段出现,比如在定义要求的时候或者设计软件的时候,那么必须进行大量的变动。

前言/序言

  随着计算机和软件深入到生活的各个领域,软件的质量问题始终是需求客户满意与否的关键所在,同时它也是产品是否成功的一个关键性因素。软件的质量在社会生活中已涉及到多个方面。目前,我国各高校均开设有软件方面的课程,因此软件技术也已成为高等教育重要的组成部分。基于此,本着借鉴国外教育的先进经验,为我所用,为我所学,尽快缩小与国外在软件领域技术和教学方面的差距的目的,我们引进并翻译了这本国外优秀教材并推荐给广大读者。
  本书根据德国教授Peter Liggesmeyer的著作《Sofleware.Qualit~t)第1版译出。原书共14章,详细介绍了当前软件质量方面的最新技术方法和最新知识状况,适合作为高等教育计算机相关专业的教材和教学参考书。全书本着方便读者阅读的目的,进行了结构编排,便于读者学习和理解所学知识。
  全书由北京外国语大学的于芳老师翻译,长安大学的席晓慧老师对本书进行了认真的审阅和修改,并提出了很多的宝贵意见。在此对译者、审阅者的辛勤劳动表示由衷的感谢。限于在专业及文字方面的理解偏差,书中错漏之处在所难免,恳请读者批评指正。