前言
大家好,这节我们学习软件项目管理---用例点估算法。用例点估算是基于需求用户视图的估算方法,通过需求用户视图中的角色,用例,以及相应的复杂度来确定项目的用例点。
用例点估算流程
通过用例视图确定用例和角色以及相应的复杂级别。
然后确定用例权值和角色权值,相加后获得未调整的用例点,再计算技术复杂度因子,通过这些因子来调整未调整的用例点获得用例点数,最后通过项目生产力将用例点换算为工作量。
因此用例点估算方法的基本步骤如下:
- 计算未调整的角色权值UAW;
- 计算未调整的用例权值UUCW ;
- 计算未调整的用例点UUCP;
- 计算技术和环境因子TEF;
- 计算调整的用例点UCP ;
- 计算工作量( man-hours) 。
(1).计算未调整的角色权值UAW
从公式看到UAW等于角色数乘以相应的权重之和,公式中的C是复杂度级别,aCardinality是相应级别的角色数量,aWeight是这个级别角色对应的权重,权重是根据复杂度级别确定的。
复杂度级别最低的权重值是1,相当于角色通过API与系统交互。
复杂度级别中等的权重值是2,相当于角色通过协议与系统交互。
复杂度级别最高的权重值是3,相当于角色通过GUI与系统交互。
(2).计算未调整的用例权值UUCW
从公式看到UUCW等于用例数乘以相应的权重之和,公式中的C就是复杂度级别,aCardinality是相应级别的用例数量,uWeight是这个级别用例对应的权重。
根据事务或者场景个数分别设为3个不同复杂度级别,而每个级别又各自对应着相应的权重值。
例如事务/场景 > 7,对应的复杂度级别权重值为15。
(3).计算未调整的用例点UUCP
UUCP等于未调整的角色权值+未调整的用例权值。
例如某项目通过用例视图确定11个角色,其中2个是简单级别,1 * 2= 2 。4个是中等级别,2 * 4= 8 。5个是复杂级别,5 * 3=15 。所以UAW=25 。
同理,通过用例视图确定用例数为10,其中5个是简单级别,2个是中等级别,3个是复杂级别。UUCW=85 。
这样未调整的用例点UUCP=110 。
(4).计算技术因子TCF
技术因子的计算是从13个角度来评价项目的技术复杂性,例如分布式角度,性能角度等等...那么这个表展示了这些因子的权值:
公式TCF等于 技术因子权值乘以相应的影响等级之和,再乘以0.01,最后加上0.6。
那么TCF_Weight是技术复杂度因子的权值,Value是该技术复杂度因子影响等级,在0-5之间取值。
0 表示技术因子与本项目无关;3 表示技术因子对本项目的影响一般;5 表示该技术因子对本项目有很强的影响。
例如针对刚才项目,通过确定各个因子的影响等级,计算出TCF=1.02 。
(4).计算环境因子ECF
环境因子的计算是从8个角度来评价项目的环境,权重。例如UML精通程度,系统应用经验等等...那么这个表给出了因子的权值:
ECF公式中的ECF_Weight是8个因子的权值,Value表示该因子的影响等级。0 表示项目组成员都不具备该因素;3 表示环境因子对本项目的影响程度为中;5 表示本项目组成员都具有该因素。
例如刚才项目,通过各个环境因子等级,计算ECF=0.785 。
(5)、计算调整的用例点UCP
UCP=UUCP * TCF * ECF
针对刚才项目计算出UCP=88 。既项目的规模为88个用例点。
(6)、计算最后工作量
如果已知生产力是每个用例点是20个工时,则可以确定工时工作量为UCP * PF=88 * 20=1760h=220人天
总结
总之 用例点估算方法是基于用户用例视图,确定角色和用例以及对应的复杂度级别,从而估算出用例点数。
到这里,第六章 第三节 用例点估算法就讲解完毕了!下一节介绍类比估算法~
如果您觉得这篇文章有帮助到您的的话不妨点赞支持一下哟~~