首页>参考读物>计算机科学与技术>软件与程序设计

可信软件设计:开发健壮软件的工具、技术和方法
作者 : (美)Bijay K. Jayaswal Peter C. Patton 著
译者 : 吴峻申 蒋乐天 黄诚 译
出版日期 : 2013-06-25
ISBN : 978-7-111-42819-0
定价 : 125.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 527
开本 : 16
原书名 : 设计可信的软件
原出版社: Pearson Education Asia
属性分类: 店面
包含CD :
绝版 : 未绝版
图书简介

本书介绍了一种可在早期解决软件质量问题,使软件质量管理目标变成防止在实施阶段发生bug而不是在实施阶段中或之后发现和解决bug,名为可信任软件设计(DFTS)的综合技术。这种技术可信之处在于能在一行代码都未写情况下就能实施软件质量管理。
这种面向客户的综合技术能在成本、质量和交付进度等方面帮助人们提供突破性成果,以此满足甚至超越客户期望。作者们不仅向我们描述了它所包含的原理,也告诉我们在面对现实中所遇到的软件设计问题时,如何应用它来解决问题。而且他们还例证了很多研究案例,覆盖了DFTS技术的方方面面,包括CoSQ、 AHP、TRIZ、FMEA、QFD和田口方法。不仅如此,还为读者提供了大量的习题和练习,以此测试读者是否真正理解了这些知识。除此之外,还提供了应用该项技术的详细实例。

图书特色

Bijay K. Jayaswal 资深软件开发专家和软件质量管理专家,Agilenty Consulting Group公司CEO,担任高管并提供企业质量管理、市场战略制定方面的咨询业务25余年。专注于价值工程、过程改进以及产品研发等领域,他教授过MBA和高级管理课程,并帮助很多企业引入企业级的再造工程和6 Sigma计划。

Peter C. Patton 资深软件开发专家和软件质量管理专家,Agilenty Consulting Group公司董事长,圣托马斯大学量化分析和计算机科学系教授,拥有30多年的质量管理经验和50多年的软件开发经验。曾担任过宾夕法尼亚大学CIO和Lawson软件公司CTO。

“这是一本具有开创性和高度创新的书,是一部具有里程碑意义的著作。”
——C. V. Ramamoorthy博士
加州大学伯克利分校电子工程及计算机科学系名誉教授

本书详细介绍了更节省成本、更快交付、更好用的综合软件开发技术——可信软件设计(DFTS),该技术可在早期解决软件质量问题,使软件质量管理目标变成预防在实施阶段产生bug,而不是在中后期发现和修复bug。这种技术的可信之处在于在未编写代码的情况下就能实施软件质量管理。
这种面向客户的综合技术在成本、质量和交付进度等方面提供突破性成果,可以满足甚至超越客户期望。作者不仅描述可信软件设计所包含的原理,而且阐释在面对实际软件设计问题时,如何应用它来解决问题,同时综合介绍了6个使用软件质量管理技巧的研究案例,覆盖DFTS技术的方方面面,包括CoSQ、AHP、TRIZ、FMEA、QFD和田口法。除此之外,还为读者提供了大量的习题和练习,以帮助读者真正理解这些知识。
本书可作为企业组织范围内的学习教材,也可作为DFTS黑带、大师级黑带认证课程的培训教材。它能使你快速掌握DFTS技术,从而快速和成功地实施DFTS。

本书主要内容:
计划、构建、维护和改进可信软件开发系统。
在独一无二的软件开发环境中,运用质量、领导力、学习和管理的最佳实践。
倾听客户心声,引导用户期望,开发出易用和可靠的软件产品。
重点关注可靠性、可信任性、可用性和可升级性等以客户为中心的问题。
激励员工拥有强大的设计创意和创新力。
确认、验证、评估、集成和维护可信软件。
分析软件质量的经济成本影响。
为实施DFTS培养你的领导力和企业内部结构管理能力。
无论你从事的是企业自主软件开发、外包、咨询还是提供技术支持的工作,可信软件设计都会帮助你改进软件质量。从开发人员到项目领导者,从软件总架构师到客户,可信软件设计都能为整个软件行业从业人员和质量管理人员提供有突破性进展的软件解决方案。

图书前言

