FPA笔记六 计算EI/EO/EQ的功能点

本篇主要介绍在功能点分析法FPA中,如何计算一个处理元(EI/EO/EQ)有多少个功能点。ILF/EIF的功能点是根据其包含的DETRET来确定的;EI/EO/EQ的功能点则是根据其包含的DETFRT来确定的。计算流程也与ILF/EIF的功能点计算流程类似,分为四小步。
1.         统计EI/EO/EQ中的数据元素类型FTR
2.         统计EI/EO/EQ中的记录元素类型DET
3.         参照FTR/DET——复杂度对照表,确定该IEI/EO/EQ的复杂度。
4.         参照复杂度——功能点对照表,确定该EI/EO/EQ的功能点数。
IFPUG根据大量的项目统计数据,分别为EIEOEQ给出了FTR/DET——复杂度——功能点数的对照表。我们只需按图索骥即可,不需要任何的数学计算公式。
计算EI/EO/EQ的功能点数,应当在列出所有的EI/EO/EQ后进行。本系列笔记四介绍了如何是识别EI/EO/EQ

1.           文件类型引用FTR

FTR (File Type Referenced)IFPUG CPM中的定义有两条:An ILF read or maintained by a transactional function; Or An EIF read by a transactional function。其实说白了就一条,在一个处理功能中涉及到的所有逻辑文件。处理功能可能是EI/EO/EQ;逻辑文件是ILF/EIF
CPM分别讲述了在EIEOEQ中统计FTR的规则,归纳起来其实都一样,十分简单明了。
l  EI/EO中每一个被维护的ILF计为一个FTR
l  EI/EO/EQ中每一个被读入的ILF/EIF计为一个FTR
l  如果在一个EI/EO中,一个ILF既被读入,也被维护,只计一个FTR
所谓“维护”,在本系列笔记的前面某篇最后中有介绍,是指创建、添加、修改或删除一个ILF。由于EQ中不可能有维护ILF的操作,所以它一定没有和维护相关的FTR

 

2.           数据元素类型DET

处理功能中统计的DET,和ILF/EIF中统计的DET,定义是一样的:A data element type is a unique user recognizable, non-repeated field。它们可以算是同一个东西,只不过计数规则不同。
l  每一个满足下列所有条件的字段都要计为一个DET.
n  用户可识别的。
n  不重复的。
n  为完成相应的处理元而进入或退出系统边界的。
l  没有穿越系统边界的字段不能计为DET,这些字段通常是有两种情形:
n  由系统从ILF中获取的字段,
n  系统衍生的并保存在ILF中的字段。
n  硬编码的文本,如标题。
n  系统生成的时间戳。
n  系统生成的变量,如页码、行列号等位置信息、向前向后等导航信息。
l  如果系统具有向外界发送处理状态消息的机能,将该机能计为一个DET。处理状态消息通常用来
n  指示处理异常。
n  指示处理已完成。
n  确认处理是否继续。
l  对每一个输入的操作指令计为一个DET。只要指令要求的操作一样,无论有多少个方式输入指令,都只计一个DET。直观的看,一个按钮或菜单项就是一个DET。但键盘快捷键十有八九不是。

 

 

 

3.           FTR/DET——复杂度——功能点数的对照表

ILF/EIF的功能点数对照表类似,EI/EO/EQ也是按照三级复杂度来确定功能点数。EIEOEQ的复杂度和功能点数对照表各不相同。归纳如下面量表所示。
表格 2 处理元复杂度矩阵
EI复杂度

EQ/EO复杂度

DET个数

RET个数

1 ~ 4

5 ~15

 >=16

DET个数

RET个数

1 ~ 5

6 ~19

 >= 20

1

1

2

2 ~ 3

>= 3

>= 4

 

表格 3 处理元功能点计算表
复杂度

EI/EQ功能点数

3

4

6

EO功能点数

4

5

7

 

得到每一个EI/EO/EQ的功能点数后,把它们的功能点数简单加和起来,就是整个系统的处理功能点数了。

4.           案例——员工信息表

一个简单的员工信息维护界面,如下图所示,不涉及任何EIF
图表 1 员工信息界面
l  它只有一个FTR,就是ILF员工信息。
l  EI保存处理元有8DET:六个字段,加两个按钮。取消按钮不算。
l  EI上除处理元有3DET:六个字段算一个DET,两个按钮算两个DET

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章