FPA笔记五 计算ILF/EIF功能点

本篇主要介绍在功能点分析法 FPA 中,如何计算一个 ILF/EIF 都有多少个功能点。其中找到 ILF/EIF 中包含多少个 DET RET 是关键。整个计算的步骤比较简单,可分为四小步。
1.         统计 ILF/EIF 中的数据元素类型 DET
2.         统计 ILF/EIF 中的记录元素类型 RET
3.         参照 DET/RET ――复杂度对照表,确定该 ILF/EIF 的复杂度。
4.         参照复杂度――功能点对照表,确定该 ILF/EIF 的功能点数。
虽然美其名曰“计算”功能点,其实英文是“ Count ”,并没有从 DET/RET 到功能点数的数学公式。 IFPUG 根据大量的项目统计数据,直接给出了 DET/RET ――复杂度――功能点数的对照表。我们只需按图索骥即可。
计算 ILF/EIF 的功能点数,应当在列出所有的 ILF/EIF 后进行。本系列《FPA笔记三 数据功能的识别》介绍了如何是识别 ILF/EIF

1.           数据元素类型DET

IFPUG CPM DET 的定义是: A data element type is a unique user recognizable, non-repeated field 。请注意,它是数据元素类型( Data Element Type ),也就是说同一类型的数据元素只能记为一个 DET 。具体的计数规则有三条。
l  每一个满足下列所有条件的字段都要记为一个 DET.
n  用户可识别的。
n  不重复的。
n  被某个处理元维护或获取的。
l  如果两个系统维护或引用了同一个 ILF/EIF ,每个系统只计自己维护或引用的 DET
l  如果用户要求用一个字段来建立与其他 ILF/EIF 的关系,该字段要记为一个 DET
 
不重复的数据元素类型这点很重要。比如一个员工信息的逻辑文件,既有员工自己的工号,也有员工主管的工号。这两个工号的类型相同,只能记为一个 DET 。但它们可能属于不同的 RET
再比如,用户要求随同订单列出 10 条历史修改记录,这 10 条记录也只能记为一个 DET
用户提供的逻辑文件,有可能包含很多在目标系统中不需要的信息。表述这些信息的数据元素,不会被系统内任何一个处理元维护和获取,所以不能统计在 DET 内。
 

2.           记录元素类型RET

IFPUG CPM 定义: A record element type (RET) is a user recognizable subgroup of data elements within an ILF or EIF 。就像内容多的文章需要分章节一样,很多 ILF/EIF 需要将其数据分成好几组。每一个包含若干个 DET 的组就是一个 RET 。表现在 GUI 上,每一个 RET 通常会明显的与其他 RET 区分开。比如
l  Frame 等框在一起的数据通常是一个 RET 。一组单选钮( Radio Button )不算,呵呵。
l  包含多步操作的向导中的,每一步通常展现一个 RET
l  包含多个 TAB 页面的界面,每个 TAB 页面至少是一个 RET
显然,这里的记录,与数据库和报表里的记录意义完全不同。它指的是逻辑文件里的数据元素块。我更愿意叫它“ Data Element Block ”。 RET 分为两种:可选的和必须的。
可选的 RET 是在添加或创建逻辑文件过程中,用户可用可不用的 RET 。必须的 RET 用户至少要用一次。其实从计数角度看,可选 RET 和必须 RET 没有区别。不必在此费神。
RET 的计数规则有两条:
l  ILF/EIF 中每一组可选的或必须的数据元素,记为一个 RET
l  如果 ILF/EIF 不分组,就把整个 ILF/EIF 记为一个 RET
 

3.           DET/RET――复杂度――功能点数的对照表

对于每一个文件( ILF EIF ), FPA 是根据其复杂度来确定其功能点数。复杂度又根据文件所含的 DET RET 的数量分为三级:低,中(平均)和高。
表格 1 逻辑文件功能点计算矩阵
DET 个数
RET 个数
1 ~ 19
20 ~50
 >= 50
 
复杂度
ILF 功能点数
EIF 功能点数
1
7
5
2 ~ 5
10
7
>= 6
15
10
 
FPA 的这种对照表,优点是简单实用。缺点是过于粗糙,对于高复杂度的逻辑文件误差较大。不过东西是死的,人是活的。如果真的有一个逻辑文件的 DET 远远超过 50 个,或 RET 远远超过 6 个,就应当想想是否应当将其分成多个逻辑文件。
得到每一个 ILF/EIF 的功能点数后,把它们的功能点数简单加和起来,就是整个系统的数据功能点数了。

4.           案例――美国网络商店的客户信息

网络商店的客户信息,包含客户姓名、客户编号、电话号码、地址(街区、城市、州、邮政编码)这些基本信息。同时对于互联网客户,要包含电子邮件信息;对于有线电视客户,要包含有线电视盒编号;对于电话客户,要包含 Modem 地址。
这个客户信息包含多少个 DET ,多少个 DET ,多少个功能点呢?
它包含 10 DET :客户姓名、客户编号、电话号码、街区、城市、州、邮政编码、电子邮件、有线电视盒编号、 Modem 地址。
它包含 3 RET :互联网客户、有线电视客户、电话客户。
根据对照表,它包含 7 个功能点。
 

你可能感兴趣的:(休闲,度量,功能点,估算,FPA)