软件成本估算:COCOMO II模型方法
[特价中]
基本信息
- 作者: (美)Barry W.Boehm等 [作译者介绍]
- 译者: 李师贤 杜云梅 李卫华 孙恒等
- 丛书名: 软件工程技术丛书
- 出版社:机械工业出版社
- ISBN:711115777X
- 上架时间:2005-4-19
- 出版日期:2005 年4月
- 开本:16开
- 页码:412
- 版次:1-1
- 所属分类:
计算机 > 软件工程及软件方法学 > 建模
内容简介回到顶部↑
书籍
计算机书籍
cocomo(constructive cost model,构造性成本模型)是一种精确的、易于使用的基于模型的成本估算方法。而cocomo ii是对经典cocomo模型的彻底更新,反映了现代软件过程与构造方法。本书详细讲解如何利用cocomo ii进行软件开发项目管理中的有效估算。书中用大量实例说明cocomo ii的使用方法,涉及软件成本估算的各个方面。适合软件开发人员、管理人员、在校学生参考。
各种机构的日常运作日益依赖于客户化软件方案的开发,然而,目前一半以上的软件项目在进度与预算上都超出50%以上。
虽然某些类型的超出仍是不可预测的,但是采用恰当的模型可以避免大部分问题的发生。cocomo ii是对经典cocomo模型的彻底更新,反映了现代软件过程与构造方法,另外还给出了几个将模型应用于关键软件决策情形的代表性示例。该模型采用创新性的统计学方法进行校准与验证,从而使模型既符合专家判断,又与161个认真收集的项目数据点相一致。本书也介绍了针对cots集成、快速开发成本与进度估算的cocomo ii新扩展。
本书特点
●从知识渊博的作者那里学到第一手的100多人年的软件成本估算经验。
●通过探索成本的真正含义而做出更好的软件决策。
●采用成本与进度估算,进行更好的项目计划与控制及风险管理。
●可以用附带光盘上的软件马上开始估算。
●通过作者的web站点跟踪最新发展动态。
计算机书籍
cocomo(constructive cost model,构造性成本模型)是一种精确的、易于使用的基于模型的成本估算方法。而cocomo ii是对经典cocomo模型的彻底更新,反映了现代软件过程与构造方法。本书详细讲解如何利用cocomo ii进行软件开发项目管理中的有效估算。书中用大量实例说明cocomo ii的使用方法,涉及软件成本估算的各个方面。适合软件开发人员、管理人员、在校学生参考。
各种机构的日常运作日益依赖于客户化软件方案的开发,然而,目前一半以上的软件项目在进度与预算上都超出50%以上。
虽然某些类型的超出仍是不可预测的,但是采用恰当的模型可以避免大部分问题的发生。cocomo ii是对经典cocomo模型的彻底更新,反映了现代软件过程与构造方法,另外还给出了几个将模型应用于关键软件决策情形的代表性示例。该模型采用创新性的统计学方法进行校准与验证,从而使模型既符合专家判断,又与161个认真收集的项目数据点相一致。本书也介绍了针对cots集成、快速开发成本与进度估算的cocomo ii新扩展。
本书特点
●从知识渊博的作者那里学到第一手的100多人年的软件成本估算经验。
●通过探索成本的真正含义而做出更好的软件决策。
●采用成本与进度估算,进行更好的项目计划与控制及风险管理。
●可以用附带光盘上的软件马上开始估算。
●通过作者的web站点跟踪最新发展动态。
作译者回到顶部↑
本书提供作译者介绍
Barry W.Boehm博亡是软件业中最有影响的专家之一,他开创并发展了COCOMO II模型。他的经典著作《软件工程经济学》奠定了软件成本估算领域的基础。Boehm博十与美国南加州大学软件工程中心的其他同事—起,引领着软件成本估算技术的发展。
.. << 查看详细
.. << 查看详细
目录回到顶部↑
译者序
原序
前言
作者简介
第1章 cocomo ii介绍 1
1.1 cocomo ii用户目标 1
1.2 cocomo ii模型目标 2
1.3 cocomo ii开发和发展策略 3
1.4 未来软件实践市场模型 4
1.4.1 中间部分 5
1.4.2 1999年模型评估 5
1.5 最终的cocomo ii模型系列 6
1.5.1 针对不同软件市场部分的cocomoii模型 6
1.5.2 根据过程策略裁剪cocomo ii估算模型 7
第2章 cocomo ii模型定义 9
2.1 引言 9
2.1.1 概述 9
2.1.2 标称进度估算公式 9
2.2 规模估算 10
2.2.1 源代码行(sloc)计算 11
原序
前言
作者简介
第1章 cocomo ii介绍 1
1.1 cocomo ii用户目标 1
1.2 cocomo ii模型目标 2
1.3 cocomo ii开发和发展策略 3
1.4 未来软件实践市场模型 4
1.4.1 中间部分 5
1.4.2 1999年模型评估 5
1.5 最终的cocomo ii模型系列 6
1.5.1 针对不同软件市场部分的cocomoii模型 6
1.5.2 根据过程策略裁剪cocomo ii估算模型 7
第2章 cocomo ii模型定义 9
2.1 引言 9
2.1.1 概述 9
2.1.2 标称进度估算公式 9
2.2 规模估算 10
2.2.1 源代码行(sloc)计算 11
译者序回到顶部↑
有效的估算是软件开发项目管理中最具挑战性也是最重要的活动。只有使用科学的方法对软件项目的规模、工作量、进度与成本做出合理可靠的估算,才能实施良好的项目计划与控制。然而由于各种原因,目前的软件行业常常做不好项目估算,我们因此而遭受了很多本不应该承担的损害。
《软件成本估算:COCOMO II模型方法》和《软件工程经济学》是Barry W. Boehm博士所著的姐妹篇,介绍了世界上应用范围最为广泛的成本估算模型—COCOMO模型,这个模型由Barry W. Boehm博士开创并加以发展。《软件工程经济学》以经济学的观点来研究和分析软件的开发,以及探讨软件成本估算技术与成本估算模型。《软件工程经济学》是原版COCOMO模型(COCOMO 81)最完整的信息资源,提供了帮助我们理解与应用COCOMO II的大量素材;本书详细介绍了COCOMO II模型及其使用,它对COCOMO 81做了重要更新,以改进它对新的开发过程、方法、工具、技术和企业文化的适用性,并提高了估算的准确性。
我们衷心希望这两本书能帮助软件组织做出更好的软件估算,进而提高软件项目管理水平。
参与这两本书翻译及校对工作的有李师贤、杜云梅、李卫华、孙恒、唐培和、孙念、游梦良、蒋敏迪、崔茂林、李皓、李智、蔡树彬、徐晶、熊春玲等,由李师贤统一审校。另外,本书的翻译工作得到了广东省自然科学基金项目的资助(批准号:04009863)。
由于时间仓促,译者水平有限,译稿难免存在错误和疏漏,欢迎读者批评指正。
译 者
2004年8月广州康乐园
《软件成本估算:COCOMO II模型方法》和《软件工程经济学》是Barry W. Boehm博士所著的姐妹篇,介绍了世界上应用范围最为广泛的成本估算模型—COCOMO模型,这个模型由Barry W. Boehm博士开创并加以发展。《软件工程经济学》以经济学的观点来研究和分析软件的开发,以及探讨软件成本估算技术与成本估算模型。《软件工程经济学》是原版COCOMO模型(COCOMO 81)最完整的信息资源,提供了帮助我们理解与应用COCOMO II的大量素材;本书详细介绍了COCOMO II模型及其使用,它对COCOMO 81做了重要更新,以改进它对新的开发过程、方法、工具、技术和企业文化的适用性,并提高了估算的准确性。
我们衷心希望这两本书能帮助软件组织做出更好的软件估算,进而提高软件项目管理水平。
参与这两本书翻译及校对工作的有李师贤、杜云梅、李卫华、孙恒、唐培和、孙念、游梦良、蒋敏迪、崔茂林、李皓、李智、蔡树彬、徐晶、熊春玲等,由李师贤统一审校。另外,本书的翻译工作得到了广东省自然科学基金项目的资助(批准号:04009863)。
由于时间仓促,译者水平有限,译稿难免存在错误和疏漏,欢迎读者批评指正。
译 者
2004年8月广州康乐园
前言回到顶部↑
“我们都快成软件公司了。”越来越多的机构—诸如财务、交通、航空、电子和制造公司—如是说。竞争的优势日益依赖于智能的、可裁剪产品和服务软件的开发,以及比竞争对手更快捷地开发和调整这些产品与服务的能力。这些趋势突出表明了需要准确地估算软件成本和进度,并支持软件决策的权衡、风险、灵敏性和商业实例分析的强大能力。
同时,新一代软件过程和产品正在改变机构开发软件的方式。这些新方法—不断发展的、风险驱动的和协作的软件过程,第四代语言和应用程序生成器,商业成品(COTS)和复用驱动的软件方法,快速跟踪软件开发方法,软件过程成熟度的倡导—带来了提高软件质量和降低软件成本、风险和周期时间的重大收益。
然而,现有的一些软件成本模型虽然初步解决了这些问题的各个方面,但至今仍没有一个能很好地匹配这些新方法的软件成本和进度估算模型。这使机构很难使用这些新方法进行有效的项目计划、分析和控制。
正是基于这些因素,本书作者提出了构造性成本模型(Constructive Cost Model, COCOMO)的新版本,用于软件工作量、成本和进度估算。原始的COCOMO 81[Boehm 1981]以及后来的专用Ada COCOMO[Boehm and Royce 1989]比较好地匹配了它们所建模的一类软件项目:主要是由客户定制、按说明书构造的软件[Miyazaki and Mori 1985; Goudy 1987]。虽然Ada COCOMO增加了估算增量软件开发的成本和进度的能力,但在面对由螺旋或进化开发模型创建的软件或主要通过商业成品(COTS)应用组装能力开发的软件时,COCOMO 81成本估算遇到了越来越多的困难。
软件估算的实践状况
许多商业软件估算模型因为对用户增加了价值而通过了市场的考验。也有相当一些机构在软件项目计划、估算和控制方面做得不错。然而,大量的机构却做不好:1995年Standish Group研究发现,超过53%的软件项目在预算和进度两方面都超支和逾期50%以上[Standish 1995]。
对一些近来收集的软件失败实例进行研究,可获知这些逾期和超支的详细原因。表P1概述六个这样的软件项目情况,前三个来自[Flowers 1996],后三个来自[Glass 1998]。
模型冲突和MBASE
我们分析了表P1中的项目,发现它们的许多问题来自模型冲突(model clash)[Boehm-Port 1999b]。模型冲突源于定义和管理项目的基本模型间的不兼容性,包括产品模型(需求、体系结构、设计等)、过程模型(瀑布、螺旋、成熟度模型等)、属性模型(成本、进度、性能等)和成功模型[商业实例、干系人双赢、IKIWISI(I誰l know it when I see it)等]。
表P1的项目中大量的模型冲突导致了它们的失败。有几种模型冲突涉及到成本和进度属性模型。例如在London Ambulance项目中,顾问报告指出:如果能找到(事实上找不到)成品方案,那么最佳成本为2 250 000美元,而项目却将它误解为成本基线。有人给出1 500 000美元的低价,显然是基于非常不彻底的、从零开始构造的产品模型。
在USC软件工程中心(USC Center for Software Engineering, USC-CSE),我们正在研究一种命名为基于模型的(系统)体系结构和软件工程的方法(MBASE),以期为项目提供一组一致的且互相支持的产品、过程、属性和成功模型[Boehm-Port 1999a;也http://sunset.usc.edu/ research/MBASE]。它用干系人成功模型作为主要的项目驱动因子,用螺旋模型的干系人双赢变量为该系统确定一个兼容的产品、过程、属性和成功模型集。它也将软件工程与系统工程结合起来,为过渡到新的集成化能力成熟度模型(CMM I)提供强有力的框架。
MBASE和COCOMO II
我们对MBASE的研究涉及成功模型(双赢、期望管理);过程模型(双赢螺旋模型、锚点、需求协商);产品模型(领域模型、软件体系结构)和属性模型(基本的COCOMO II和它的扩展)。并行研究这些组件模型有助于加强它们的关系,使它们建立在软件实践的基础上。例如,我们的锚点过程研究始于定义一组公用生命周期里程碑的工作量,它是COCOMO II成本和进度估算的基础。与Rational公司合作时,我们把MBASE与Rational统一过程(RUP)的阶段和里程碑集成在一起,为COCOMO II提供了MBASE/RUP阶段和活动分布估算量(见附录A)。
还有,我们试图把MBASE应用到我们自己的项目中。这样,在确定COCOMO II范围时,我们利用了MBASE原则来识别干系人、收集他们使用软件估算模型的目标,并确定他们改进现有COCOMO 81性能的主要需求。因此,本书第1章从总结COCOMO II的用户目标开始,接着介绍一组根据对COCOMO 81所希望做的改进而得到的COCOMO II模型目标,最后介绍为达到这些目标而建立的一组COCOMO II开发和改进策略。
干系人的目标之一是避免把COCOMO II建立在单个过程模型基础上,比如COCOMO 81中所假定的瀑布模型。因而,我们为瀑布模型、MBASE/RUP和增量开发都设计了COCOMO II的解释程序。
本书各章的内容
第1章给出了COCOMO II总的脉络和框架,包括未来软件实践的模型,以及对未来主要软件实践可进行裁剪的三阶段模型的最终选择过程。第2章给出了COCOMO II量化、估算公式、成本驱动因子与比例因子定义和等级量表,以及在特殊情况下解释这些定义的指导原则。
第2章的最后一节给出了如何用COCOMO II对第1章所建立的一些目标做出快速的手工分析:进行投资决策、权衡与风险分析、针对项目实践裁剪模型。
第3章用两个代表性的例子:事务处理系统和航空雷达系统,说明如何用USC COCOMO II工具去完成更广泛的成本估算和比较分析。
第4章概述了COCOMO II贝叶斯校准过程及其结果,并为机构产生自己的校准模型提供了指导原则。
同时,新一代软件过程和产品正在改变机构开发软件的方式。这些新方法—不断发展的、风险驱动的和协作的软件过程,第四代语言和应用程序生成器,商业成品(COTS)和复用驱动的软件方法,快速跟踪软件开发方法,软件过程成熟度的倡导—带来了提高软件质量和降低软件成本、风险和周期时间的重大收益。
然而,现有的一些软件成本模型虽然初步解决了这些问题的各个方面,但至今仍没有一个能很好地匹配这些新方法的软件成本和进度估算模型。这使机构很难使用这些新方法进行有效的项目计划、分析和控制。
正是基于这些因素,本书作者提出了构造性成本模型(Constructive Cost Model, COCOMO)的新版本,用于软件工作量、成本和进度估算。原始的COCOMO 81[Boehm 1981]以及后来的专用Ada COCOMO[Boehm and Royce 1989]比较好地匹配了它们所建模的一类软件项目:主要是由客户定制、按说明书构造的软件[Miyazaki and Mori 1985; Goudy 1987]。虽然Ada COCOMO增加了估算增量软件开发的成本和进度的能力,但在面对由螺旋或进化开发模型创建的软件或主要通过商业成品(COTS)应用组装能力开发的软件时,COCOMO 81成本估算遇到了越来越多的困难。
软件估算的实践状况
许多商业软件估算模型因为对用户增加了价值而通过了市场的考验。也有相当一些机构在软件项目计划、估算和控制方面做得不错。然而,大量的机构却做不好:1995年Standish Group研究发现,超过53%的软件项目在预算和进度两方面都超支和逾期50%以上[Standish 1995]。
对一些近来收集的软件失败实例进行研究,可获知这些逾期和超支的详细原因。表P1概述六个这样的软件项目情况,前三个来自[Flowers 1996],后三个来自[Glass 1998]。
模型冲突和MBASE
我们分析了表P1中的项目,发现它们的许多问题来自模型冲突(model clash)[Boehm-Port 1999b]。模型冲突源于定义和管理项目的基本模型间的不兼容性,包括产品模型(需求、体系结构、设计等)、过程模型(瀑布、螺旋、成熟度模型等)、属性模型(成本、进度、性能等)和成功模型[商业实例、干系人双赢、IKIWISI(I誰l know it when I see it)等]。
表P1的项目中大量的模型冲突导致了它们的失败。有几种模型冲突涉及到成本和进度属性模型。例如在London Ambulance项目中,顾问报告指出:如果能找到(事实上找不到)成品方案,那么最佳成本为2 250 000美元,而项目却将它误解为成本基线。有人给出1 500 000美元的低价,显然是基于非常不彻底的、从零开始构造的产品模型。
在USC软件工程中心(USC Center for Software Engineering, USC-CSE),我们正在研究一种命名为基于模型的(系统)体系结构和软件工程的方法(MBASE),以期为项目提供一组一致的且互相支持的产品、过程、属性和成功模型[Boehm-Port 1999a;也http://sunset.usc.edu/ research/MBASE]。它用干系人成功模型作为主要的项目驱动因子,用螺旋模型的干系人双赢变量为该系统确定一个兼容的产品、过程、属性和成功模型集。它也将软件工程与系统工程结合起来,为过渡到新的集成化能力成熟度模型(CMM I)提供强有力的框架。
MBASE和COCOMO II
我们对MBASE的研究涉及成功模型(双赢、期望管理);过程模型(双赢螺旋模型、锚点、需求协商);产品模型(领域模型、软件体系结构)和属性模型(基本的COCOMO II和它的扩展)。并行研究这些组件模型有助于加强它们的关系,使它们建立在软件实践的基础上。例如,我们的锚点过程研究始于定义一组公用生命周期里程碑的工作量,它是COCOMO II成本和进度估算的基础。与Rational公司合作时,我们把MBASE与Rational统一过程(RUP)的阶段和里程碑集成在一起,为COCOMO II提供了MBASE/RUP阶段和活动分布估算量(见附录A)。
还有,我们试图把MBASE应用到我们自己的项目中。这样,在确定COCOMO II范围时,我们利用了MBASE原则来识别干系人、收集他们使用软件估算模型的目标,并确定他们改进现有COCOMO 81性能的主要需求。因此,本书第1章从总结COCOMO II的用户目标开始,接着介绍一组根据对COCOMO 81所希望做的改进而得到的COCOMO II模型目标,最后介绍为达到这些目标而建立的一组COCOMO II开发和改进策略。
干系人的目标之一是避免把COCOMO II建立在单个过程模型基础上,比如COCOMO 81中所假定的瀑布模型。因而,我们为瀑布模型、MBASE/RUP和增量开发都设计了COCOMO II的解释程序。
本书各章的内容
第1章给出了COCOMO II总的脉络和框架,包括未来软件实践的模型,以及对未来主要软件实践可进行裁剪的三阶段模型的最终选择过程。第2章给出了COCOMO II量化、估算公式、成本驱动因子与比例因子定义和等级量表,以及在特殊情况下解释这些定义的指导原则。
第2章的最后一节给出了如何用COCOMO II对第1章所建立的一些目标做出快速的手工分析:进行投资决策、权衡与风险分析、针对项目实践裁剪模型。
第3章用两个代表性的例子:事务处理系统和航空雷达系统,说明如何用USC COCOMO II工具去完成更广泛的成本估算和比较分析。
第4章概述了COCOMO II贝叶斯校准过程及其结果,并为机构产生自己的校准模型提供了指导原则。
序言回到顶部↑
我预计本书将在软件行业某一类人中非常畅销,但他们不会是编程能手、市场天才、技术专家或软件架构师,也不会是过程组成员、工具使用者、质量评估者或项目经理。它将在那些在大多数机构中都默默无闻的人群中最为流行:“专业”软件工程师—那些工作在幕后的人,他们关心的是如何在有利可图的商业环境下构造有用的产品。
COCOMO II是一个计划和执行软件项目的目标成本模型。它是管理软件项目或商业软件生产线的重要组成部分。成本模型提供了软件开发干系人之间交流商务决策的框架。COCOMO II支持合同协商、过程改进分析、工具购买、体系结构变更、组件开发或购买权衡,以及其他一些有可信估算基础的投资收益决策。本书阐述了如何使用COCOMO II进行这些分析以及所给出的结果有怎样的可信度。
在过去几年中,COCOMO进行了一些调整与改进,以适应在软件生命周期、技术、组件、工具、表示法及企业文化方面的明显变化。Boehm博士和USC软件工程中心已投入了四年多的时间,进行COCOMO的改进,以使其能更好地适应现代软件工程的发展趋势。本书正是这些努力的成果。COCOMO II包括若干实地测试的改进,以拓展其能力,并提高对现代软件开发方法估算的准确性。它是许多软件经济学专家在很多软件领域和机构实验室的实际应用中长期使用COCOMO的结果。
COCOMO II包括两个底层信息模型。第一个是用于描述软件项目的框架,包括过程模型、文化、干系人、方法、工具、开发团队以及软件产品的规模或复杂性。 第二个就是经验库,可以从历史案例估算出项目可能需要的相关资源(工作量与时间)。COCOMO II对COCOMO做了重要更新,以改进它对现代过程、方法、工具和技术的适用性。它也提供了更大、更恰当的现代案例数据库,并改进了模型的适应性,从而可以在更多的领域及其项目环境中进行优化。本书收集了这些工作的成果,文笔流畅,适合许多读者,如COCOMO专家、成本模型新手、COCOMO用户和COCOMO工具开发者阅读。本书通过详细的例子和富有哲理的评论给出了多个观点。
在过去的十多年中,盛行的浮躁之风已影响了软件行业。对各种过程改进、新方法和新技术存有偏见的介绍,是一个行业带有盲目性和不负责任的征兆。随着产品进入市场的时间越来越短,先简化开发以后加以完善的方法被采用得过于频繁。本书介绍的COCOMO II产品是人们急于进入市场思想的一个极好反例。COCOMO II基于成熟的数学、优秀的行业专业知识和广泛的现代项目经验,是一个严密的工程模型。作为USC会员,Rational软件公司公开支持并投资于COCOMO II的开发。软件成本建模,尤其是COCOMO II与现代迭代过程、体系结构先行的生命周期(architecture-first life cycles)和基于UML的分析与设计方法等的结合,已成为在软件开发项目中取得成功所必需的显著优势。
20年前,我有幸参加了UCLA计算机科学系首开的软件工程经济学研究生课程,由Barry W. Boehm执教。包括我在内的大多数学员,对如何成功提交软件产品的理解极其有限。我们多半儿也体会不到大多数软件开发项目的背景和决策主要是受商业因素而非技术因素的制约。这门课程对我的项目管理观点,甚至整个软件行业都有深远的影响。虽然原始COCOMO的大部分材料仍然适合于今天的软件管理学科,但这本新书包括了根据过去20年所得经验进行的重要更新。软件项目的决策比过去任何时候都更受商业因素的影响,COCOMO II模型为现代软件项目管理制定了一个新的标准,为软件行业中下一代的过程、方法和工具改进的评价提供了一个经济学的框架。
Walker Royce
Rational软件公司副总裁
COCOMO II是一个计划和执行软件项目的目标成本模型。它是管理软件项目或商业软件生产线的重要组成部分。成本模型提供了软件开发干系人之间交流商务决策的框架。COCOMO II支持合同协商、过程改进分析、工具购买、体系结构变更、组件开发或购买权衡,以及其他一些有可信估算基础的投资收益决策。本书阐述了如何使用COCOMO II进行这些分析以及所给出的结果有怎样的可信度。
在过去几年中,COCOMO进行了一些调整与改进,以适应在软件生命周期、技术、组件、工具、表示法及企业文化方面的明显变化。Boehm博士和USC软件工程中心已投入了四年多的时间,进行COCOMO的改进,以使其能更好地适应现代软件工程的发展趋势。本书正是这些努力的成果。COCOMO II包括若干实地测试的改进,以拓展其能力,并提高对现代软件开发方法估算的准确性。它是许多软件经济学专家在很多软件领域和机构实验室的实际应用中长期使用COCOMO的结果。
COCOMO II包括两个底层信息模型。第一个是用于描述软件项目的框架,包括过程模型、文化、干系人、方法、工具、开发团队以及软件产品的规模或复杂性。 第二个就是经验库,可以从历史案例估算出项目可能需要的相关资源(工作量与时间)。COCOMO II对COCOMO做了重要更新,以改进它对现代过程、方法、工具和技术的适用性。它也提供了更大、更恰当的现代案例数据库,并改进了模型的适应性,从而可以在更多的领域及其项目环境中进行优化。本书收集了这些工作的成果,文笔流畅,适合许多读者,如COCOMO专家、成本模型新手、COCOMO用户和COCOMO工具开发者阅读。本书通过详细的例子和富有哲理的评论给出了多个观点。
在过去的十多年中,盛行的浮躁之风已影响了软件行业。对各种过程改进、新方法和新技术存有偏见的介绍,是一个行业带有盲目性和不负责任的征兆。随着产品进入市场的时间越来越短,先简化开发以后加以完善的方法被采用得过于频繁。本书介绍的COCOMO II产品是人们急于进入市场思想的一个极好反例。COCOMO II基于成熟的数学、优秀的行业专业知识和广泛的现代项目经验,是一个严密的工程模型。作为USC会员,Rational软件公司公开支持并投资于COCOMO II的开发。软件成本建模,尤其是COCOMO II与现代迭代过程、体系结构先行的生命周期(architecture-first life cycles)和基于UML的分析与设计方法等的结合,已成为在软件开发项目中取得成功所必需的显著优势。
20年前,我有幸参加了UCLA计算机科学系首开的软件工程经济学研究生课程,由Barry W. Boehm执教。包括我在内的大多数学员,对如何成功提交软件产品的理解极其有限。我们多半儿也体会不到大多数软件开发项目的背景和决策主要是受商业因素而非技术因素的制约。这门课程对我的项目管理观点,甚至整个软件行业都有深远的影响。虽然原始COCOMO的大部分材料仍然适合于今天的软件管理学科,但这本新书包括了根据过去20年所得经验进行的重要更新。软件项目的决策比过去任何时候都更受商业因素的影响,COCOMO II模型为现代软件项目管理制定了一个新的标准,为软件行业中下一代的过程、方法和工具改进的评价提供了一个经济学的框架。
Walker Royce
Rational软件公司副总裁








点击看大图






加载中...

