|
知识路径: > 嵌入式系统的项目开发与维护知识 > 系统开发过程及其项目管理 > 系统开发的项目管理基础知识及其常用管理工具 > 成本管理知识及工具 >
|
相关知识点:4个
|
|
|
|
系统开发成本估算主要指系统开发过程中所花费的工作量及相应的代价。为了使开发项目能够在规定的时间内完成,而且不超过预算,成本预算和管理控制是关键。项目开发成本的估算主要靠分解和类推的手段进行。分解技术是将项目分解成一系列较小的、容易理解的问题进行估算。常用的分解技术有:基于问题的估算、基于代码行(LOC)估算、基于功能点(FP)的估算、基于过程的估算、基于用例的估算。选择或结合使用分解技术,进行成本估算。基本的成本估算方法有如下几种。
|
|
|
(1)自顶向下估算方法。估算人员参照以前完成的项目所耗费的总成本(或总工作量)来推算将要开发的系统的总成本(或总工作量),然后把它们按阶段、步骤和工作单元进行分配。
|
|
|
自顶向下估算方法的主要优点是对系统级工作的重视,所以估算中不会遗漏集成、配置管理等系统级事务的成本估算,且估算工作量小、速度快。其缺点是不清楚低级别上的技术性困难,而这些困难将会使成本上升。
|
|
|
(2)自底向上估算方法。自底向上估算方法是将待开发的系统细分,分别估算每一个子任务所需要的开发工作量,然后将它们加起来,得到系统的总开发量。这种方法的优点是对每一部分的估算工作交给负责该部分工作的人来做,所以估算较为准确。其缺点是缺少对各项子任务之间相互联系所需要工作量和与开发有关的系统级工作量的估算,因此预算往往偏低。
|
|
|
(3)差别估算方法。差别估算方法是将开发项目与一个或多个已完成的类似项目进行比较,找出与某个相类似项目的若干不同之处,并估算每个不同之处对成本的影响,导出开发项目的总成本。该方法的优点是可以提高估算的准确度,缺点是不容易明确“差别”的界限。
|
|
|
除以上方法外,还有许多方法,大致可分为三类:专家估算法、类推估算法和算式估算法。
|
|
|
(1)专家估算法。该方法依靠一个或多个专家对要求的项目做出估算,其精确性取决于专家对估算项目的定性参数的了解和他们的经验。
|
|
|
(2)类推估算法。在自顶向下的方法中,它是将估算项目的总体参数与类似项目进行直接比较得到结果;在自底向上方法中,类推是在两个具有相似条件的工作单元之间进行。
|
|
|
(3)算式估算法。专家估算法和类推估算法的缺点在于它们依靠带有一定盲目性和主观性的猜测对项目进行估算。算式估算法则是企图避免主观因素的影响,用于估算的方法有两种基本类型:由理论导出和由经验导出。
|
|
|
典型的成本估算模型主要有动态多变量普特南(Putnam)模型和层次结构的结构性成本模型(Constructive Cost Model,COCOMO)的升级模型COCOMOII等。普特南模型基于软件方程,它假设在软件开发的整个生命周期中有特定的工作量分布。COCOMOII模型层次结构中有三种不同的估算选择:对象点、功能点和源代码行。
|
|
|