首页>参考读物>计算机科学与技术>软件工程及软件方法学

实用软件度量
作者 : (美)John McGarry,David Card,Cheryl Jones等
译者 : 吴超英 廖彬山
出版日期 : 2003-09-01
ISBN : 7-111-12809-5
定价 : 33.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 235
开本 : 16开
原书名 : Practical Software Measurement
原出版社:
属性分类: 店面
包含CD :
绝版 : 已绝版
图书简介

实用软件度量(PSM)是设计和实现基于项目的软件度量程序的过程,它提供有关进度、资源分配和技术性能等方面的主要信息,使项目决策者可以制定出正确的决策。
本书由PSM开发启动的领导者所撰写,是对PSM的官方的、权威性的指导。它描述了开发、运行以及持续改进组织的度量程序的原理和实践,使用真实世界的示例来说明实际的解决方案和特定的度量技术。本书适合软件管理人员和开发人员使用,也可作为高等院校计算机专业及软件学院的参考教材。

图书前言

按事实进行管理已经在软件工程界和信息技术界成为日益流行的概念。组织正将关注点集中于度量和使用客观信息来制定决策。定量的性能信息是基于事实进行管理不可缺少的。本书在集成了度量信息模型(Measurement Information Model,MIM)和度量过程模型(Measurement Process Model,MPM)概念的基础上,为软件项目管理者描述了按事实进行管理的方法。尽管这些概念也适用于非软件活动,但本书介绍的示例和术语主要针对软件。
决策制定者的信息需要驱动软件度量和相关分析技术的选择。这是广为接受的软件度量方法的前提,包括目标/问题/度量元(Basili and Weiss,1984)和待研究问题/分类/度量(McGarry et al., 1997)。信息需要由管理者的工作所产生,这些工作影响项目、过程和朝着已定义目标启动的成果。信息需要通常从两个来源派生:(1)管理者寻求达到的目标,(2)妨碍实现这些目标的障碍。障碍也属于待研究问题,包括风险、问题以及缺乏在目标相关领域中的信息。除非有一个管理者或其他具有信息需要的决策制定者,否则度量不起作用。软件项目管理者面临的问题是无数的,通常包括估计和分配项目资源、跟踪进展以及交付满足客户规格说明和期望的产品。
度量信息模型定义了管理者的信息需要与要收集的客观数据(常称为度量)之间的关系。它还为基本度量思想和概念建立了一致的术语,这对于决策制定者来交流度量信息是至关重要的。在实用软件度量中的信息模型定义了三个层次的度量:(1)基本度量,(2)派生的度量和(3)指示器。有趣的是,这三个层次的度量大致是与许多已有的度量方法所倡导的三层结构相对应的。已经在软件界中使用的例子包括目标/问题/度量元(Basili and Weiss, 1984)、因素/准则/度量元(Walters and McCall,1977)和待研究问题/分类/度量(McGarry et al., 1997)方法。Kitchenham等人开发了一个定义度量的通用数据结构的类似方法,将它们的结构定义为一个实体关系图(1995)。
一个有效的度量过程必须首先选择合适的度量,同时提供对已收集数据的有效分析。度量过程模型描述了一般可应用于所有环境的相关的度量活动集,而不考虑任何特殊情况下的特定的信息需要。该过程由四个迭代的度量活动所组成,这四个度量活动包括建立、计划、执行和评价。这个过程类似于常见的计划、实施、检查和行动(Plan-Do-Check-Act)循环(Deming,1986)。
基于事实的客观信息需要的认识,为一个项目或一个组织确立了一个度量过程。在度量策划期间,决策制定者和度量用户的特有的信息需要,驱动着选择和定义合适的度量。将一个项目特有的信息模型实例化,其度量方法的结果标识了要实施的基本度量、派生度量和指示器以及要应用的分析技术,以便处理项目已确定优先级的信息需要。
当实现或执行度量计划时,要收集和分析所要求的度量数据。把执行度量活动所产生的信息产品提供给决策制定者。从这些度量用户处反馈回来的信息,有助于评价度量和度量过程的有效性,以便能够在一个持续的基础上得到改进。
本书介绍的基本概念是从大量的度量经验和以前的研究发展而来的。它们在Practical Software Measurement(McGarry et al.,1997)的已发布的序列版本中引入,并且在ISO/IEC标准15939“软件度量过程(2001)”中进行了形式化。来自ISO/IEC 15939的度量过程模型和度量术语也已被软件工程研究所能力成熟度模型集成(CMMI)项目(CMMI开发组,2000)所采用,作为一个新的度量和分析过程域的基础。本书基于ISO/IEC 15939和CMMI的已证实的度量概念,解释了如何用实用的、可理解的方法来实现一个切实可行的度量过程。
简而言之,要实现一个软件密集型项目的一个客观的按事实度量的过程,包括通过开发一个项目特有的信息模型来定义项目决策制定者的信息需要,并区分优先级,然后裁剪和执行一个项目特有的度量过程活动集。实现这个过程的PSM方法,综合了以前的经验和对许多应用领域的众多原始资料的研究结果。
如何使用本书
本书为实现一个软件度量过程提供了渐进的指导。它全面描述了度量信息模型和度量过程模型,同时为在一个实际项目环境中应用这些模型提供了基于经验的指导。还不曾有哪本书能够收集了所有有关软件度量的相应信息和实用示例。同样地,在实用软件度量Web站点www.psmsc.com上,包含了附加的信息、指导、示例和工具来补充本书的内容。
为了提高易读性,作者大部分采用在正文中引用参考资料的形式对有关专题给出进一步阅读的建议。附加的参考资料在本书的“参考文献”部分中列出。
在本书中讨论了以下主题:
第1章  度量:关键概念和实践。第1章综述性地介绍了软件度量,解释了度量如何支持今天的面向信息的商业模型以及度量如何成为公司的资源。它描述了项目级和组织级度量之间的关系,介绍了PSM的两个主要概念:度量信息模型和度量过程模型。
第2章  度量信息模型。第2章深入讨论了度量信息模型及其度量构件。它把度量信息模型与度量计划和实现活动关联起来。
第3章  计划度量。第3章是详细讨论每个度量过程活动的五章中的头一章。第3章集中讨论计划度量活动,并描述了需要什么信息来定义信息驱动的、项目特有的度量计划。
第4章  执行度量。第4章研究执行度量活动,并讨论了如何收集和分析度量数据。本章介绍了几个与度量分析有关的概念。包括分析类型以及如何按因果关系将信息需要与相关的问题关联起来。
第5章  分析技术。第5章对估计、可行性分析和性能分析三种主要的度量分析类型进行了深入探讨。
第6章  评价度量。第6章描述了评价度量活动。它集中于已应用项目度量的评估、评价和改进以及已实现的项目度量过程。
第7章  建立和维持承诺。第7章解释了建立和维持承诺这一最后的度量活动,说明了与实现一个切实可行的度量过程有关的组织级需求。第7章还说明了度量的“经验教训”。
第8章  成功的度量。第8章评审了本书中提出的一些主要概念,并标识关键的度量成功因素。
附录A  度量构造示例。附录A提供了详细的已应用于软件密集型项目的典型的度量构造示例。
附录B  信息系统案例研究。附录B提供了一个综合的案例研究,说明了一个典型信息系统的度量过程的实现。
附录C  Synergy集成复印机案例研究。附录C是第二个案例研究,描述了如何将度量应用于一个较大型的软件密集型升级项目。

