软件工程 |应用程序组成估计模型(COCOMO II | 第 1 阶段)
应用程序组合估算模型允许人们在 COCOMO II 模型的第一阶段估算成本和工作量。
在此模型中,首先使用Object Points估计大小。目标点很容易识别和计算。对象点将屏幕、报告、第三代 (3GL) 模块定义为对象。
对象点估计是一种新的尺寸估计技术,但它非常适合应用程序组合领域。
工作量估计:
采取以下步骤来估计开发项目的工作量
步骤 1:访问对象计数
估计构成该应用程序的屏幕、报告和 3GL 组件的数量。
步骤 2:对每个对象的复杂程度进行分类
我们必须根据每个对象实例的特征值将其分类为简单、中等和困难的复杂程度。
根据给定的表格分配复杂度级别
步骤 3:为每个对象分配复杂度权重
权重用于三种对象类型,即屏幕、报告和 3GL 组件。
使用下表根据对象的复杂程度分配复杂度权重
第 4 步:确定对象点
将所有加权对象实例相加得到一个数字,这称为对象点数。
Object Point
= Sigma (number of object instances)
* (Complexity weight of each object instance)
步骤 5:计算新对象点 (NOP)
我们必须估计在项目中要实现的 %reuse。
取决于 %reuse
NOP = [(object points) * (100 - %reuse)]/100
NOP 是需要开发的对象点,与对象点计数不同,因为项目中可能会重用某些对象实例。
第 6 步:计算生产率 (PROD)
生产率是根据提供的有关开发人员的经验和能力的信息计算得出的。
为了计算它,我们使用下表
第 7 步:计算估计的工作量
开发项目的努力可以计算为
Effort = NOP/PROD
工作量以人月来衡量。
例子:
考虑一个数据库应用程序项目
- 该应用程序有四个屏幕,每个屏幕有四个视图,三个服务器和四个客户端有七个数据表。
- 应用程序可以从两个服务器和三个客户端的七个数据表中生成两个六个部分的报告。
10% 重用对象点。
开发人员在类似环境中的经验和能力较低。计算对象点数、新对象点和开发此类项目的努力。
第1步:
屏幕数 = 4
记录数 = 2
第2步:
对于屏幕,
观看次数 = 4
数据表数 = 7
服务器数量 = 3
客户数量 = 4
通过使用上面给出的信息和表格(对于屏幕),
每个屏幕的复杂程度 = 中等
对于报告,
部分数 = 6
数据表数 = 7
服务器数量 = 2
客户数量 = 3
通过使用上述信息和表格(用于报告),
每个报告的复杂程度 = 困难
第 3 步:
通过使用复杂度权重表,我们可以根据每个对象实例的复杂度级别为其分配复杂度权重。
每个屏幕的复杂度权重 = 2
每个报告的复杂性权重 = 8
第四步:
Object point count
= sigma (Number of object instances) * (its Complexity weight)
= 4 * 2 + 2 * 8 = 24
第五步:
%reuse of object points = 10% (given)
NOP = [object points * (100 - %reuse)]/100
= [24 * (100 -10)]/100 = 21.6
第六步:
开发人员的经验和能力低(给定)
使用有关开发人员和生产率表的信息
给定项目的生产率 (PROD) = 7
第七步:
Effort
= NOP/PROD
= 21.6/7
= 3.086 person-month
因此,开发给定项目的工作量 = 3.086 人月。