excel之CMMI-FP功能点估算辅助生成DET、RET、FTR、FP

excel之CMMI-FP功能点估算辅助生成DET、RET、FP

功能点估算:功能点估算本身是对一个项目功能分解后按照一定规则将所有功能点量化得到一个项目预算的方法。

场景:功能点分解后,详细功能点几千条,根据功能点去详细计算FP会很麻烦,所以在excel中使用公式辅助

FP:这里计算的FP是指未调整的FP,也就是未计算调整因子

FP计算前题:

  需要首先将功能点类型(EI/EO/EQ/ILF/EIF)、复杂度(低/中/高)手动遍好,拷贝到L列和M列

FP计算规则:

  

       

FP计算公式:

=IF(L:L="EI",IF(M:M="",3,IF(M:M="",6,4)),
    IF(L:L="EO",IF(M:M="",4,IF(M:M="",7,5)),
    IF(L:L="EQ",IF(M:M="",3,IF(M:M="",6,4)),
    IF(L:L="ILF",IF(M:M="",7,IF(M:M="",15,10)),
    IF(L:L="EIF",IF(M:M="",5,IF(M:M="",10,7)))

其中还需要编写DET、RET、FTR的值

计算规则:

 

 所以DET、RET、FTR将利用随机数生成,由于规则复杂,并未精确测试

 计算公式:

DET:

=IF(L:L="EI",IF(M:M="",INT(RAND()*10)+5,IF(M:M="",INT(RAND()*30)+15,INT(RAND()*20)+15)),
            IF(OR(L:L="EO",L:L="EQ"),IF(M:M="",INT(RAND()*5),IF(M:M="",INT(RAND()*20)+20,INT(RAND()*20)+6)),
                    IF(OR(L:L="ILF",L:L="EIF"),IF(M:M="",INT(RAND()*19),IF(M:M="",INT(RAND()*30)+20,INT(RAND()*30)+25))
                        )
                )
    )

RET/FTR:

=IF(L:L="EI",IF(M:M="",INT(RAND()+1),IF(M:M="",INT(RAND()*2)+2,2)),
        IF(OR(L:L="EO",L:L="EQ"),IF(M:M="",INT(RAND()+1),IF(M:M="",INT(RAND()*2)+4,INT(RAND())+2)),
            IF(OR(L:L="ILF",L:L="EIF"),IF(M:M="",1,IF(M:M="",INT(RAND()*4)+6,INT(RAND()*5)+2))
            )
        )
    )

钻研不易,转载请注明出处......

原文地址:https://www.cnblogs.com/s313139232/p/15078357.html