目前,世界上增长最快的是计算机终端用户的欲望。计算机革命是从《纽约时报》在1946年情人节宣布ENIAC(电子数字积分计算机)的问世开始的,而这场革命彻底改变了世界。用硅微芯片制造计算机硬件已经变得非常可靠,甚至可以嵌入其他机器。我们假定,如果硬件安全地度过了其“婴儿死亡”期,就永远不需要修理,其他机器也是这样(也许需要频繁地升级,以满足人们不断增长的要求)。同样,软件也已走了一段较长的路,但它始终有一个致命的弱点:可信赖的计算能力。今天,耐用品制造商肯定不会把有已知缺陷的产品投放到高技术市场上,但这对于软件经销商来说是家常便饭。面对计算机终端用户的苛刻要求、软件固有的复杂性和“质量文化”在软件业的普遍缺乏(但这种对质量的不懈追求在高技术含量的耐用品行业却非常普遍),软件经销商别无选择。 本书作者以30余年的质量工作经验和50多年的软件开发经验为基础,探讨了设计可信赖软件的问题。我们受到Microsoft公司中Craig Mundie的可信赖计算活动的启发,查阅了有关软件质量的文献,召开了无数的会议后,我们相信,Taguchi方法提供了许多有用的东西。我们进一步发现,Taguchi方法不是由Taguchi博士本人推荐应用于可信赖软件的开发的。Taguchi方法只应用于6个案例,但全部成功了。本书的主旨是,尽管软件的设计与硬件类似,但软件的开发过程与硬件的制造过程没有丝毫雷同之处。因此,用于提高软件可靠性和可信赖程度的所有质量方法都必须尽可能地在上游阶段应用。Taguchi方法的天才之处在于,它可以在设计期间处理可控制的因素(内因)和不可控制的因素(外因)。通过使用矩形矩阵或Latin Square的统计试验技术,Taguchi方法可以同时考虑所有的因素。这意味着结束了下游阶段的测试、瓶颈分析、一次查找并修改一个错误等方式。目前,软件的质量目标是防止在实施过程中出错,而不是在实施过程中和实施之后查找和消除错误。与其他质量方法一样,Taguchi方法并不是一种可以直接插入软件开发过程的“黑盒子”,也不能单独使用。它必须放在其他在上游阶段使用的、面向客户的方法中,如解析分层次分析过程(AHP)、质量功能展开(QFD)、TRIZ、Pugh 概念选择、故障模式与效果分析 (FMEA),这些方法都可以直接使用,不需要编写任何代码。 Taguchi方法的真谛是聆听“顾客的呼声”。通过仔细的聆听,软件构建师或设计师可以了解计算机终端用户的期望,开发出能获得认可的可靠产品。这样,计算机终端用户就不会被拖入产品“修复再修复”的无休止循环中,却永远看不到成功的希望。本书为开发健壮软件提供了一个包含工具、技术和方法的框架,这个框架是一个集成技术、基于领导层的改革原则、学习型企业的最佳实践方式、管理基础体系及质量战略和系统,所有这些都揉合到软件开发的独特环境中,我们称之为可信赖软件的设计(Design for Trustworthy Software,DFTS)。 本书旨在满足软件开发企业的需要,这些或大或小的开发企业希望建立可信赖的或非常可靠的软件,以满足目前越来越专业的计算机用户的要求。本书适合整个公司学习,可以帮助理解、实施、提高和维护可信赖的软件开发系统。有远见的领导层可以凭借本书,理解和评价用户的这些需求,并准备领导公司开发出这种健壮的软件。尽管我们强调的是企业软件,但凡是软件开发占很大份量的企业,如开发专用软件,提供内部的软件支持,或提供外包服务的企业,都可以使用本书。企业可以将本书用于获得正式的DFTS黑带、高级黑带或其他证书。这种官方证书可以极大地提高整个公司的DFTS学习热情和DFTS活动的开展。本书还可以用作软件开发人员、质量人员和高级管理人员(他们在企业中有着举足轻重的作用)的实践参考。 本书也可以供软件开发技术、MIS、产品设计与开发、操作、质量管理,以及技术管理等专业的大学生及研究生使用。本书特别补充了理科硕士课程中的工程、MIS、IT、计算机科学及MBA课程,主要探讨了操作、产品开发和技术。本书也可以用做American Society for Quality (ASQ)软件质量认证工程师(CAQE)考试用书。 本书包含大量的示例、补充内容和案例,还有许多要点、复习题、讨论题、项目、练习和习题。在Internet上还有其他学习资料,为公司职员、学生和自学人员提供了更多、更新的内容。 本书并不是一本传统意义上的“手册”,而是详细介绍了几个已被证明为有效的质量方法的理论和实践,它们适合于软件开发,可以很好地交互使用。尤其是这些方法可以在实施阶段开始之前的设计阶段使用。本书提供了大量的小软件和其他工程设计案例与示例来演示理论的应用。软件构建师可以找到支持其设计理念的例子,软件工程师可以找到能在详细设计阶段提高质量的例子。虽然所有的DFTS技术都可以在整个开发过程中应用,但就终端用户需要的产品而言,重点应是概念、体系结构、工程设计、实施、测试和最终支持等领域。这5个部分为成功学习和应用DFTS技术建立了相关的领导和管理基础架构。 本书的组织方式 本书分为5部分。第Ⅰ部分包含第1~5章,介绍了目前的软件开发情况,探讨了其缺陷,提出了开发可信赖软件的挑战及框架。这由两个主要的软件质量问题构成,分别是软件质量的量度标准和可信赖软件的金融远景,在第2章和第3章论述。第Ⅱ部分包含第6~14章,介绍了作者为开发可信赖软件而推荐使用的工具和技术,是本书的核心。第Ⅲ部分包含第15~19章,说明了如何在程序实现阶段开始之前的设计过程中,在上游阶段应用这些工具和技术。第Ⅳ部分包含第20章和第21章,为在企业中开展DFTS活动打基础。与所有的质量活动一样,DFTS必须得到高层的支持才能成功,而且必须成为企业文化的一部分。第Ⅴ部分包含第22~27章,列举了6个主要的案例,应用了第Ⅰ~Ⅳ部分介绍的各种软件质量技术。我们挑选出这些技术的世界级高手,他们慷慨地贡献出了最得意的例子,供读者思考和学习。 有用的软件 使用几个软件包,可以轻松地学习和应用质量方法,如AHP、Taguchi方法和QFD。可以从许多网站上免费下载限制使用或限制时间的软件。下面的软件可以免费下载: ● AHP:在上可以免费下载Expert Choice的15天试用版本。学生、教师和公司团体购买可以享受特价,详情请致电1-888-259-6400。 ● QFD:Microsoft Excel的Modern Blitz QFD模板包含在QFD协会的培训课程中,详情请访问网站。 ● Taguchi方法:Qualitek-4 DEMO软件提供了50多个示例,允许使用L8数组设计自己的试验。该软件可以从上下载。 也可以访问如下有用的网站: 涉及L8数组的试验可以使用DEMP版本。完整版本需要向经销商购买。 本书的网站 本书的网站包含了本书的最新版本,为学生和教师提供了新的资料、示例和案例分析。该网站还为本书的其他读者提供了资料,如质量人员及在DFTS过程中起重要作用的公司领导。本书的两个网站是: