
软件项目功能点(fp)估算指南.doc
7页文件编号:KT/PM-PP-0X-V0.1修改记录版 本修改原因修改内容修改人审核或 批准人发布日期0.12010-12-29 起草/李颖应用软件项目功能点(应用软件项目功能点(FP)规模估算方法)规模估算方法目录1前言............................................................................................................................................3 1.1目的............................................................................................................................3 1.2适用范围....................................................................................................................3 1.3术语和缩略语............................................................................................................3 2功能点定义................................................................................................................................3 2.1信息域特性................................................................................................................3 2.1.1定义....................................................................................................................3 2.1.1.1外部输入 EI............................................................................................3 2.1.1.2外部输出 EO............................................................................................3 2.1.1.3外部查询 EQ............................................................................................3 2.1.1.4内部逻辑文件 ILF..................................................................................4 2.1.1.5外部接口 EIF..........................................................................................4 2.1.2复杂度计算........................................................................................................4 2.1.2.1事务类特性复杂度估算.........................................................................4 2.1.2.2数据存储类特性复杂度估算.................................................................5 2.2基本系统特征............................................................................................................6 2.2.1定义....................................................................................................................6 2.2.2复杂度计算........................................................................................................6 3估算功能点的步骤....................................................................................................................7 3.1计算 UFP.....................................................................................................................7 3.2计算 TCF.....................................................................................................................7 3.3计算功能点数 FP.......................................................................................................7 4输出............................................................................................................................................71前言1.1 目的功能性度量方法是一种独立于编程语言的软件规模度量方式,使用这种方法可在早期 根据明确功能需求来对最终产品的规模进行估算。
在对软件开发环境校准以后,功能性度量 的结果可以为评估开发工作量和软件产品的成本提供很好的指标1.2 适用范围应用软件项目生命周期中,从需求分析开始直至系统测试结束均可使用本方法进行软 件规模估算与度量1.3 术语和缩略语EI: External Input 外部输入EO: External Output 外部输出EQ: External Queries 外部查询ILF: Internal Logical Files 内部逻辑文件EIF: External Interface Files 外部接口文件UFP: Unadjusted Function Points 未调整功能点TCF: Technical Complex Factor 技术复杂度因子2功能点定义功能点技术依据对软件信息域特性和基本系统特征的评估结果来估算软件规模根据 软件信息域特性可计算出未调整功能点(UFP) ,根据基本系统特征可计算出软件复杂性因 子(TCF) ,最后用公式 FP=UFP×TCF 得出功能点规模估算结果用功能点(FP)作为单 位2.1 信息域特性本文定义的信息域特性有 EI、EO、EQ、ILF 和 EIF。
其中,EI、EO 和 EQ 描述的是 程序复杂度,属于人机交互事务类信息;ILF 和 EIF 描述的是数据库的复杂度,属于数据 存储信息2.1.1定义2.1.1.1 外部输入 EIEI 表示用户向软件输入的项数,通过界面等的输入,插入、更新等操作都是典型的外 部输入其主要目的是维护一个或多个 ILF,及/或更改系统的行为2.1.1.2 外部输出 EOEO 表示软件向用户输出的项数,它们向用户提供面向应用的信息,其主要目的是通 过逻辑处理过程向用户呈现信息改处理过程必须至少包含一个数学公式或计算方法,或 生成派生数据一个 EO 也可以维护一个或多个 ILF,并/或改变系统行为例如,导出、 报表、打印、出错信息等都是输出报表内的数据项不单独计数2.1.1.3 外部查询 EQEQ 是向应用程序边界外发送数据基本处理的过程,其主要目的是从 ILF 或 EIF 中通 过恢复数据信息来向用户呈现该处理过程不包括任何数学公式或计算方法,也不会产生任何派生数据EQ 不会维护任何一个 ILF,也不会改变应用程序的系统行为1 个 EQ 表 示一次联机输入,它导致软件以联机输出方式产生某种即时响应2.1.1.4 内部逻辑文件 ILFILF 是指软件内部需要维护(如增/删/改/查)的数据,也可以是数据的一个逻辑组合。
它可能是大型数据库的一部分或是一个独立的文件它是一组以用户角度识别的、在应用 程序边界内且被维护的逻辑相关数据或控制信息1 个 ILF 可以理解为一个业务对象,可 能对应多个数据表ILF 的主要目的是通过应用程序的一个或多个基本处理过程来维护数 据2.1.1.5 外部接口 EIFEIF 表示在其他系统中维护但本系统需要调用的数据一个应用程序中的 EIF 必然是 其他应用程序中的 ILFEIF 主要目的是为边界内的应用程序提供一个或多个基础操作过程 来引用的一组数据或信息以外贸订单系统项目为例:——录入/修改/删除订单是 EI; ——查询订单是 EO; ——统计订单是 EQ; ——汇率查询转换系统是 EIF; ——订单和客户是 ILF2.1.2复杂度计算EI、EO、EQ 为事务类的信息域,ILF 和 EIF 为数据存储类信息域2.1.2.1 事务类特性复杂度估算估算事务类的功能点需要确定 DET(data element type 数据元类型)和 FTR(file type referenced 涉及的文件类型)两个指标——DET:可以理解为界面的录入具体数据项,按钮也要作为数据项 ——FTR:事务功能需要操作的数据文件的数目2.1.2.1.1 EI 的复杂度计算规则EI 中识别 FTR 规则:——每一个 ILF 应该算作一个 FTR; ——通过 EI 读取的每个 ILF 或 EIF 都应该计算为一个 FTR; ——既被 EI 维护又被读取的 ILF 仅计算为一个 FTR。
EI 中识别 DET 规则: ——在 EI 的过程中,以用户角度识别的、通过应用系统边界输入系统内部的非重 复字段,算一个 DET; ——在 EI 的过程中,只要没有通过系统边界输入,即使它存在于系统内的一个 ILF 中,也不能算作一个 DET; 例如:外贸订单系统中,订单的金额是被单价和数量自动计算的,那么金额是没 有通过系统边界输入的,因此在 EI 操作中不能算作一个 DET ——EI 操作中系统提示的错误信息或完成操作的信息,应该被分别计算为一个 DET 例如,在网站注册用户信息时,如果输入错误,系统会显示提示信息,那么这些提示信息应该被逐个计算为一个 DET;而当 EI 操作正确完成时,系统提示并显示出来的信 息,也应该被计算为一个 DET ——在 EI 操作中,如果遇到主外键的字段,应该。












