📜  软件工程| Putnam资源分配模型

📅  最后修改于: 2021-01-09 15:02:46             🧑  作者: Mango

普特南资源分配模型

Lawrence Putnam模型描述了完成指定大小的软件项目所需的时间和精力。 Putnam利用所谓的Norden / Rayleigh曲线来估算项目工作量,进度和缺陷率,如图所示:

Putnam注意到,软件人员配置文件遵循众所周知的Rayleigh分布。普特南(Putnam)使用他对生产率水平的观察得出软件方程式:

此表达式的各个术语如下:

K是产品开发的总投入(以PM计),L是KLOC中的产品估算值。

d d与系统和集成测试的时间相关。因此,可以将t d相对地视为开发产品所需的时间。

C k是技术状态不变的,反映了阻碍程序开发的要求。

对于较差的开发环境,C k = 2的典型值

C k = 8为良好的软件开发环境

C k = 11,适用于出色的环境(除遵循以下软件工程原理外,还使用自动化工具和技术)。

可以从开发该任务的组织的历史数据计算出特定任务的C k的确切值。

普特南(Putnam)提出,项目的最佳开发人员应遵循瑞利曲线。在计划开始时只需要少量工程师即可执行计划和规格说明任务。随着项目的进展和更详细的工作是必要的,工程师的数量达到了顶峰。在实施和单元测试之后,项目人员的数量减少了。

计划变更对成本的影响

Putnam得出以下表达式:

其中, K是产品开发中花费的总精力(以PM为单位)

L是KLOC中的产品尺寸

t d对应于系统和集成测试的时间

C k是技术状态的常数,反映了阻碍程序进度的约束

现在,通过使用上面的表达式,可以得出,

对于相同的产品尺寸,C = L 3 / C k 3是一个常数。

(由于项目开发工作量与项目开发成本成正比)

从以上表达式可以很容易地观察到,当压缩一个项目的进度表时,所需的开发工作以及项目开发成本与压缩程度的四次方成正比地增加。这意味着交货时间表的相对较小的压缩可能导致大量的人工和开发成本损失。

例如,如果估计的开发时间为1年,那么在6个月内开发产品,则开发产品所需的总精力(以及项目成本)将增加16倍。