【原】估算ILF和EIF的示例

软件规模的功能点估计方法中,估算数据功能(即ILF和EIF)的步骤一般如下:
识别数据功能。
从经确认的用户需求中识别出引用和维护的数据组或控制信息。一般的数据功能识别规则如下:(1) 识别功能点规模计数范围内所有逻辑相关且用户可识别的数据或控制信息。(2) 排除不被任何软件维护的数据。(3) 分组实体依赖的相关数据。(4) 排除代码数据。(5) 排除不包含用户要求的属性的数据。(6) 去掉包含非用户要求的附加属性的关联数据。
确定ILF和EIF。
根据数据组是被度量的软件维护还是引用,将数据组分类为ILF或EIF。
识别数据功能的数据元素类型(DET)。
DET的一般识别规则如下:(1) 把每一个通过基本过程(或动作)在数据功能中维护或者从数据功能中提取的、用户可识别的、非重复属性当作一个DET。(2) 当两个或多个软件维护或引用相同的数据功能,只计算由被度量软件所使用的那些DET。(3) 把每个用来建立和其他数据功能之间关系的属性当作一个DET。(4) 考察相关属性来确定它们是否组成一个DET或者算作多个DET。
识别数据功能的记录元素类型(RET),
数据功能的RET一般识别规则如下:(1) 把每个数据功能当作一个RET。(2) 把数据功能中包含一个以上DET的每个逻辑DET子集当作一个RET。逻辑DET子集有如下情况:包含非键值属性的关联实体;实体子类型;非强制一对一关系的属性实体。
确定数据功能的复杂性。
数据功能的复杂性由DET和RET的数目决定。当确定了DET和RET的数目后,可由下表来确定数据功能的复杂性:
RET数\DET数1 ~ 1920 ~ 50>501低低平均2~5低平均高>5平均高高确定数据功能的规模。
最后,使用下面的数据功能复杂性转换表来确定ILF和EIF的功能点,二者之和即为所估算的软件的数据功能的规模。
类型\复杂性低平均高ILF71015EIF5710下面以某公司图书管理系统的数据功能估算为例进行说明:
该图书管理系统有如下需求:(1)公司员工可以注册成用户,可以查看或修改自己的信息。(2)用户注册流程为:用户输入员工编号,系统根据员工编号在人力资源管理系统中查询有没有此员工。若有,则会在注册界面上显示该员工的姓名、性别和所属部门;若无,则会提示用户“该员工编号不存在”。员工编号正确时,用户需要再填写密码设置、重新输入密码、学历、阅读爱好,然后单击“确定”按钮,注册成功。(3)“员工信息”在人力资源管理系统中包含的属性有员工编号、姓名、性别、出生年月、所属部门、住址和入职时间。
第一步:识别数据功能。
从需求看,有两组信息,即图书管理系统维护的“用户信息”和人力资源管理系统维护的“员工信息”是计数范围内逻辑相关的、用户可识别的数据组,需求中无数据功能识别规则中其他数据组。所以识别出来的数据功能只有“用户信息”和“员工信息”。
第二步:分类数据功能。
用户信息由图书管理系统维护,是一个ILF,员工信息被图书管理系统引用,但由人力资源管理系统维护,是图书管理系统的一个EIF。
第三步:识别数据功能的DET。
用户信息包含员工编号、姓名、性别、所属部门、密码、学历、阅读爱好等7个属性,这些属性都是由“用户注册”这个基本过程添加的,并且这些属性都是用户可识别的,非重复的,所以作为ILF的用户信息的DET数目为7个;而作为EIF的“员工信息”,图书管理系统只引用员工编号、姓名、性别、所属部门这4个属性,所以它的DET数目为4个。
第四步:识别数据功能的RET。
依据RET识别规则,可以识别出两个数据功能都只有一个RET。
第五步:确定数据功能复杂性。
根据数据功能的复杂性确定表,ILF用户信息有1个RET7个DET,复杂性为低;EIF员工信息有1个RET4个DET,复杂性也为低。
第六步:确定数据功能的功能规模。
根据数据功能的复杂性/功能转换表,ILF用户信息复杂性为低,对应功能点数(FP)为7;EIF员工信息复杂性也为低,对应功能点数(FP)为5。二者合计,该图书管理系统的数据功能规模为12FP.
这正是:
数据功能去估算,六个步骤就做完
只要抓住其要点,估算也是很简单
参考书目:软件项目功能点度量方法与应用,作者:曹济 温丽,出版社:清华大学出版社