图书序言

软件工程的未来世界将与过去或现在有很大不同。我们的系统将更加复杂。它们大部分将是系统的系统,有不同的目标,但最终都强迫它们相互协调地协作并一起进化。
关于系统的系统的最安全的假设就是每个事物最终都是相互联系的。即使这样,事物有时仍不按给定的方式运作。移动系统在进入一个隧道或电池用完时将失去联系。由移动引起的混乱增加了这些复杂事情,各自独立的代理商就在网络空间做起生意来了。
不幸的是,当软件系统的复杂性增加时,可控能力就降低了。软件系统的内容越来越多的是由商用成品(commercial off-the-shelf,COTS)驱动的。销售商可能会倾听你的需要,但他们的COTS特征及其最终的发展将对整个市场要求作出响应。除此之外,在日益竞争以及上市时间压力的驱使下,不得不在越来越短的时间内对软件的需求、构架、过程和资源作出决策。更进一步来说,信息技术快速变化的步伐意味着你的项目承诺必须适应技术、市场和公司结构的中途变更。
当然,如果你能明白如何最佳地使你的组织适应新的操作模式,伴随着所有这些挑战的将是获得巨大成功的机会。
在这方面已经取得成功的大多数组织都使用了一个完整的软件度量程序。那就是,他们已经而且正在收集和分析数据,用以表明他们在何处,遇到了什么问题,应采取哪些更好的策略来改进他们的状况。有些特别好的成功事迹被记载下来,如Bob Grady(1992)记载了惠普公司的经验,而Walker Royce(1998)记载了TRW的CCPDS-R的经验。
不过,盲目地投入一个软件度量程序,就会带来较高的失败风险。如下是一些常见的错误。
?度量过度收收收集数据太多,导致浪费了工作量和降低了士气
?度量功能失常收收将度量局限于个性化评价,导致“他们想听什么,就告诉他们什么”的数据
?度量不匹配收收挑选错误的、模棱两可的或不一致的度量,导致没有结论的数据分析
?过程不匹配收收挑选增强一些错误过程的度量(例如,最小化平均问题报告关闭时间,将导致人们先处理容易的问题)
幸运的是,你不需要盲目地使你的组织投入到一个度量程序中去。因为本书为开发、操作和持续地改进一个组织的度量程序提供了原理和实践。以下是一些关于实用软件度量(Practical Software Measurement,PSM)方法的重要论点:
?PSM基于几十年来数十个组织在学习如何最佳地实现一个成功的软件度量程序中所获得的经验,它的原理和实践已经成功地用在各种软件密集型项目中。
?PSM不是一个“万能的”方法,它也指导你裁剪度量框架和实践,以适合你的组织和项目的情况。
?PSM不仅是一个抽象的指南集,它还通过案例研究来说明哪个指南能应用到嵌入式系统和商业系统领域内的特定项目中。案例研究不仅提供了“如何做”的信息,而且提供了“为什么这样做”的动机,同时为实践人员和管理人员提供复杂软件项目状态的可视化的评价,并为标识和控制问题状况提供了诊断信息的评价。
?PSM与新近启动的研究项目兼容并有助于它们的实现。这些项目包括能力成熟度模型集成(CMMISM)、ISO/IEC 15939(软件度量过程),以及正在由USC/UMD经验中心(Center for Empirically Based Software Engineering,CeBASE)对之进行试验的软件密集型的、系统级经验工厂。
?PSM是通过一组工具、培训课程、讲座和研讨会进行完善的,从中PSM经验得到了共享和讨论。
由于具备了所有这些支持优势,PSM为你提供了实现软件度量程序的重大效益的方法,同时帮助你理解和避免因“盲目投入”而带来的风险。你会发现本书对你未来的软件度量启动是很有价值的起点,也是持续地指导你绘制在复杂的机会之海中前进的航线图的来源。