在今日世界最快速发展的事物就是计算机最终用户期望。自从ENIAC刊登在1946年情人节那天的《纽约时报》起,这场宣告开始的计算机革命已经完完全全地改变了这个世界。计算机硬件已经变得非常可靠,以至于我们可以把它放入硅质微芯片中,甚至可以内嵌至其他机器。而正如其他类型的机器一样,如果它能安然度过自己的“早期故障多发”阶段,它便永远不需要被修复(也许要频繁地升级来满足需求)。计算机软件也经历了同样的一段很长的发展历程,但在真实可信计算方面,却依旧保留着自己的“致命伤”。今天没有哪个硬件产品制造商敢将已知有缺陷的产品投入高科技市场,然而软件承包商却日复一日、年复一年地这样做着。面对着计算机最终用户期望的迫切需求、软件固有的复杂性,以及缺少那种弥漫在高科技硬件制造公司中浓郁的“质量文化”氛围,软件承包商这样做也是没有选择的无奈之举。
  本书的作者利用他们30多年的质量管理经验和50多年的软件开发经验,承担起解决软件设计问题的责任,以使软件天生可信。我们受Craig Mundie先生在微软公司进行的可信计算计划所启发,在阅读了与软件质量相关的文献资料并参加了大量会议之后,相信田口法(Taguchi Method)大有可为。我们也发现没有谁能比田口先生自己向大家推荐使用田口法更好,这进一步使我们底气十足。虽然这套理论仅仅应用在6个案例中,但已经取得了全面的成功。本书的主要前提是:虽然在设计方面,软件和硬件相似,但在开发过程中,软件中没有任何东西是和硬件制造类似的。因此,我们应该尽可能早地使用任何能提高软件可靠性和随之产生的可信的质量方法。田口法的天才之处就是它在设计时期既兼顾了可控的(内在设计)因素,又考虑到了不可控的噪音(外部)因素。通过使用诸如正交矩阵(orthogonal matrices)或拉丁方矩阵(Latin Square)这样的数据统计技术,田口法能同时考虑到所有因素。这些因素包括后期测试、瓶颈分析以及同时在软件产品中找到和修复一个bug等。如今的软件质量目标已经变成防止在实施阶段出现bug,而不是在实施阶段中或之后发现和解决bug。与其他质量管理方法一样,田口法既不是可以简单地在软件开发过程中直接使用的“黑盒”法,也不是可以单独使用的方法,需要结合其他在早期就面向客户的质量管理方法背景情况来使用。所有诸如层次分析法(Analytic Hierarchy Process,AHP)、质量功能实施(Quality Function Deployment,QFD)、TRIZ、普氏概念选择法(Pugh Concept Selection),以及故障模式和缺陷分析(Failure Modes and Effects Analysis,FMEA)这样的方法都可以在开始写代码之前使用。
  田口法的精髓是倾听“客户心声”。通过仔细倾听,软件架构师或设计师能理解计算机最终用户期望,并做出可实现的和可靠的软件产品。这总比被最终用户拖着陷入一个毫无希望赶上进度的无穷无尽“修复”死循环要好得多。本书提供了一套能开发“健壮软件”的工具、技巧和方法论框架。这套框架是基于变革型领导力原则、学习型组织最佳实践、企业内部结构管理以及质量管理策略和体系之上的一种综合技术。所有这些形成了一个独一无二的软件开发背景。我们将其称为可信软件设计(Design for Trustworthy Software,DFTS)。
  面对如今计算机用户提出的日益复杂化的可信或高可靠性的软件要求,本书可以帮助那些想满足这种要求的软件开发公司,而无论这些公司规模如何。本书设计成一种企业范围内学习的资源,帮助你理解、实施、提升和维护一个可信的软件开发系统。对于众多企业来说,这意味着只有那些能理解用户需求并为之提供价值,以及为带领企业开发具备这样健壮能力系统做好准备的、高瞻远瞩的领头人才能领导企业发展。虽然我们一直在强调企业级软件,但是可以将本书作为软件开发的一个重要组成部分,将之用于专利软件开发、提供内部软件支持或外包供应商服务的公司。企业公司也可使用本书来准备正式的DFTS黑带、大师黑带以及其他认证考试。这些正式的认证考试能极大地促进企业范围内学习和实施DFTS。软件开发人员、进行质量管理工作的专业人员以及作为企业核心角色的高级管理人员也可将本书当做一本有实用价值的参考书籍。
  本书同样适合学习软件开发技术、管理信息系统(MIS)、产品设计开发、运营、质量管理以及技术管理专业的学生阅读。对于工程学、管理信息系统(MIS)、IT和计算机科学的理科硕士课程也是一个补充,对专注运营、产品开发和技术的MBA课程也是如此。它也能作为准备美国质量协会(American Society for Quality,ASQ)的软件质量工程认证(Certified Software Quality Engineer ,CSQE)考试的一份参考资料。
  本书通过关键点、问题回顾、问题讨论、项目示例、练习和问题等形式来支持此中涵盖的众多实例、花絮、案例研究等内容。为了更好地支持这些理论,书中还提供了Internet上的一些补充学习资料。无论读者是为了企业培训、课堂学习还是自学,都可以从本书中得到更多深入浅出和持续更新的资料。
  本书不是经典意义上的“手册”。相反,它阐述了那些适合软件开发并反响良好,且已经过实践证明的质量管理方法论中所包含的原理和实践。这些原理和实践特别适合在开始执行阶段之前,即设计时期使用。贯穿本书所提到的小型软件和其他项目工程设计研究案例和实例阐明了如何应用这些原理。软件架构师将会发现这些实例印证了他们的设计理念。软件工程师也会发现它们印证了自己在软件详细设计阶段进行质量构建时所采取的一些做法。虽然所有的DFTS技术在整个软件开发过程中都很适用,但是在根据终端用户需求开发软件产品时,所发生的最重要变化是:要在用户熟悉的业务领域内,建立理念、形成架构、设计工程、实施、测试以及最后的支持。为了成功学习和实施DFTS技术,本书所有五大部分都涉及与领导力和企业内部基础结构管理相关的知识。
本书结构
  本书共分为五大部分。第一部分包括第1~5章,介绍了当今一些软件开发实践,以及在开发可信软件时,这些实践的缺点和所受到的质疑,还介绍了为开发出可信软件所使用的软件框架。这一部分用整章的篇幅讲述了两个关键的软件质量问题,即可信软件的软件质量度量问题和从经济成本角度对其的考虑。第二部分包括第6~14章,介绍了作者提议的为开发可信软件所使用的工具和技巧。这是本书的核心部分。第三部分包括第15~19章,介绍了在进行编码甚至是开始编码之前,如何在设计过程中尽早使用这些工具和技术。第四部分包括第20~21章,为在企业中实施DFTS计划奠定基础。与所有质量管理计划一样,DFTS必须得到上层领导的支持才能成功,也必须成为企业文化中的一部分。第五部分包括第22~27章,介绍了六个使用第一部分和第二部分所述的那些软件质量管理技巧的6个一流案例研究。我们拜访了应用这些技巧的世界级专家,他们慷慨地贡献了自己亲身经历的知名案例以供读者思考和学习。
实用软件
  使用某些软件能使你更容易地学习和实施诸如AHP、田口法、QFD这样的质量管理方法。很多网站提供了免费无限次或有限次使用的软件。尤其是下列可供使用的软件:
  AHP:可以从网站http://www.expertchoice.com/software/grouptrialreg.htm得到Expert Choice的一个15天试用版本。
  QFD:QFD机构培训课程中所使用的Modern Blitz QFD模板的Microsoft Excel版本。详情可见:http://www.qfdi.org。
  Taguchi Methods:在Qualitek-4试用版软件中可以看到50多个实例,并可使用1个L8 array亲身体验整个设计过程。该软件可在网站http://www.nutek-us.com/wp-q4w.html下载。
  你也可以访问下列我们认为比较有用的网站:
  http://www.nutek-us.com/wp-q4w-screen.html
  http://www.nutek-us.com/wp-q4w-eval.html
  你还可以尝试使用支持多个L8 array的体验试用版,但想使用完全版请和经销商联系。
本书网站
  本书网站提供了本书所有版本的内容。为学生和教师提供新的学习资料、实例和案例研究。网站也为本书其他读者,如质量工作专业人员和企业中起核心作用的领导者提供了DFTS过程的学习资料。本书网址如下:
  http://www.prenhallprofessional.com/title/0131872508
  在如何进一步加强并不断完善本书学习资料方面,我们期待着你们的评论和反馈。请告诉我们你们的读后感,你们最喜欢书中哪个部分,此书是如何让你们感到非常实用的,而且最重要的是,告诉我们应该如何来改善它。
  Bijay Jayaswal                                    Peter Patton
  Minneapolis, MN                                  St.Paul, MN
  bijay.jayaswal@agilenty.com                         peter.patton@agilenty.com
致谢
  感谢众多在过去几年此书写作过程中给予我们帮助的人们。
  我们要感谢对本书各版草稿进行评审和点评的同仁们:
  Richard A. DeLyser, 圣托马斯大学
  Paul Holser
  Steve Janiszewski, PS & J Six Sigma 软件公司
  Patrick L. Jarvis, 圣托马斯大学
  H. Richard Lawson, Lawson软件公司
  Bhabani Misra, 圣托马斯大学
  Richard D. Patton, Lawson软件公司
  German J. Pliego, 圣托马斯大学
  特别是,我们要将最高的谢意献给加州大学伯克利分校的C. V. Ramamoorthy教授,感谢他在过去的整整3年中,对本书提出的有见地的建议以及耐心的审核。没有他的指导,这本书不可能出版。
  感谢那些对我们的著作有影响的两代学者。特别是Yoji Akao、Genrich Altschuller、Philip Crosby、W. Edwards Deming、Eliyahu Goldratt、Hiroyuki Hirano、Kaoru Ishikawa、Joseph Juran、Shigeru Mizuno、Taichi Ohno、Stewart Pugh、Thomas L. Satty、Walter A. Shewhart、Shigeo Shingo和Genichi Taguchi等人。我们也要感谢Barry W. Boehm、Maurice H. Halstead和B. Kanchana,在书中我们广泛引用了他们的工作成果。要感谢的学者太多,以至于我们可能有所遗漏,还望见谅。我们向所有参与本次工作的人员表示感谢。
  同样更多参与本书编写的人员也激励着我们。这里我们要提到微软公司的Craig Mundie 先生,他的有关可信计算的白皮书激励着我们应对如何开发出可信软件的巨大挑战。我们对他的工作以及与我们多年来的友谊表示感谢。Toyota Motor 公司的Eiji Toyoda先生和通用电气公司的前主席Jack Welch先生,这两位企业巨头虽然从来没有和我们碰过面或者一起探讨过我们的项目,但他们同样鼓舞着我们。他们在两家世界上最先进公司中进行的管理工作是领导力品质最伟大的例子。在本书中我们广泛地引用了GE 和Toyota公司的案例。我们感谢他们二位。
  Expert Choice公司的Glenn Mazur、 Mike Jones,以及Nutek公司的Ranjit Roy对本书涉及的软件提供了支持,对此我们表示感谢。我们也感谢ASQ 的Paul O'Mara、Alice Haley,剑桥大学出版社的Linda Nicol、Linda Hart, GE公司的Peter O'Toole,Johnson & Johnson公司的Tina B. Gordon,Pearson Education的Michelle Thibodeau,Productivity Press的Lia Rojales以及Zultner & Co的Richard Zultner。感谢他们允许我们使用相关的版权资料。
  我们也很荣幸地向Bernard Goodwin领导的Prentice Hall团队表达深深的谢意。Bernard Goodwin是最棒的。他和Michelle Housley、Stephane Nakib以及Beth Wickenhiser是好样的。策划编辑Andrew Beaster和文字编辑Gayle Johnson也做了了不起的工作。对于他们所有人,我们给予最真挚的谢意!
  最后,我们感谢为本书贡献出自己的项目作为案例的作者们:Andrew Bolt、Jack Campanella、乔治华盛顿大学的Ernest Forman、奥斯汀得克萨斯大学的Herb Krasner、QFD研究所的Glenn Mazur以及Zultner and Co公司的Richard Zultner。他们的贡献丰富了本书的内容。我们永远感谢他们对本书的深刻见解、所拥有的才智学问和资料贡献的慷慨态度。

