出版社:清华大学出版社
年代:2010
定价:52.0
本书是一本非常实用的缺陷预防技术应用手册,它提供一整套技术可以用来帮助软件开发人员、项目管理人员和测试人员避免在软件中出现人为错误或缺陷。本书的目标读者是从事软件行业的开发人员、项目管理人员和测试人员。
第Ⅰ部分 缺陷预防简介第1章 缺陷预防1.1 什么是软件缺陷1.2 以高质量软件为目标1.3 理解软件缺陷的产生原因1.4 可以做些什么1.4.1 使用检测、分析与预防技术1.4.2 进行缺陷预防的组织有何不同1.5 使用缺陷预防技术1.5.1 缺陷检测技术1.5.2 缺陷分析技术1.5.3 缺陷预防技术1.6 选择质量提高技术1.6.1 考虑的因素1.6.2 选择一种策略
第Ⅰ部分 缺陷预防简介第1章 缺陷预防1.1 什么是软件缺陷1.2 以高质量软件为目标1.3 理解软件缺陷的产生原因1.4 可以做些什么1.4.1 使用检测、分析与预防技术1.4.2 进行缺陷预防的组织有何不同1.5 使用缺陷预防技术1.5.1 缺陷检测技术1.5.2 缺陷分析技术1.5.3 缺陷预防技术1.6 选择质量提高技术1.6.1 考虑的因素1.6.2 选择一种策略1.7 组织考虑的因素1.8 在上游阶段提高质量1.9 从错误中学习1.10 为未来投入1.11 小结第2章 缺陷预防框架2.1 研究一种示例框架2.2 提出模型2.3 缺陷预防模型2.3.1 能力成熟度模型2.3.2 能力成熟度模型集成2.3.3 Malcolm Baldrige框架2.3.4 ISO模型2.3.5 其他模型2.3.6 对比这些模型2.4 选择和使用模型2.5 小结第3章 缺陷预防的经济学3.1 预防缺陷对企业有好处3.1.1 缺陷预防的经济理论与价值3.1.2 盈利能力3.2 对软件开发进行边际成本分析3.2.1 估计成本3.2.2 确定回报3.3 小结第Ⅱ部分 缺陷检测技术第4章 质量与开发过程4.1 什么是软件质量4.1.1 开发方法与质量4.1.2 完全可测试性的神话4.1.3 当前测试方法与质量4.1.4 不可能测试所有内容4.2 作为一种转换过程的产品开发4.2.1 向产品周期内添加验证步骤4.2.2 承认原始说明书中的缺陷4.2.3 将设计转换为代码4.3 小结第5章 利用生产效率游戏预防缺陷5.1 什么是游戏理论5.1.1 历史上的游戏5.1.2 游戏玩家时代5.1.3 游戏为什么改变行为5.2 游戏的类型5.2.1 机会游戏和技能游戏5.2.2 微型游戏5.2.3 预测市场5.2.4 交替现实游戏5.3 缺陷预防游戏的实践指导5.3.1 从排名榜开始5.3.2 保持简单5.3.3 仔细考虑记分方式5.3.4 奖励正确的行为5.3.5 利用记分方式鼓励参与5.3.6 使玩家时常查看自己的分数5.3.7 竞赛内容多样5.3.8 留出调整空间——设置一个时间段5.3.9 通过分级来保持兴趣5.3.10 保留玩家的历史5.3.11 以小型实验版本作为开始5.3.12 让人们按自己的步调进行5.3.13 使用现金和奖品来提高兴趣5.3.14 使用随机抽奖5.4 应用缺陷预防游戏的实例5.5 游戏设计的提示5.6 游戏设计的清单5.7 小结5.8 推荐阅读资料第6章 提高软件的可测试性6.1 认识可测试性的好处6.2 实施可测试性6.2.1 简单性:开发不复杂的软件6.2.2 可观察性:使软件可观察6.2.3 控制:加强对被测试软件的控制6.2.4 知识:明白期待什么样的结果6.3 避免实施可测试性的风险6.4 小结第Ⅲ部分 缺陷分析技术第7章 软件测量与量度7.1 理解构建一个成功记分卡的关键7.2 明确确定战略目标7.2.1 确定客户战略7.2.2 确定内部业务战略7.2.3 确定财务战略7.2.4 定义创新战略7.3 明确定义业务、过程和改进目标7.3.1 理解目标类型7.3.2 确定目标7.3.3 确定量度7.3.4 划定量度的优先级7.3.5 确定量度的权重7.3.6 避免量度操纵7.3.7 适当确定目标的范围7.3.8 划定目标的优先级7.3.9 创建SMART目标7.4 将所确定的目标通知各级管理人员7.4.1 收集并显示数据7.4.2 自动收集和报告数据7.4.3 回顾7.5 使人们广泛接受已确定的目标7.6 小结第8章 风险分析8.1 什么是风险8.2 什么是风险分析8.2.1 将风险分析应用于漂流8.2.2 确定风险分析阶段8.2.3 风险分析的好处8.2.4 理解风险8.2.5 实施风险分析8.3 创建风险预测模型8.3.1 特征:确定代码特征8.3.2 数量:跟踪改动8.3.3 影响:理解变更的结果8.3.4 理由:理解为什么进行变更8.3.5 所有权:知道一个改变归谁拥有8.4 应用风险预测模型8.5 小结第9章 利用仿真和建模进行组织改革9.1 理解随机建模9.2 使用建模过程9.2.1 定义目标9.2.2 确定起始过程9.2.3 确定过程的输入和输出9.2.4 构建所倡导的过程9.2.5 将过程结果与组织结果进行对比9.2.6 开发实际过程9.2.7 根据需要进行重复9.3 基线过程模型举例9.3.1 简单规划模型9.3.2 经过改进的计划模型9.3.3 详尽的质量模型9.3.4 过程改进模型9.3.5 开发生产能力模型9.4 与CMM框架的关系9.5 小结第10章 缺陷分类法10.1 从大型软件项目中的缺陷进行学习10.2 指定缺陷分类的目标10.3 理解缺陷分类的组织原则10.4 明确缺陷分类法中做出的假设10.4.1 假设:我们只能进行特定类型的更改10.4.2 假设:人们是会犯错误的10.4.3 假设:缺陷在产品周期的后期被发现10.4.4 假设:在产品周期中生成缺陷的阶段未能检查出这些缺陷10.4.5 假设:测试可能是不平衡的10.4.6 假设:您可能过度使用工具和过程10.4.7 假设:您可能是在进行后期设计纠正10.5 构建缺陷分类法实例10.5.1 发生阶段10.5.2 促成原因阶段10.5.3 改变阶段10.5.4 检测阶段10.5.5 缓解阶段10.6 经过分类的缺陷举例10.7 小结第11章 根本原因分析11.1 理解根本原因分析研究如何帮助预防缺陷11.2 何时进行RCA研究11.3 合理配置人员以成功完成研究11.4 RCA研究的阶段11.4.1 阶段一:事件确定11.4.2 阶段二:数据收集11.4.3 阶段三:数据分析与评估11.4.4 阶段四:纠正操作11.4.5 执行纵向分析11.4.6 阶段五:通知与应用11.4.7 阶段六:遵循、测量和建议11.5 根本原因分析的好处11.6 根本原因分析的风险11.7 小结第Ⅳ部分 缺陷预防技术第12章 采用过程12.1 理解传统的开发过程12.2 实施敏捷过程12.2.1 需求管理12.2.2 项目计划12.2.3 项目跟踪与监督12.2.4 软件质量保证12.2.5 软件配置管理12.3 Scrum12.4 个体软件过程12.5 团队软件过程12.6 鼓励采用创新性的实践方式12.7 部署一体化过程12.8 小结第13章 FMEA、FTA与故障建模13.1 故障模式和效果分析13.2 实施FMEA13.2.1 预备知识13.2.2 程序13.2.3 FMEA小结13.3 故障树分析13.4 实施FTA13.4.1 预备知识13.4.2 程序13.4.3 故障树开发过程13.4.4 故障树小结13.5 故障建模:结合FMEA和FTA13.5.1 故障建模13.5.2 对比威胁建模与故障建模13.6 小结第14章 预防标签14.1 预防标签如何工作14.2 在整个生产周期中使用预防标签14.2.1 编写高质量的预防标签14.2.2 谁可以推动预防技术14.2.3 寻找“缺陷引入”行为的样式14.3 实施预防标签计划14.3.1 确定目标14.3.2 确定进度跟踪和交流方法14.3.3 确定存储预防数据的位置14.3.4 为预防相关工作提供激励机制14.3.5 确保有足够的分析人员14.3.6 定期报告并进行更改测量14.4 对预防标签数据采取行动14.4.1 对预防技术进行分类14.4.2 深入分析14.5 使用预防标签的好处14.5.1 帮助个人转向全局考虑14.5.2 预防技术和知识易于共享14.5.3 预防数据与发现和修复数据存储在一起14.5.4 提供用于过程改进的反馈机制14.5.5 简化数据收集14.5.6 可用于所有阶段14.6 使用预防标签的风险14.6.1 变为一个指责平台14.6.2 面对有偏差的数据14.6.3 容易过分重视或反应过度14.6.4 需要编译与分析14.6.5 预防方法可能过于笼统或者过于具体14.7 小结第Ⅴ部分 预防文化第15章 方案投票15.1 应用大数定律15.2 利用方案投票来帮助预防缺陷15.3 理解方案投票流程15.3.1 创建功能说明文件15.3.2 编写高质量的方案15.3.3 对方案进行分类15.3.4 了解投票人员都是哪些人15.4 实施方案投票计划15.4.1 了解适当的项目阶段15.4.2 了解产品15.4.3 开发体验树15.4.4 为反馈设定明确目标15.4.5 为方案建立文档以及制订方案15.4.6 征集用户制订的方案15.4.7 理解用户群15.4.8 获取反馈15.4.9 启动引导项目15.4.10 部署投票项目15.4.11 保持项目的活力15.4.12 报告结果15.4.13 分析结果15.4.14 鼓励投票者持续参与15.4.15 将结果提交给支持团队15.4.16 采取行动15.5 方案投票的好处15.5.1 简化数据收集15.5.2 能够收集涉及大范围功能和用户的大量数据15.5.3 适用于项目周期的所有阶段15.6 方案投票的风险15.6.1 投票结果受投票人群构成的影响15.6.2 投票结果仅提供了用户意见的概要信息15.6.3 不完整的方案选择可能会使结果产生偏差15.6.4 设计不佳的方案可能会使结果产生偏差15.7 小结15.8 推荐阅读资料第16章 创建一种质量文化16.1 评价您的现有文化16.1.1 常见的文化缺陷16.1.2 用于检测设计不当的量度16.2 改进您的文化16.3 小结第17章 在上游阶段提高质量17.1 质量与客户导向是相互联系的17.2 将开发过程理解为一系列转换17.3 避免阻碍上游质量的提高17.3.1 测试不会提高质量17.3.2 质量是不可见的17.3.3 重功能,轻质量17.3.4 工程态度妨碍了注重质量的文化17.3.5 任务和团队的短视妨碍了全局观17.3.6 团队回避适当行为17.3.7 价值和奖励没有促进质量的提高17.4 缺陷具有不同风险17.5 查明下游质量不佳的原因17.6 未来产品开发的模型17.6.1 开发工作以客户为导向17.6.2 产品信息是可执行的17.6.3 客户方案被移向上游17.6.4 测试过程和测试生成被自动化17.6.5 静态测试普遍深入17.6.6 开发过程被修改17.6.7 在组织、角色和职业生涯中所导致的变化17.7 小结第18章 回报、动机和激励18.1 应用激励技巧18.1.1 消除“抑制激励”的因素18.1.2 为缺陷预防工作设立SMART目标18.1.3 衡量在缺陷预防工作上花费的时间和精力18.1.4 确保领导者行为体现了对缺陷预防工作的重视18.1.5 创造缺陷预防的文化18.1.6 使组织目标与缺陷预防工作保持一致18.1.7 在设计组织进程时,要考虑到缺陷预防18.1.8 建立奖励机制,鼓励员工发表不同观点18.2 激励——不只是金钱奖励18.2.1 庆祝成功18.2.2 使用游戏和竞赛18.3 理解个人的动机18.4 明白什么是成功18.5 衡量成功18.6 小结第19章 知识管理与交流19.1 交流不畅所产生的问题19.1.1 孤立知识19.1.2 知识传播不足19.1.3 不能找出最佳实践19.1.4 缺乏向上交流19.2 交流方法19.3 利用规模优势19.3.1 优秀交流模型的特性19.3.2 分类法19.3.3 有机的专家系统19.3.4 预防标签19.3.5 方案投票19.4 小结第20章 融为一体20.1 了解标准与约定20.1.1 火车、汽车和PF20.1.2 公共结果标准20.2 各司其职20.2.1 质量保证20.2.2 代码开发20.2.3 项目管理20.3 小结
本书是一本非常实用的缺陷预防技术实践指南,它提供的一整套技术可以用来帮助软件开发人员、项目管理人员和测试人员避免软件中的人为错误或缺陷。《完美软件:缺陷预防最佳实践》的主旨不是在发现问题之后如何修正问题,而是通过预防和即时检测来减少错误的引入。《完美软件:缺陷预防最佳实践》主要内容包括:缺陷预防入门、缺陷检测技术、缺陷分析技术、缺陷预防技术以及如何建立缺陷预防文化。 本书的目标读者是从事软件行业的开发人员、项目管理人员、测试人员和质量保证人员。
《完美软件:缺陷预防最佳实践》的主旨不是修复软件缺陷。而是要在这些缺陷发生之前对其进行预防。在《完美软件:缺陷预防最佳实践》中,拥有累计近百年经验的行业领先者将与我们分享他们的专业知识,帮助我们开发高质量的软件。他们将这些宝贵的经验教训提炼为最佳实践方法。用来帮助工程团队改进软件开发周期中的缺陷预防工作。在开发周期的早期使缺陷数目降至最低,可以节约时间和成本,从而提供可以满足客户需求的更可靠的软件。 《完美软件:缺陷预防最佳实践》重要主题: 如何促进缺陷预防工作——形成重视软件质量的文化 如何采用最新方法来收集和处理客户反馈 如何对缺陷进行分析和分类,以防在将来再次出现 如何确认和降低代码变更风险 如何构建平衡记分卡,以衡量软件质量 如何将预防技术与敏捷和CMMI过程集成 《微软技术丛书》包括以下几个系列: 从入门到精通 适合新手程序员的实用教程 侧重于基础技术和特征 提供范例文件 技术内幕 权威、必备的参考大全 包含丰富.实用的范例代码 帮助读者熟练掌握徽软技术 高级编程
《完美软件:缺陷预防最佳实践》的主旨不是修复软件缺陷。而是要在这些缺陷发生之前对其进行预防。在《完美软件:缺陷预防最佳实践》中,拥有累计近百年经验的行业领先者将与我们分享他们的专业知识,帮助我们开发高质量的软件。他们将这些宝贵的经验教训提炼为最佳实践方法。用来帮助工程团队改进软件开发周期中的缺陷预防工作。在开发周期的早期使缺陷数目降至最低,可以节约时间和成本,从而提供可以满足客户需求的更可靠的软件。 《完美软件:缺陷预防最佳实践》重要主题: 如何促进缺陷预防工作——形成重视软件质量的文化 如何采用最新方法来收集和处理客户反馈 如何对缺陷进行分析和分类,以防在将来再次出现 如何确认和降低代码变更风险 如何构建平衡记分卡,以衡量软件质量 如何将预防技术与敏捷和CMMI过程集成 《微软技术丛书》包括以下几个系列: 从入门到精通 适合新手程序员的实用教程 侧重于基础技术和特征 提供范例文件 技术内幕 权威、必备的参考大全 包含丰富.实用的范例代码 帮助读者熟练掌握徽软技术 高级编程 侧重于高级特性、技术和解决问题 包含丰富、适用性强的范例代码 帮助读者精通微软技术 精通&宝典 着重剖析应用技巧,以帮助提高工作效率 主题包括办公应用和开发工具 认证考试教材 完全根据考试要求来阐述每一个知识点 提供可供搜索的Ebook(英文版)和训练题 提供实际场景、案例分析和赦障诊断实验
显示全部信息