确定未经调整的功能点数(Unadjusted Function Point Count –UFPC)
未经调整的功能点数反映了应用向用户提供的功能的数量。计量用户功能的原则是数出“该应用向客户提供了什么功能”而不是“这些功能是怎么提供的”。在计数过程中只计入用户要求和定义的组件。未经调整的功能点数(UFPC)包括两个大类:数据和交易。这两个类别的进一步定义在下图中:
数据功能
数据功能是指向用户提供的满足内部或者外部数据需求的功能。数据功能有两类,内部逻辑文件和外部接口文件:
ILF: 内部逻辑文件(Internal Logical File,ILF,以下简称内部数据)
软件内部需要维护(如增删改查)的数据,以用户角度识别的,在应用程序内部的、可维护的内部逻辑数据和控制信息。
识别特征:
- 通常包括数据库表、临时文件、顺序文件等。
- 可以理解为系统内部的实体,如角色、文件、数据等。
- ILF的主要目的是通过应用程序的一个或多个基本处理过程来维护数据。
EIF: 外部接口文件(External Interface File,EIF,以下简称外部接口)
外部接口文件(External Interface File– EIF)是指一组用户能够识别的,在本应用中被引用的,以及存在内在逻辑关联的数据或者控制信息,这些数据或者信息是在本应用的边界之外被控制的。
识别特征:
- 一个应用程序中的EIF必然是其他应用程序中的ILF 。
- 在其它系统中维护但本软件需要调用的数据,在应用程序边界内被查询,但在其他应用程序中被维护的、用户可识别的、逻辑上相关的数据。例如两个应用程序为了交换数据而使用的接口文件。
- 数据被应用程序引用,数据在应用程序外部。
- 计算功能点的这个应用程序并不维护该EIF
- 可以理解为外部协作实体,如外部系统、独立文件、外部数据等
交易功能
EI: 外部输入(External Input,EI)
外部输入(External Input — EI)是指一个处理来自本应用边界之外的一组数据或者控 制信息的基本处理。外部输入的基本目的是为了维护一个内部逻辑文件(ILF)或者改变系 统的行为。
识别特征:
- 向软件输入数据或发送指令
- 对用户的输入进行处理的过程。
- 用户通过增/删/改等典型外部输入操作来更改和维护ILF
- 改变系统的行为和状态
EQ: 外部查询(External Query,EQ)
外部查询 (External Query — EQ)是指是指一个向应用边界之外发送数据或者控制信息的基本处理。外部查询的基本目的是为了向用户展示提取的数据或者控制信息。
识别特征:
- 使用软件进行的简单查询。
- 外部查询的逻辑处理里面不包含数学公式或者计算以及对衍生数据的生成。
- 外部查询不维护内部逻辑文件(ILF)不对数据进行处理,不更改ILF,也不会引起系统行为的改变。
- 输入和输出的组合过程。根据用户提出的查询请求,从EIF或ILF取出数据输出到程序外部。
- 从系统内获取了数据或控制信息,至少引用了一个ILF或EIF
EO: 外部输出(External Output,EO)
外部输出(External Output — EO)是指一个向应用边界之外发送数据或者控制信息的基本处理。外部输出的基本目的是为了向用户展示一组经过了除了提取之外的其他逻辑处理的数据或者控制信息。这里的其他处理包括至少一个数学演算或者对衍生数据的生成。外部输出也可能包括对内部逻辑文件(ILF)的维护或者对系统行为的改变。
识别特征:
- 是一个相对完整的“基本过程”
- 外部输出可能包括对内部逻辑文件(ILF)的维护或改变应用程序。
- 是指一个向应用边界之外发送数据或者控制信息的基本处理。
- 外部输出的基本目的是为了向用户展示一组经过了除了提取之外的其他逻辑处理的数据或者控制信息。
- 这里的处理包括至少一个数学演算或者对衍生数据的生成。
- 对内部数据的复杂报表(含计算内容)/统计分析等
- 向外部接口发送数据/控制信号
- 软件向使用者或其它系统输出的数据或发送的指令
- 向外部发送数据的过程。
功能点区分模型