【IT168 技术文章】
原理
Function Point Estimation 功能点估算是一种用来估算项目大小的技术。
功能点是对软件功能和规模的间接定量测量,它基于客观的外部应用接口和主观的内部应用复杂度以及总体的性能特征。
功能点法和专家法估算最大的不同点在于对估算规模的细化的定量分析上面.我们在用专家法估算的时候往往会直接去估算工作量,或在规模的估算中掺杂了生产率的数据,导致估算数据出现问题.专家法估算虽然有时候也很准确,但不能提升为组织级可以参考和借鉴的同样规则.其实专家法的估算要做准确也是遵循了功能点法估算的思路,在考虑一个软件功能究竟涉及到哪些操作,涉及到多少数据文件的存在,每个操作需要访问哪些数据文件等相关问题.只是这些想法停留在专家头脑里面而没有量化出来.
我们的预测,分析和决策能力要提升,就必须对我们的经验进行模型化和定量分析.功能点法正好就起到了这个作用.其实功能点发也有不完善的地方,这可以根据我们项目实际的使用情况去不断的改进.
功能点发进行估算的时候具体过程是:
1.对估算功能单元的类型进行识别
2.计算每种类型的复杂度.
3.计算总体的调整前的功能点数
4.根据调整因子对功能点数进行调整
功能点估算中有5种信息域需要进行描述:其中事务类的有EI,EO和EQ,数据存储类有ILF和EIF.
外部输入(EI):通过界面等的输入,插入更新等操作都是典型外部输入
外部输出(EO):仅仅输出,入导出,报表,打印等输出
外部查询(EQ):先要输入数据,在根据输入数据计算输出,如查询
内部逻辑文件(ILF):可以理解为业务对象,可能对应多个数据表
外部接口文件(EIF):其它应用提供的接口数据