Putnam 资源分配模型17 Mar 2025 | 阅读 2 分钟 Lawrence Putnam 模型描述了完成指定大小的软件项目所需的时间和精力。 Putnam 使用所谓的 Norden/Rayleigh 曲线来估计项目工作量、进度和缺陷率,如图所示。 ![]() Putnam 发现软件人员配置概况遵循众所周知的瑞利分布。 Putnam 利用他对生产力水平的观察来推导出软件方程 ![]() 该表达式的各个术语如下所示 K 是在产品开发中花费的总精力(以 PM 为单位),L 是产品的估计值,以 KLOC 为单位。 td 与系统和集成测试的时间相关。因此,td 可以相对地认为是开发产品所需的时间。 Ck 是技术常数的状态,反映了阻碍程序开发的因素。 Ck 的典型值为 2,适用于较差的开发环境 Ck = 8 适用于良好的软件开发环境 Ck = 11 适用于优秀的环境(除了遵循软件工程原则外,还使用了自动化工具和技术)。 特定任务的 Ck 的确切值可以从开发它的组织的 历史数据中计算出来。 Putnam 提出,项目上的最佳员工应该遵循瑞利曲线。 在计划的开始阶段只需要少量的工程师来执行计划和规范任务。 随着项目的进展,需要更多详细的工作,工程师的数量达到峰值。 在实施和单元测试之后,项目人员的数量下降。 进度变化对成本的影响Putnam 推导了以下表达式 ![]() 其中,K 是产品开发中花费的总精力(以 PM 为单位) L 是以 KLOC 为单位的产品大小 td 对应于系统和集成测试的时间 Ck 是技术常数的状态,反映了阻碍程序进度的约束 现在,通过使用上述表达式,可以得到: ![]() 对于相同的产品大小,C = L3 / Ck3 是一个常数。 ![]() (由于项目开发工作量与项目开发成本成正比) 从上面的表达式中,很容易观察到,当项目的进度被压缩时,所需的开发工作量以及项目开发成本会随着压缩程度的四次方成比例增加。 这意味着交付进度的相对较小的压缩会导致人力和开发成本的大幅增加。 例如,如果估计的开发时间为 1 年,那么要在 6 个月内开发产品,开发产品所需的工作量(以及项目成本)会增加 16 倍。 下一主题风险管理 |
我们请求您订阅我们的新闻通讯以获取最新更新。