上架指导

计算机\软件工程

封底文字

“这是一本具有开创性和高度创新的书,是一部具有里程碑意义的著作。”

——加州大学伯克利分校电子工程及计算机科学系名誉教授C. V. Ramamoorthy博士

本书详细介绍了更节省成本、更快交付、更好用的综合软件开发技术——可信软件设计(DFTS),该技术可在早期解决软件质量问题,使软件质量管理目标变成预防在实施阶段产生bug,而不是在中后期发现和解决bug。这种技术的可信之处在于在未编写代码的情况下就能实施软件质量管理。
这种面向客户的综合技术在成本、质量和交付进度等方面提供突破性成果,可以满足甚至超越客户期望。作者不仅描述可信软件设计所包含的原理,而且阐释在面对实际软件设计问题时,如何应用它来解决问题,同时综合介绍了6个使用软件质量管理技巧的研究案例,覆盖DFTS技术的方方面面,包括CoSQ、AHP、TRIZ、FMEA、QFD和田口法。不仅如此,还为读者提供了大量的习题和练习,以帮助读者真正理解这些知识。
本书可作为企业组织范围内的学习教材,也可作为DFTS黑带、大师级黑带认证课程的培训教材。它能使你快速掌握DFTS技术,从而快速和成功地实施DFTS。
本书主要内容:
 计划、构建、维护和改进可信软件开发系统。
 在独一无二的软件开发环境中,运用质量、领导力、学习和管理的最佳实践。
 倾听客户心声,引导用户期望,开发出易用和可靠的软件产品。
 重点关注可靠性、可信任性、可用性和可升级性等以客户为中心的问题。
 激励员工拥有强大的设计创意和创新力。
 确认、验证、评估、集成和维护可信软件。
 分析软件质量的经济成本影响。
 为实施DFTS培养你的领导力和企业内部结构管理能力。
无论你从事的是企业自主软件开发、外包、咨询还是提供技术支持的工作,可信软件设计都会帮助你改进软件质量。从开发人员到项目领导者,从软件总架构师到客户,可信软件设计都能为整个软件行业从业人员和质量管理人员提供有突破性进展的软件解决方案。

作者简介

(美)Bijay K. Jayaswal Peter C. Patton 著:暂无简介

译者简介

吴峻申 蒋乐天 黄诚 译:暂无简介

译者序

管理是门大学问。特别是在今日的企业中,我们的工作中有大部分都是与“管理”休戚相关的。那么作为IT从业者,当面对大量繁杂而又让人感到烦躁的管理工作时,该如何应对呢?有没有一些好方法让我们做出可靠的软件,交付拿得出手的项目成果呢?我想这本书或许可以给出答案。
  本书的两位作者都是在美国IT行业奋斗了数十年的资深从业人员。第一次看到他们的照片时,感觉他们仿佛就像《倚天屠龙记》里的张三丰大师那样仙风道骨。那么既然是“张三丰”,而且是两位“张三丰”写的书,肯定有许多内容值得我们细细品味。本书深入阐述了如何开发让人可信的软件。书中借鉴了大量传统制造业中的良好经验、实践以及心得。作者们通过这些内容,并与IT行业特有的情况进行对比,提出了更多适用于IT行业的“瑰宝”级干货。而且本书还涉及企业、项目群、项目和产品管理的方法论知识,更介绍了很多IT名人故事、掌故、花絮,以及两位作者当年参与的一些项目中所发生的奇闻乐事。另外有一点也让我觉得收获不小,那就是有关汽车行业的一些管理知识。译者本人和美剧《生活大爆炸》里的主角Sheldon一样信奉“学车和开车都是浪费生命的举动”。因此一向对汽车这种东西不是很感兴趣,一直以来也没有用此代步。但是本书却对汽车行业所采取的管理过程和实践青睐有加。福特、丰田、凯迪拉克等一系列经典品牌的汽车是通过何种理念创造出来的,又是通过何种手段来保证它们展现在世人面前时会如此“健壮”并让用户感到放心。诸如此类的问题及答案,在此书中都有所涉及。这让我对汽车的看法和想法也由此改观不少。再联想自己所处的IT行业之现状,我认为汽车之于IT绝对是个值得学习和超越的标杆对象。
  也正因如此,这些内容给对IT之外的专业知识知之甚少的译者带来了许多困难,而且此书篇幅之长也给翻译工作带来了诸多挑战。因此我更加要感谢蒋乐天和黄诚两位兄弟的大力协助,没有你们这本书是不可能见诸笔端的。还有我的父母吴慧良先生和谈莉芳女士,在我翻译此书期间,对我生活起居上给予了无微不至的关怀,在我无暇其他事情时也能够理解和支持我。这里,我要对你们说:爸爸妈妈,我爱你们。
  好了,我的“废话”就到此为止了。请各位读者欣赏两位大师的佳作吧!