Barry Boehm
南加州大学软件工程中心主任
2001年5月

作者简介

(美)John McGarry,David Card,Cheryl Jones等:暂无简介

译者简介

吴超英 廖彬山:暂无简介

译者序

本书详细、准确地论述了软件度量的意义、主要内容和实施方法,深入地考察了软件度量程序的基础,给出了大量可应用于软件项目的度量构造的示例,提供了两个不同类型项目的综合性的案例研究,并明确地指出:客观的、有意义的和量化的度量是成功地开发当今复杂软件的关键。
我们认为,本书是一本有关软件度量既实用又权威的著作,讲述了所有与计算机密集型系统有关的开发人员、管理人员、使用人员、技术支持人员以及后勤保障人员应该密切关心和逐步掌握的课题,同时阅读本书也是各个组织按照CMM/CMMI或其它模型深入进行过程改进的重要前提。通过阅读这本著作,你将会更深切地体会到软件工程确实是软件学科、人文学科和统计学科的交叉学科。
在本书翻译的过程中,我们曾部分地参阅了北京航空航天大学软件工程研究所李云辉、任发科和武硕的译稿,在某种意义上,可以说他们也是本书的译者。特别要提出的是,在全书的翻译过程中,周伯生始终对我们进行了帮助和指导。此外,北京赛柏科技有限责任公司的周柳芳进行了部分录入工作。在此我们谨向他们表示诚挚的谢意。

吴超英  廖彬山
2003年6月于北京航空航天大学

图书目录

译者序

