📅  最后修改于: 2021-01-09 15:00:41             🧑  作者: Mango
对于任何新软件项目,有必要知道开发成本和开发时间。在开始开发之前需要这些估计,但是如何完成呢?已经开发了几种估计程序,它们具有以下共同的属性。
模型可以是静态的也可以是动态的。在静态模型中,单个变量被用作计算成本和时间的关键要素。在动态模型中,所有变量都是相互依赖的,并且没有基本变量。
静态单变量模型:当模型利用单变量计算所需值(例如成本,时间,工作量等)时,称为单变量模型。最常见的等式是:
C = aL b
其中C =成本
L =大小
a和b是常数
软件工程实验室建立了一个称为SEL模型的模型,用于估计其软件产量。此模型是静态单变量模型的示例。
E = 1.4升0.93
DOC = 30.4升0.90
D = 4.6升0.26
其中E =努力(每人每月)
DOC =文档(页数)
D =持续时间(D,以月为单位)
L =每个代码的行数
静态,多变量模型:这些模型基于方法(1),它们取决于描述软件开发环境各个方面的几个变量。在某些模型中,需要使用几个变量来描述软件开发过程,并且通过选择方程式将这些变量组合起来,可以估算出时间和成本。这些模型称为多变量模型。
WALSTON和FELIX在IBM开发模型,提供了以下方程式,这些方程式给出了源代码和工作量之间的关系:
E = 5.2升0.91
D = 4.1升0.36
生产率指数使用29个变量,这些变量与生产率高度相关,如下所示:
其中W i是第i个变量的权重因子,X i = {-1,0,+ 1} ,根据变量的减少,估算器给X i值-1、0或+1之一,这没有影响。或提高生产率。
示例:在预计需要8人年的工作量的软件开发中,将Walston-Felix模型与SEL模型进行比较。
解:
涉及的人力= 8PY = 96人·月
(a)通过反转等式可得出源代码的行数:
然后
L(SEL)=(96 / 1.4)1⁄0.93 = 94264 LOC
5.2)1⁄0.91="24632" l(sel)="(96" loc<="" p="">
(b)可以通过公式计算以月为单位的持续时间
D(SEL)= 4.6(长)0.26
= 4.6(94.264)0.26 = 15个月
D(WF)= 4.1长0.36
= 4.1(24.632)0.36 = 13个月
(c)生产率是每人/月(年)产生的代码行
(d)平均人员配置是该项目每月所需的平均人数
>