bsp;模型和详细COCOMO 模型。
(1)基本COCOMO 模型。它是静态、单变量模型, 不考虑任何成本驱动, 仅以规模为基准进行估算只适于粗略迅速估算。
(2)中间COCOMO 模型。它是用15 个成本驱动改进基本模型, 这是对产品、硬件、工作人员、项目的特性等因素的主观评估。成本驱动的影响定为项目级的,在考虑任何进度限制时进一步调整工作量。
(3)详细COCOMO 模型。这是三种模型中最精确的模型。它是基于不同的成本驱动对项目的分段有不同的影响, 是用于考虑成本驱动的阶段性影响时进一步改进估算, 这时的计算细化到子系统/模块。它假定层次有三级:系统含有子系统, 子系统含有模块。
在COCOMO模型中,首先需要确定的是待开发软件的KLOC(千行代码),因此COCOMO模型要进行准确的成本估算需要等到详细设计阶段结束后,因为只有详细设计完成后,才能根据详细设计的结果对每个模块和类的代码数量根据代码功能的复杂程度进行较准确的估算。
程序结构分解和工作结构分解
结构化分析和设计遵从自顶向下,逐层分解的设计原则。设计师在把握的大的框架之后,在此基础上进行逐步细化,最后才能完成一个复杂系统的设计工作。
在结构化设计方法中,先根据用户的需求规格说明书,确定系统的边界,绘制顶层数据流图,然后对顶层图中的加工进行细化,一层一层的细化下去,一直到得到系统的所有基本功能。
面向对象的设计虽然与结构化设计有了很大的区别,但是对对象的设计过程同样是一个细化的过程。在确定了对象后,需将其抽象成类,并要对类的属性,方法进行设计,这也是一个分解的过程。
程序结构分解是软件实现上的分解,在软件项目中,还需要对整个软件项目划分若干任务,并将这些任务分配给项目组中的所有成员。任务分解及分配的好坏也对项目的进度和成本有着很大的影响。
项目的工作结构分解即WBS是先把项目中实际需要完成的事项尽量分解成更具体的工作。具体做法是按照树形结构先把整个项目分解为大的单元,再把各个大的单元分解为个小的单元。
需完成事项的细分之后,把各个单元中需要做的工作分配在树形结构的最下层。各个单元中所需要做的一系列的工作被称为工作包。在WBS的各个工作包里配置工作人员之后,项目实行的结构图就完成了。
工作结构分解是进行项目成本计算的基础,不同的工作结构分解将得到不同的项目成本,如果工作分配不恰当,如将简单任务分配给程序开发高手,而将复杂任务分配给新手,将会造成工作效率低下,并增加项目的成本。真实的软件项目成本不仅是软件的复杂度,并且与本项目的管理和人员能力有着直接的关系。
软件项目成本计算中存在的问题
1、 套用现成估算模型,误差太大。
每个软件企业的情况都不同,有着不同的管理模式,不同的工作人员,不同的环境和背景,因此如果简单的进行估算模型的套用,使用别人的计算系数的话,得到的将是别人企业的成本,而不是自己的成本。这样,当项目完成后,成本自然与估算数据相差很大。
不管是功能点模型还是COCOMO模型都是需要本企业的计算系数,如果提供不了正确的计算系数,则这两个模型都无法正确使用,因此每个软件企业都要对估算模型进行一定的适应性调整,以适应自己企业的情况。
2、 缺少成本管理体系
很多软件企业都将成本估算用于项目投标使用,而没有意识到需要为企业建立一个成本管理体系。如果不对软件的成本进行有效的管理,即使估算得很准确,最后项目结束后,成本可能大幅度的超过估算。这
项目经理胜任力免费测评PMQ上线啦!快来测测你排多少名吧~
http://www.leadge.com/pmqhd/index.html