吴峻申
2013年于上海

图书目录

译者序

前言
第一部分 当今软件开发过程与不足之处,以及可信软件的挑战
第1章 当今软件开发方法论 1
1.1 软件开发:需要一种新模式 2
1.2 软件开发策略和生命周期模型 5
1.2.1 构建–修复模型 6
1.2.2 瀑布模型 7
1.2.3 快速原型模型 7
1.2.4 增量模型 8
1.2.5 极限编程 10
1.2.6 螺旋模型 10
1.2.7 面向对象编程 11
1.2.8 迭代开发或渐进模型 13
1.2.9 不同软件生命周期模型比较 13
1.3 软件过程改进 13
1.3.1 Rational统一过程 14
1.3.2 能力成熟度模型 14
1.3.3 ISO 9000-3软件开发指导准则 15
1.3.4 比较RUP、CMM和ISO 9000 17
1.4 ADR法 18
1.5 健壮性软件开发过程的七要素 18
1.6 健壮性软件开发模型 19
1.7 关键点 20
1.8 补充资料 21
1.9 Internet练习 21
1.10 问题回顾 21
1.11 问题和项目讨论 22
1.12 参考文献 22
第2章 开发可信软件的挑战:软件开发环境下的健壮性设计 23
2.1 软件可靠性:神话与现实 23
2.1.1 软件开发和产品制造之间的相似和不同之处 24
2.1.2 软件和硬件可靠性比较 25
2.1.3 引发软件不可靠性的原因 26
2.2 传统质量控制体系的局限性 27
2.3 日本质量管理体系和田口法 28
2.4 健壮性设计中田口法的本质 33
2.4.1 信噪比概念 34
2.4.2 质量损耗函数概念 35
2.4.3 健壮性设计概念 36
2.5 软件可靠性挑战:可信软件设计 37
2.6 健壮性软件开发模型:实践中的DFTS过程 39
2.7 关键点 41
2.8 补充资料 42
2.9 Internet练习 42
2.10 问题回顾 43
2.11 问题和项目讨论 43
2.12 参考文献 44
第3章 软件质量度量标准 45
3.1 软件质量度量方式 45
3.2 经典软件质量度量标准 46
3.3 全面质量管理 47
3.4 通用软件质量度量 48
3.4.1 度量标准方法 48
3.4.2 软件测试过程中的质量度量标准 49
3.4.3 软件复杂度度量标准 50
3.4.4 软件科学 51
3.4.5 圈复杂度 52
3.4.6 功能点度量标准 53
3.4.7 可用性和客户满意度度量标准 54
3.5 目前的度量标准和技术模型 55
3.6 架构设计和评估中的新度量标准 57
3.7 架构设计中普遍存在的问题 58
3.8 OOAD中的度量标准模式 59
3.9 关键点 60
3.10 补充资料 60
3.11 Internet练习 61
3.12 问题回顾 61
3.13 问题和项目讨论 61
3.14 参考文献 61
第4章 可信软件经济观点 63
4.1 为什么DFTS需要不同的经济分析方法 63
4.2 成本和质量:过去和现在 64
4.3 软件质量成本 66
4.3.1 质量成本分析优点 67
4.3.2 质量任务成本 67
4.3.3 软件质量成本的分类 69
4.3.4 建立CoSQ汇报系统 73
4.3.5 质量投资回报效益 74
4.3.6 贴现现金流法 75
4.3.7 CoSQ分析价值 75
4.3.8 CoSQ计划中的误区 75
4.4 软件生命周期中的软件质量成本 76
4.5 CoSQ和作业基准成本法 80
4.5.1 软件企业组织中的ABC 80
4.5.2 启动软件企业组织中的ABC 81
4.5.3 ABC优点 81
4.6 软件质量损耗函数 82
4.7 DFTS投资的经济评估 82
4.7.1 DFTS评估度量标准 83
4.7.2 为DFTS计划建立经济评估框架 83
4.8 关键点 85
4.9 补充资料 85
4.10 Internet练习 85
4.11 问题回顾 86
4.12 问题讨论 86
4.13 问题 87
4.14 参考文献 88
第5章 DFTS企业组织化结构和领导力管理 89
5.1 部署DFTS的企业组织面临的挑战 89
5.2 DFTS执行框架 90
5.2.1 第1步:树立管理意识并引入DFTS 92
5.2.2 第2步:与高级管理层沟通达成共识并获取他们的承诺 94
5.2.3 第3步:识别DFTS计划的潜在误区 94
5.2.4 第4步:为建立关注质量的企业奠定哲学基础 101
5.2.5 第5步:构建企业组织化基础设施 103
5.2.6 第6步:理解关键人员角色 103
5.2.7 第7步:设计支持性的企业组织结构 111
5.2.8 第8步:建立有效沟通的机制 111
5.2.9 第9步:建立合理的奖励机制 112
5.2.10 第10步:确定软件质量成本 113
5.2.11 第11步:规划并启动整个企业组织范围内的学习过程 114
5.2.12 第12步:执行DFTS模型 114
5.2.13 第13步:监控学习和改进过程并获取反馈 115
5.2.14 第14步:巩固改进过程和所积累的经验 117
5.2.15 第15步:整合并推广计划 117
5.3 汇总 118
5.4 关键点 118
5.5 补充资料 121
5.6 Internet练习 121
5.7 问题回顾 121
5.8 问题和项目讨论 122
5.9 参考文献 123
第二部分 可信软件设计的工具和技术
第6章 质量管理的七大基本(B7)工具 125
6.1 B7工具 126
6.2 DFTS背景下的B7 129
6.3 其他DFTS工具、技巧和方法论 130
6.4 流程图 131
6.4.1 高级流程图 132
6.4.2 详细流程图 132
6.4.3 泳道流程图 133
6.5 帕累托图 133
6.6 因果图 133
6.6.1 绘制确定原因的因果图 135
6.6.2 过程分类因果图 136
6.7 散点图 137
6.8 检查表 140
6.9 直方图 140
6.9.1 确定分布规律 141
6.9.2 确定是否满足规约 142
6.9.3 通过分层法来比较数据 142
6.10 图表 142
6.11 控制图 143
6.12 关键点 144
6.13 补充资料 146
6.14 问题回顾 146
6.15 问题讨论 146
6.16 参考文献 146
第7章 七大MP工具:分析和解释定性及可表达化数据 148
7.1 N7和七大MP工具 149
7.2 七大MP工具的典型应用 150
7.3 亲和图 152
7.4 相互关系图(I.D.) 155
7.5 树形图 156
7.6 优先级矩阵 159
7.7 矩阵图 159
7.8 过程决策程序图 159
7.9 活动网络图 161
7.10 七大MP工具行为技巧 161
7.11 关键点 162
7.12 补充资料 162
7.13 问题回顾 162
7.14 问题和项目讨论 163
7.15 参考文献 163
第8章 层次分析法 165
8.1 优先级、复杂性和层次分析法 165
8.2 多目标决策制定和AHP 166
8.2.1 术语 168
8.2.2 结构化目标层次 168
8.2.3 决策层次 170
8.3 使用专家选择的解决方案 171
8.3.1 第1步:头脑风暴和构建问题的层次模型 171
8.3.2 第2步:为目标推导出比例大小的优先次序 172
8.3.3 第3步:推导出与各目标相关的可选方案的优先次序 174
8.3.4 第4步:综合 177
8.4 使用手工粗略计算AHP的解决方案 180
8.4.1 粗略计算解决方法1 180
8.4.2 粗略计算解决方法2:Brassard优先次序全面分析标准法 185
8.5 结论 187
8.6 关键点 188
8.7 补充资料 188
8.8 Internet练习 188
8.9 问题回顾 189
8.10 问题和项目讨论 189
8.11 问题 190
8.11.1 问题1:系统转化过程中的复杂度管理 190
8.11.2 问题2:在一高科技创业型公司中管理软件复杂度 191
8.11.3 问题3:病历系统中的复杂度 192
8.11.4 问题4:石油钻探决策系统 193
8.11.5 问题5:ROI问题 194
8.11.6 问题6:抽象的复杂度分析 194
8.11.7 问题7:复杂度的影响 195
8.12 参考文献 195
第9章 软件开发过程中的复杂度、错误和Poka Yoke 197
9.1 作为质量控制系统的Poka Yoke 198
9.2 Poka Yoke原则 198
9.3 导致缺陷产生的原因:差异、错误和复杂度 199
9.4 成功部署Poka Yoke的几种情况 201
9.5 作为缺陷原因的错误 201
9.6 控制软件开发中的复杂度 203
9.7 错误、检测方法和Poka Yoke 205
9.8 实施Poka Yoke体系 206
9.9 确认Poka Yoke体系 208
9.10 关键点 209
9.11 补充资料 210
9.12 Internet练习 211
9.13 问题回顾 211
9.14 问题和项目讨论 211
9.15 参考文献 211
第10章 软件开发智能管理的5S法 213
10.1 5S:迈向多产的工作环境的巨大一步 214
10.2 5S系统各执行阶段 215
10.2.1 第1阶段:筛选/清理 215
10.2.2 第2阶段:整顿/井井有条 215
10.2.3 第3阶段:清洁/清扫 215
10.2.4 第4阶段:标准化 215
10.2.5 第5阶段:维持清洁/规范 216
10.3 5S系统和DFTS过程 216
10.4 克服阻力 219
10.5 执行5S 220
10.5.1 第1步:管理层的介入 220
10.5.2 第2步:培训和执行 220
10.5.3 第3步:与奖励系统相关联 220
10.5.4 第4步:进行后续和持续的改进 221
10.6 关键点 221
10.7 补充资料 222
10.8 Internet练习 222
10.9 问题回顾 222
10.10 问题和项目讨论 222
10.11 参考文献 223
第11章 理解客户需求:软件QFD和客户心声 224
11.1 QFD:起源和介绍 224
11.1.1 QFD作为质量体系会有什么不同 225
11.1.2 QFD历史 227
11.1.3 软件QFD历史 227
11.1.4 什么是QFD,我们为什么需要它 228
11.1.5 关注优先级次序 230
11.1.6 QFD定义 231
11.1.7 QFD实施 231
11.1.8 QFD四阶段模型 231
11.1.9 “质量屋”矩阵 233
11.2 应用于软件的传统QFD问题 236
11.2.1 传统QFD失败之处 236
11.2.2 “矩阵太大了” 237
11.2.3 “花的时间太长” 237
11.2.4 “我们早就知道了” 238
11.3 软件的现代化QFD 239
11.3.1 Blitz QFD 240
11.3.2 七大管理和规划工具 240
11.3.3 客户满意度和价值 240
11.4 Blitz QFD过程 241
11.4.1 第1步:关键的项目目标 243
11.4.2 第2步:关键客户群 243
11.4.3 第3步:关键过程步骤 244
11.4.4 第4步:去现场 244
11.4.5 第5步:客户需求是什么 245
11.4.6 第6步:对客户需求进行结构化 248
11.4.7 第7步:客户需求结构分析 248
11.4.8 第8步:对客户需求进行优先级排序 249
11.4.9 第9步:实现经过优先次序排序的客户需求 250
11.4.10 后期部署:(只)对重要关系进行详细分析 251
11.4.11 “质量屋”及其扩展 252
11.4.12 6 Sigma项目 253
11.4.13 后续工作:应用、发展和改进过程 253
11.4.14 快速开发 253
11.4.15 关键链项目管理的进度部署 254
11.5 实现软件QFD 254
11.5.1 QFD中的人员因素 254
11.5.2 QFD所面临的挑战与陷阱 255
11.5.3 如何实现软件QFD 257
11.6 结论 257
11.7 关键点 259
11.8 补充资料 260
11.9 Internet练习 260
11.10 问题回顾 261
11.11 问题和项目讨论 262
11.12 参考文献 263
11.13 关于作者 267
第12章 软件设计过程中的创新:TRIZ和普氏概念选择法 268
12.1 DFTS创新需求 268
12.2 创造力和TRIZ 269
12.3 软件开发中的TRIZ 275
12.4 TRIZ、QFD和田口法 277
12.5 头脑风暴 278
12.6 普氏概念选择法 279
12.7 作为知识产权成果的软件 281
12.8 关键点 283
12.9 补充资料 283
12.10 Internet练习 284
12.11 问题回顾 284
12.12 问题和项目讨论 284
12.13 参考文献 284
第13章 软件中的风险评估以及故障模式和影响分析 286
13.1 FMEA:故障模式和影响分析 286
13.2 要在早期应用FMEA 289
13.3 软件故障树分析 292
13.4 软件故障模式及其原因 294
13.5 DFTS各阶段风险识别和评估 295
13.6 关键点 296
13.7 补充资料 297
13.8 Internet练习 297
13.9 问题回顾 297
13.10 问题和项目讨论 297
13.11 参考文献 297
第14章 对象、组件技术及其他软件开发工具 299
14.1 企业级业务应用中所面对的几种主要挑战 299
14.2 面向对象分析、设计和编程 300
14.3 基于组件的软件开发技术 306
14.4 极限编程的生产率 309
14.5 N版本编程的可靠性 309
14.5.1 NVP的优势 310
14.5.2 NVP的劣势 311
14.6 现代化编程环境 311
14.7 计算机自动化编程的趋势 314
14.8 关键点 316
14.9 补充资料 317
14.10 Internet练习 317
14.11 问题回顾 317
14.12 问题和项目讨论 317
14.13 参考文献 317
第三部分 可信软件设计
第15章 可信软件质量测量和数据统计方法 319
15.1 可信软件 320
15.2 微软公司的可信计算计划 321
15.3 软件开发过程中的统计过程控制 322
15.4 软件架构的统计方法 327
15.5 关键点 330
15.6 补充资料 330
15.7 Internet练习 330
15.8 问题回顾 330
15.9 问题和项目讨论 331
15.10 问题 331
15.11 参考文献 331
第16章 健壮性软件背景介绍 332
16.1 软件规约过程 332
16.2 何为健壮性软件 335
16.3 让软件健壮的需求 336
16.4 软件健壮性指标 337
16.5 关键点 338
16.6 补充资料 339
16.7 Internet练习 339
16.8 问题回顾 339
16.9 问题和项目讨论 339
16.10 问题 339
16.11 参考文献 340
第17章 用于健壮性软件的田口法及其优化 341
17.1 用于健壮性软件设计的田口法 341
17.2 工程设计实例 344
17.3 软件设计与开发实例 346
17.4 用于田口参数设计实验中的正交矩阵 350
17.5 可信软件设计应用 352
17.6 关键点 352
17.7 补充资料 353
17.8 Internet练习 353
17.9 问题回顾 353
17.10 问题讨论 353
17.11 问题 353
17.12 参考文献 353
第18章 确认、验证、测试和评估可信度 355
18.1 持续的开发生命周期 355
18.2 验证 357
18.3 确认 360
18.4 测试和评估 363
18.5 关键点 366
18.6 补充资料 367
18.7 Internet练习 367
18.8 问题回顾 367
18.9 问题和项目讨论 367
18.10 问题 368
18.11 参考文献 368
第19章 可信度的集成、扩展和维护 369
19.1 完成开发生命周期 369
19.2 集成 370
19.3 扩展 371
19.4 维护 372
19.5 关键点 375
19.6 补充资料 375
19.7 Internet练习 375
19.8 问题回顾 375
19.9 问题和项目讨论 375
19.10 问题 376
19.11 参考文献 376
第四部分 综合运用:DFTS计划部署
第20章 为DFTS进行的组织准备 377
20.1 反复思索 378
20.2 转型计划中的领导力挑战 385
20.3 评估关键组织化元素 386
20.3.1 建立领导承诺 386
20.3.2 了解领导角色 387
20.3.3 评估战略关系 388
20.3.4 确保整个企业组织参与 388
20.3.5 了解客户关注的需求 388
20.3.6 评估现有质量管理能力 389
20.4 关键点 389
20.5 补充资料 391
20.6 Internet练习 391
20.7 问题回顾 391
20.8 问题和项目讨论 391
20.9 参考文献 392
第21章 DFTS计划启动 393
21.1 DFTS和PICS框架 394
21.2 规划 395
21.3 执行 396
21.3.1 第11步:启动整个企业组织范围内的学习过程 396
21.3.2 第12步:执行DFTS技术:学习和应用过程 398
21.4 控制 401
21.4.1 第13步:反馈控制体系 404
21.4.2 项目管理 409
21.5 安全保证 410
21.5.1 第14步:总结改进过程和所积累的经验 410
21.5.2 第15步:整合并推广计划 410
21.6 在小型软件公司和“电子山寨”中的使用情况 415
21.7 下一个是什么 416
21.8 关键点 417
21.9 补充资料 418
21.10 Internet练习 418
21.11 问题回顾 419
21.12 问题讨论 419
21.13 参考文献 420
第五部分 6个研究案例
第22章 雷神电子系统公司(RES)的软件质量成本(CoSQ)应用 424
22.1 简介 424
22.2 RES及其改进计划 424
22.3 软件质量成本 425
22.3.1 RES的CoSQ模型 425
22.3.2 CoSQ数据收集 426
22.4 经验教训 426
22.4.1 CoSQ模型使用教训 426
22.4.2 使用CoSQ数据来了解改进的影响 426
22.4.3 CoSQ成本和收益 429
22.4.4 CoSQ追踪记录制度化 429
22.5 研究案例启迪 429
22.6 参考文献 430
第23章 IT项目群整合 431
23.1 第一部分:挑战 431
23.1.1 迭代过程的五个阶段 432
23.1.2 客观性、主观性和质量 434
23.2 第二部分:一个新的合理方法 434
23.2.1 第1步:设计 435
23.2.2 第2步:复杂度结构化—关注目标 435
23.2.3 第3步:度量方式 435
23.2.4 第4步:综合 439
23.2.5 第5步:优化 440
23.3 风险 442
23.4 扩展 443
23.5 小结 444
23.6 参考文献 445
第24章 为全新产品定义客户需求:用于创新软件的QFD 446
24.1 简介 446
24.1.1 价值定义 447
24.1.2 为什么不问 447
24.1.3 创新产品 448
24.2 全新需求定义 448
24.2.1 客户需求定义方法 448
24.3 工具 453
24.3.1 QFD的七大管理和规划工具 453
24.3.2 思考过程 454
24.4 最后几步 455
24.5 阻力层次 456
24.6 结论 458
24.7 致谢 458
24.8  参考文献 458
24.9 关于作者 460
第25章 Jurassic QFD:集成服务和产品质量功能部署 461
25.1 MD Robotics公司介绍 461
25.2 为什么要用QFD 462
25.2.1 QFD历史 462
25.2.2 Kano需求 463
25.3 佛罗里达冒险岛环球工作室在场景制作中的QFD应用 464
25.3.1 QFD模板 465
25.3.2 客户心声分析 465
25.3.3 情绪信息实施 468
25.3.4 肢体动作实施 470
25.3.5 工程需求实施 471
25.4 小结 472
25.5 关于作者 473
25.6 参考文献 473
第26章 QFD项目:使用Blitz QFD更好地管理软件开发项目 475
26.1 简介 475
26.1.1 失败 476
26.1.2 部分成功 476
26.1.3 QFD定义 476
26.1.4 正确启动 477
26.2 新开发过程中的问题 477
26.2.1 没有条理的开发是低效的 477
26.2.2 有条理的开发是有效的 478
26.3 关注QFD项目的价值 480
26.4 小结 489
26.5 致谢 490
26.6 参考文献 490
26.7 关于作者 492
第27章 QFD2000:集成QFD和其他改进新产品开发过程的质量管理方法 493
27.1 新产品需求 493
27.2 质量和新产品的开发 494
27.2.1 现代质量工具 495
27.2.2 新产品开发过程 496
27.3 QFD资料和其他质量管理方法 499
27.4 关于作者 504
27.5 参考文献 504
术语表 506

教学资源推荐
作者: [英]克里斯?布里顿(Chris Britton) 著
作者: (美)Kenneth C.Louden
作者: [美]托尼·加迪斯(Tony Gaddis)著
作者: 朱鸣华,刘旭,麟杨微,罗晓芳,李慧,孙大为,赵晶
参考读物推荐
作者: [西班牙]大卫·米兰·埃斯克里瓦(David Millán Escrivá)[西班牙]维尼休斯·G.门东萨(Vinícius G. Mendonça) [美]普拉蒂克·乔希(Prateek Joshi)著
作者: (美)H.M.Deitel,P.J.Deitel,T.R.Nieto
作者: [美]易格恩?阿格佛温(Eugene Agafonov)著
作者: [美]马克·卢茨(Mark Lutz)著