IFPUG 功能点估算基本方法

更新时间:2024-05-09 10:12:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

IFPUG 功能点估算基本方法

Function Point Estimation 功能点估算是一种用来估算项目大小的技术。 项目经理从已经界定的软件范围开始,并根据该陈述将软件分解为可以被单独估算的功能单元,然后估算每一个功能的FP值。这种分析方法是按照功能为估算单元进行分解,同样如果以其它元素作为估算单元,例如类、对象、业务过程,以下都以功能分解进行讨论。 注意:功能单元是指分解到的最小可估算单元。

FP值是按照经验,使用复杂度参数进行估算调整过的量化的数值。

估算的基本过程: a) 界定项目范围;

b) 分解项目到可以被估算的最小功能单元; c) 识别功能单元的类型,估算复杂度; d) 计算总体系统特征值; e) 计算调整因子;

f) 应用公式计算FP值。

1. 界定项目范围

界定项目范围这次不讨论。

2. 分解项目到可以被估算的最小功能单元 系统用5种信息域特征进行描述: 事务(Transaction):

外部输入( External Input EI) 外部输出(External Output EO) 外部查询(External Inquiry EQ) 数据存储:

内部逻辑文件(Internal Logical File ILF) 外部接口文件(External Interface File EIF)。

内部文件(ILF)指每个逻辑主文件(即数据的一个逻辑组合,它可能是某大型数据库的一部分或者是一个独立的文件),例如数据库表。注意不是一个数据库表就是一个ILF,例如合同数据可以包括合同信息、合同条款、合同付款计划。

外部接口:所有机器可读的接口,是不由本系统维护的逻辑文件,是其它系统的ILF。例如:web service取回的数据,一个人工维护的Excel表格。 3. 估算功能点的复杂度

数据元素类型(Data Element Types DET)是一个用户可识别的、唯一性的、非递归的域。 记录元素类型(Record Element Types RET)是ILF或者EIF中用户能够识别的数据元素小组。

档案类型(File Types Referenced FTR)是被引用或更新的内部逻辑档案。

交易类信息域(EI、EQ、EO)的复杂程度取决于这个交易牵涉到的数据元素类型数量,以及被引用或者更新的档案文件类型的数量。

数据存储(EIF、ILF)的复杂程度取决于这个数据的逻辑组合包含了多少类记录元素类型,以及包含了多少数据元素类型。例如合同数据包括了合同信息、合同条款、合同付款计

划,就是3个RET。

记录了每个信息域的DET、RET、FTR之后,按照下表为每个信息域进行复杂度评定、打分,总分就是这个功能点的分值。

评估EI复杂度

引用的文件类型个数(FTR’s) 数据元素(Data Elements) 1-4 5-15 >15 0-1 低 低 低 2 低 中 高 >=3 中 高 高

评估EO和EQ复杂度

引用的文件类型个数(FTR’s) 数据元素(Data Elements) 1-5 6-19 >19 0-1 低 低 中 2-3 低 中 高 >3 中 高 高

事务型信息域评分值 级数(Rating) 加权值

低 4 3 3 中 5 4 4 高 7 6 6

评估 ILF EIF 的复杂度

记录元素类型(RET’s) 数据元素(Data Elements) 1-19 20-50 >50 1 低 低 中 2-5 低 中 高 >5 中 高 高

ILF EIF 的评分值 级数(Rating) 加权值 ILF EIF 低 7 5 中 10 7 高 15 10

FP = Σ 各个复杂度等级的信息域数量 × 加权值

4. 计算总体系统特征值General Sysytem Characteristics GSC

也称做复杂度调整值,是系统整体复杂程度的度量,取值 Fi 为0-5。

通用特性 描述

1. Data communications How many communication facilities are there to aid in the transfer or exchange of information with the application or system?

数据通信 多少个通信设施在应用或系统之间辅助传输和交换信息。

2. Distributed data processing How are distributed data and processing functions handled?

分布数据处理 分布的数据和过程函数如何处理?

3. Performance Was response time or throughput required by the user? 性能 用户要求相应时间或者吞吐量吗?

4. Heavily used configuration How heavily used is the current hardware platform where the application will be executed?

硬件负荷 应用运行在的硬件平台工作强度如何?

5. Transaction rate How frequently are transactions executed daily, weekly, monthly, etc.?

事务频度 事务执行的频率(天、周、月)如何?

6. On-Line data entry What percentage of the information is entered On-Line? 在线数据输入 在线数据输入率是多少?

7. End-user efficiency Was the application designed for end-user efficiency? 终端用户效率 应用程序设计考虑到终端用户的效率吗?

8. On-Line update How many ILF’s are updated by On-Line transaction? 在线更新 多少ILF被在线事务所更新?

9. Complex processing Does the application have extensive logical or mathematical processing?

处理复杂度 应用有很多的逻辑或者数据处理吗 ?

10. Reusability Was the application developed to meet one or many user’s needs? 重用性 被开发的应用要满足一个或者多个用户需要吗?

11. Installation ease How difficult is conversion and installation? 易安装性 升级或者安装的难度如何?

12. Operational ease How effective and/or automated are start-up, back-up, and recovery procedures?

易操作性 启动、备份、恢复过程的效率和自动化程度如何?

13. Multiple sites Was the application specifically designed, developed, and supported to be installed at multiple sites for multiple organizations?

跨平台性 应用被设计、开发和支持被安装在多个组织的多个安装点(不同的安装点的软硬件平台环境不同)吗?

14. Facilitate change Was the application specifically designed, developed, and supported to facilitate change?

可扩展性 应用被设计、开发以适应变化吗?

调整过的FP = FP * ( 0.65 + 0.001 *Σ Fi)

本文来源:https://www.bwwdw.com/article/92ag.html

Top