前言
第1章  度量:关键概念和实践 1
1.1  度量的动机 2
1.2  度量作为组织的鉴别器 3
1.3  基础:项目度量 4
1.4  使度量有效的因素 5
1.5  度量信息模型 7
1.6  度量过程模型 8
第2章  度量信息模型 11
2.1  信息需要 13
2.2  度量构造 14
2.2.1  属性(可度量的) 17
2.2.2  基本度量 17
2.2.3  派生度量 19
2.2.4  指示器 19
2.2.5  其它术语 20
2.3  度量构造示例 21
2.3.1  生产率示例 22
2.3.2  质量示例 22
2.3.3  编码进展示例 23
第3章  计划度量 25
3.1  标识信息需要并设定优先级 26
3.1.1  信息需要的标识 27
3.1.2  将信息需要映射到信息分类 28
3.1.3  设定信息需要的优先级 31
3.2  选择和指定度量 32
3.2.1  刻画项目语境 33
3.2.2  定义可度量概念 34
3.2.3  选择可应用的度量 36
3.2.4  指定度量构造 37
3.3  将度量方法集成到项目过程中 40
3.3.1  标识度量时机 40
3.3.2  制定度量规程 43
3.3.3  文档化项目度量计划 46
第4章  执行度量 49
4.1  收集和处理数据 50
4.2  分析数据 55
4.2.1  指示器生成 56
4.2.2  指示器表示 60
4.2.3  集成化分析模型 62
4.3  提出建议 68
第5章  分析技术 71
5.1  估计 71
5.1.1  使用集成化分析模型来估计 72
5.1.2  估计量 73
5.1.3  估计过程概述 74
5.1.4  软件估计方法概述 75
5.1.5  选择估计方法 78
5.1.6  四种方法的相似点和不同点 79
5.1.7  在整个项目生命周期中使用
不同的方法 80
5.1.8  映射与校准 80
5.1.9  计算估计 82
5.1.10  规模估计 82
5.1.11  工作量估计 83
5.1.12  进度估计 84
5.1.13  度量估计 84
5.1.14  评价估计 85
5.2  可行性分析 86
5.2.1  可行性指示器 88
5.2.2  可行性分析过程概述 90
5.2.3  评价项目计划 91
5.2.4  评估计划风险的影响 93
5.2.5  标识缓解的替代方案 93
5.3  性能分析 93
5.3.1  为性能分析使用集成化分析模型 94
5.3.2  性能指示器 95
5.3.3  性能分析过程 98
5.3.4  计划与实际比较 98
5.3.5  评估影响 101
5.3.6  预测结果 102
5.3.7  评价替代方案 102
第6章  评价度量 105
6.1  评价度量 106
6.1.1  质量产品的使用 107
6.1.2  质量结果的可信度 107
6.1.3  质量对目的的适应性 107
6.1.4  度量结果的可理解性 108
6.1.5  指示器模型假设的满足程度 108
6.1.6  度量的准确性 108
6.1.7  度量的可靠性 109
6.2  评价度量过程 110
6.2.1  性能 110
6.2.2  及时性 111
6.2.3  度量过程的效率 111
6.2.4  缺陷抑制 112
6.2.5  客户满意度 112
6.2.6  度量过程的依从性 112
6.2.7  审计计划度量活动 113
6.2.8  审计执行度量活动 114
6.2.9  评价建立和维持承诺活动 114
6.2.10  度量过程成熟度 115
6.3  更新经验库 117
6.4  标识和实现改进 118
第7章  建立和维持承诺 119
7.1  获得组织的承诺 119
7.2  定义度量职责 121
7.3  提供资源 122
7.3.1  度量培训 123
7.3.2  度量工具 123
7.4  评审度量程序 124
7.5  获得经验 125
7.5.1  开始要小 125
7.5.2  提供足够的培训 125
7.5.3  展示承诺 126
7.5.4  最小化成本 126
7.5.5  采用面向行动的方法 127
7.5.6  交流 128
第8章  成功的度量 129
8.1  集成化规范 129
8.2  支持文化 130
8.3  成功的指示器 131
附录A  度量构造示例 133
附录B  信息系统案例研究 167
附录C  Synergy集成复印机案例研究 199
术语表 215
参考文献 221
索  引 225

教学资源推荐
作者: [美] 弗兰克•徐(Frank Tsui) 奥兰多•卡拉姆(Orlando Karam) 芭芭拉•博纳尔(Barbara Bernal)著
作者: [英]伊恩·萨默维尔(Ian Sommerville) 著
参考读物推荐
作者: (美) Dorian Pyle
作者: [波]米科拉吉·帕利科夫斯基(Mikolaj Pawlikowski) 著
作者: Sam Guckenheimer Juan J.Perez
作者: (美)汤姆·迪马可(Tom DeMarco) 蒂莫西·利斯特(Timothy Lister)著