功能点估算法

合集下载

最新功能点估算法介绍及应用

最新功能点估算法介绍及应用

功能点估算法介绍及应用一、功能点估算法识别项目范围和数据复杂度功能点估算法是软件项目管理众多知识中比较有技术含量的一个。

在软件项目管理中项目计划制定的优劣直接关系到项目的成败,项目计划中对项目范围的估算又尤为重要。

如果项目负责人对项目的规模没有一个比较客观的认识,没有对工作量、所需资源、完工时间等因素进行估算,那么项目计划也就没有存在的意义。

功能点估算法的特点项目范围的估算在CMMI的“MA”度量分析管理和“PP”项目计划中均有涉及。

对软件项目范围的估算有很多种方法,常见的是LOC代码行和FP功能点法。

它们之间的区别和关系如下:•功能点估算法常用在项目开始或项目需求基本明确时使用,这时进行估算其结果的准确性比较高。

假如这个时候使用LOC代码行估算法,则误差会比较大。

•使用功能点估算法无需懂得软件使用何种开发技术。

LOC代码行估算法则与软件开发技术密切相关。

•功能点估算法是以用户为角度进行估算,LOC代码行估算法则是以技术为角度进行估算。

•通过一些行业标准或企业自身度量的分析,功能点估算法是可以转换为LOC代码行的。

在项目刚开始的时候进行功能点估算可以对项目的范围进行预测。

在项目开发的过程中由于需求的变更和细化可能会导致项目范围的蔓延,计算出来的结果会与当初估计的不同。

因此,在项目结束时还需要对项目的范围情况重新进行估算,这个时候估算的结果才能最准确反映项目的规模。

功能点分析的步骤本文将以国际标准IFPUG(International Function Point Users Group)组织提供的功能点估算法V4.1.1为基础进行讲解。

如下图所示,首先大家应该了解功能点估算法的使用步骤。

图1 功能点估算法的步骤具体步骤包括:1. 识别功能点的类型。

2. 识别待估算应用程序的边界和范围。

3. 计算数据类型功能点所提供的未调整的功能点数量。

4. 计算人机交互功能所提供的未调整的功能点数量。

5. 确定调整因子。

功能点估算法

功能点估算法

功能点估算法功能点估算法是软件项目管理众多知识中比较有技术含量的一个。

在软件项目管理中项目计划制定的优劣直接关系到项目的成败,项目计划中对项目范围的估算又尤为重要,如果项目负责人对项目的规模没有一个比较客观的认识,没有对工作量、所需资源、完工时间等因素进行估算,那么项目计划也就没有存在的意义。

FP功能点估算法的特点项目范围的估算在CMMI的“MA”度量分析管理和“PP”项目计划中均有涉及,对软件项目范围的估算有很多种方法,常见的就是LOC代码行和FP功能点法,它们之间的区别和关系如下:1、 FP功能点估算法常用在项目开始或项目需求基本明确时使用,这时进行估算其结果的准确性比较高,假如这个时候使用LOC代码行估算法,则误差会比较大。

2、使用FP功能点估算法无需懂得软件使用何种开发技术。

LOC代码行估算法与软件开发技术密切相关。

3、 FP功能点法是以用户为角度进行估算,LOC代码行估算法则是以技术为角度进行估算的。

4、通过一些行业标准或企业自身度量的分析,FP功能点估算法是可以转换为LOC代码行的。

在项目刚开始的时候进行功能点估算可以对项目的范围进行预测,在项目开发的过程中由于需求的变更和细化可能会导致项目范围的蔓延,计算出来的结果会与当初估计的不同,因此在项目结束时还需要对项目的范围情况进行估算,这个时候估算的结果才能最准确反映项目的规模。

功能点分析的步骤在本文中将以国际标准IFPUG(International Function Point Users Group)组织提供的功能点估算法V4.1.1为基础与大家进行讲解。

如下图所示,首先大家应该了解功能点估算法的使用步骤。

功能点估算的步骤1、识别功能点的类型。

2、识别待估算应用程序的边界和范围。

3、计算数据类型功能点所提供的未调整的功能点数量。

4、计算人机交互功能所提供的未调整的功能点数量。

5、确定调整因子。

6、计算调整后的功能点数量。

EI、EO、EQEI是处理来自于应用程序边界外部的一组数据的输入,它的主要目的是维护一个或多个ILF,以及/或者更改系统的行为。

NESMA功能点估算法

NESMA功能点估算法

一、什么是功能点,功能点估算有什么用?对于一个软件来说,功能点是一个可以作为标准的一个计量单位,功能点的多少代表着软件的规模大小,那么有了一个同一的量级的表现后,不同产品或者功能通过功能点来表示,就可以很好地反馈出产品或者功能的复杂程度,同时我们利用功能点来辅助计算效率、成本等也有很大作用。

使用禅道作为项目管理工具的小伙伴,也会在提需求的板块,看到有功能点的录入要求,这也是作为项目管理中,工作量的估算的重要性。

二、功能点估算方法与基本过程功能点的估算方法有IFPUG和NESMA等,下面主要是介绍NESMA 功能点估算法,NESMA估算法更多的在项目前期,可以快速的利用逻辑文件,给出预估的功能点数量,起到较好的指导作用。

NESMA估算法有三种类型的功能点估算,包括:指示功能点计数、估算功能点计数、详细功能点计数;分别对应项目的前期,中后期的功能点估算需求,同时估算出来的功能点也是越来越细化和精准。

当然操作难度和复杂度也是越来越高。

对于一般性的产品而言,我们主要是使用前两种(指示功能点计数、估算功能点计数)估算方法即可,两种方法的主要区别就在于计算公式的不同,一个粗放,一个则较精细,两种都可以使用,可以根据自身项目的具体要求和所处阶段来进行选择。

指示功能点计数:ILF*35+EIF *15估算功能点计数:UFP=(7* ILF+5* EIL+4* EI+5* EO+4* EQ)下面就来介绍上面的公式中用到的因子以及查找方法。

三、两个逻辑文件与三个基本过程上面的估算方法中提到的ILF、EIF、EI、EO、EQ代表着什么呢?只要弄明白了这几个计算因子,那么带入公式就可以很快知道我们的这个产品或者功能的软件规模有多大了,所需多少开发量,也就有了较为准确的参考标准。

1. 两个逻辑文件:ILF和EIF首先我们理解一下逻辑文件是个什么东西。

功能点估算法,我们是从产品的角度,用户的视角来进行估算的。

那么逻辑文件的概念,也就是从用户的视角出发,来进行定义的一类对用户有意义的信息。

功能点估算法

功能点估算法

功能点估算法功能点估算法是一种推断开发者所需完成的工作量的测算方法。

它通过计算软件系统实际功能所需要的数量,来估算软件开发项目所需要的工作量。

这类测算方法经常用于估算软件研发预算,以帮助管理人员更好地掌握软件研发项目的实施过程,更有效地控制开发成本。

在新系统开发项目中,由于缺乏项目的相关信息,无法采用其他的估算方法,所以采用功能点估算法会比较实用。

它可以根据软件系统的功能需求,通过统计分析和对比,对项目的实施过程进行估算。

换句话说,功能点估算法是根据软件系统的功能特性,采用质量控制的原则,对软件开发的工作量进行估算和控制。

功能点估算法的具体实施过程,首先要明确项目所需要实现的功能点,并对每个功能点进行细化,明确功能点的分类划分。

在功能点定义之后,要根据项目的功能和目标,进行功能点估算,确定每个功能点所需要实现的工作量,并将这些数据汇总起来,作为项目的工作量估算基准。

此外,在进行功能点估算时,还要结合项目的复杂性,适当的考虑系统中所需的技术支持、测试和文档等活动,以准确估算项目所需的工作量。

软件系统开发项目在估算阶段,采用功能点估算法可以使估算更加准确,从而更好地掌握项目的进度,减少开发时间和成本。

功能点估算不仅可以帮助开发者规划开发任务和工作负荷,而且还可以帮助客户评估项目的性价比,确保项目的经济效益。

同时,功能点估算还可以为开发者建立一套科学的计划,从而更精确地控制开发的时间和成本,提高开发效率。

总之,功能点估算法是一种实用的、灵活的估算方法,它可以帮助开发者更加精确地估算软件研发项目的工作量,从而更好地控制开发成本,提高项目的经济效益。

它既便于项目管理者和客户,也有利于开发者,是软件系统开发项目必不可少的一环。

IFPUG功能点估算含示例

IFPUG功能点估算含示例

IFPUG功能点估算含示例IFPUG(International Function Point Users Group)功能点估算是一种常用的软件度量方法,它通过对软件的功能进行分类和量化来估算软件的规模和复杂度。

功能点估算可以帮助软件开发团队更好地理解项目的规模和工作量,有助于项目管理和项目成本的预测。

IFPUG功能点估算的核心思想是将软件的功能进行分类,然后将每个功能点按照一定的规则进行加权,并与标准功能点系数相乘得出最终的功能点数。

这样可以对不同的软件进行可比较的度量,并且提供了一个基准来评估相对规模和复杂度。

1.功能性功能点包括以下四个子类:-输入(EI)功能点:表示软件接收外部输入并处理的功能。

例如,一个图书管理系统可以接收读者的借书请求并进行处理。

-输出(EO)功能点:表示软件向外部输出信息的功能。

例如,一个图书管理系统可以向读者输出图书的归还日期。

-查询(EQ)功能点:表示软件进行内部或外部查询的功能。

例如,一个图书管理系统可以查询图书的借阅记录。

-文件(F)功能点:表示软件维护的逻辑文件(包括输入和输出文件)的功能。

例如,一个图书管理系统可以维护图书的借阅记录文件。

2.非功能性功能点包括以下三个子类:-外部接口文件(EIF)功能点:表示软件与外部系统进行数据交换的功能。

例如,一个图书管理系统可以与图书供应商的系统进行数据交换。

-外部查询文件(EQF)功能点:表示软件使用的外部查询文件的功能。

例如,一个图书管理系统可以使用图书供应商的系统提供的查询功能。

-内部逻辑文件(ILF)功能点:表示软件内部维护的逻辑文件的功能。

例如,一个图书管理系统可以维护图书的库存信息。

在IFPUG功能点估算中,每个功能点都有一个权重或复杂度,可以根据软件的特点和相对复杂度进行调整。

例如,一个图书管理系统的输入功能点可能比输出功能点更复杂,因此输入功能点的权重可能更高。

下面是一个示例,用于说明如何进行IFPUG功能点估算:假设我们要开发一个学生管理系统,该系统可以记录学生的基本信息、课程成绩和考试安排等。

软件开发功能点估算方法

软件开发功能点估算方法

功能点估算方法1概述 (1)1.1编写目的 (1)1.2适用范围 (1)1.3术语定义 (1)1.4功能点定义与分类 (2)2功能点估算方法 (2)2.1估算流程 (2)2.1.1项目前期 (3)2.1.2需求明确 (4)2.1.3需求变更 (4)2.2调整前功能点计算(UFC) (5)2.2.1复杂度矩阵(项目前期) (5)2.2.2复杂度矩阵(需求明确、需求变更).................. .62.3调整系数 (7)2.4调整后功能点计算(FP) (10)3实例说明 (10)3.1项目前期 (10)3.2需求明确 (13)3.3需求变更 (19)1概述1.1编写目的为规范软件项目规模的度量方法,结合国际先进的估算方法及公司业务运营模式,制定基于软件功能的度量估算方法,为度量项目规模和项目工作量提供指导依据。

1.2适用范本方法适用于公司的研发类项目,项目应覆盖软件开发全过程(包括项目准备阶段、需求阶段、设计阶段、编码与测试、交付部署、运行维护各个阶段工作,1.3术语定义1.4功能点定义与分类功能点(Function Points)是响应客户、其他应用请求或自行触发而进行处理并输出结果的一个最小功能单元。

功能估算过程中,将软件的功能分为以下4类:1)接口:是指在其他系统中维护但本系统需要调用的数据。

包括:调用外部接口和提供外部系统调用的接口。

2)数据处理:是指来自于系统外部的数据输入、控制信息或事务数据输入,并对输入数据进行逻辑处理。

包括:新增、修改、删除、流程流转和发布。

3)统计:是指对数据经过组合、计算、统计分析后得出的数据集合,并由程序内部输出到外部。

包括:定时统计和实时统计。

4)查询:是一个输入输出的组合过程,向应用程序边界外发送数据基本处理的过程。

包括:单表查询和多表联合查询。

2功能点估算方法2.1估算流程功能点估算方法,是从软件项目的功能需求角度来评估项目规模,功能点估算流程如下图所示。

IFPUG功能点估算含示例

IFPUG功能点估算含示例

功能点估算(CMMI-FP)含示例(内容来自互联网仅学习共享)功能点估算法是软件项目管理众多知识中比较有技术含量的一个。

在软件项目管理中项目计划制定的优劣直接关系到项目的成败,项目计划中对项目范围的估算又尤为重要。

如果项目负责人对项目的规模没有一个比较客观的认识,没有对工作量、所需资源、完工时间等因素进行估算,那么项目计划也就没有存在的意义。

功能点估算法的特点项目范围的估算在CMMI的“MA”度量分析管理和“PP”项目计划中均有涉及。

对软件项目范围的估算有很多种方法,常见的是LOC代码行和FP功能点法。

它们之间的区别和关系如下:∙功能点估算法常用在项目开始或项目需求基本明确时使用,这时进行估算其结果的准确性比较高。

假如这个时候使用LOC代码行估算法,则误差会比较大。

∙使用功能点估算法无需懂得软件使用何种开发技术。

LOC代码行估算法则与软件开发技术密切相关。

∙功能点估算法是以用户为角度进行估算,LOC代码行估算法则是以技术为角度进行估算。

∙通过一些行业标准或企业自身度量的分析,功能点估算法是可以转换为LOC代码行的。

在项目刚开始的时候进行功能点估算可以对项目的范围进行预测。

在项目开发的过程中由于需求的变更和细化可能会导致项目范围的蔓延,计算出来的结果会与当初估计的不同。

因此,在项目结束时还需要对项目的范围情况重新进行估算,这个时候估算的结果才能最准确反映项目的规模。

功能点分析的步骤本文将以国际标准IFPUG(International Function Point Users Group)组织提供的功能点估算法V4.1.1为基础进行讲解。

如下图所示,首先大家应该了解功能点估算法的使用步骤。

图1功能点估算法的步骤具体步骤包括:1.识别功能点的类型。

2.识别待估算应用程序的边界和范围。

3.计算数据类型功能点所提供的未调整的功能点数量。

4.计算人机交互功能所提供的未调整的功能点数量。

5.确定调整因子。

6.计算调整后的功能点数量。

功能点估算法 标准

功能点估算法 标准

功能点估算法标准
功能点估算法是一种软件规模度量方法,用于估算软件项目的规模和工作量。

它基于软件系统的功能和特性,将其分解为一系列可度量的功能点。

功能点估算法的核心思想是通过对软件系统的功能进行分析和分解,确定每个功能的复杂度和贡献度,并将其转换为对应的功能点数。

功能点可以根据不同的功能类型进行分类,如数据输入、数据输出、数据存储、外部接口等。

在进行功能点估算时,通常需要遵循一定的标准和规范,例如国际功能点用户组(IFPUG)发布的功能点计数规范。

这些规范定义了各种功能类型的计算方法和权重,以确保估算的准确性和一致性。

功能点估算法的优点包括:
1. 相对客观和准确:功能点估算法基于软件系统的功能和特性进行估算,不受开发人员经验和技能水平的影响,因此相对客观和准确。

2. 可重用性高:功能点估算法可以应用于不同类型的软件项目,具有较高的可重用性。

3. 便于项目管理和规划:通过功能点估算,可以更好地了解项目的规模和工作量,有助于项目管理和规划。

然而,功能点估算法也存在一些局限性,例如对于某些特殊类型的软件项目可能不适用,估算过程相对复杂,需要一定的专业知识和经验。

功能点估算法是一种常用的软件规模度量方法,通过对软件系统的功能进行分析和分解,确定每个功能的复杂度和贡献度,并将其转换为对应的功能点数,从而估算软件项目的规模和工作量。

软件测试用例规模与测试工作量的估算方法

软件测试用例规模与测试工作量的估算方法

软件测试用例规模与测试工作量的估算方法在软件开发过程中,软件测试是一个至关重要的环节。

通过测试,可以识别出软件中的错误和缺陷,提高软件的质量和稳定性。

而在进行软件测试之前,我们需要估算测试工作的规模和工作量,以便合理安排资源和时间,确保测试的效果和进度。

估算软件测试用例规模的方法有多种,下面将介绍一些常用的方法和技巧。

1. 功能点估算法功能点估算法是一种常见的软件项目估算方法,可以用于估算测试用例的规模和数量。

该方法以软件的功能点数目为基础,根据功能点对应的测试用例数量进行估算。

通常,我们可以通过对项目需求文档和软件规格说明书进行分析,识别出不同的功能点,并根据经验和历史数据确定每个功能点对应的平均测试用例数量。

对每个功能点进行估算,并累加得到整个项目的测试用例数量。

这种方法可以比较准确地估算出测试用例的规模和数量。

2. 用例点估算法用例点估算法是另一种常用的软件项目估算方法,可以用于估算测试用例的规模和工作量。

该方法以用例点的概念为基础,将软件需求分解为不同的用例,并根据不同用例的复杂性和覆盖范围进行估算。

通常,我们可以通过对需求文档进行分析,识别出不同的用例,并根据复杂性和覆盖范围给每个用例分配用例点数。

对每个用例进行估算,并累加得到整个项目的用例点数。

通过用例点数和历史数据计算出测试工作的工作量。

这种方法可以较为准确地估算出测试用例的规模和测试工作的工作量。

3. 经验估算法经验估算法是一种常见且经济效益较高的软件测试估算方法。

该方法基于测试团队的经验和历史数据,通过对过去类似项目的分析和总结,得出一个基准数据。

根据当前项目的特征、规模和复杂性等因素,结合基准数据进行估算。

这种方法适用于那些规模较大、复杂度较高的项目,可以依据过去项目的实际情况来估算测试用例的规模和工作量。

4. 修改点估算法在软件开发的过程中,会有不断的需求变更和功能修改。

当项目进行中需要对软件进行修改时,我们可以采用修改点估算法来估算新增的测试用例。

软件开发项目工作量估算

软件开发项目工作量估算

软件开发项目工作量估算
软件开发项目工作量的估算是一个重要的任务,它有助于确定项目的规模、资源需求和计划安排。

以下是一些常用的软件开发项目工作量估算方法:
1.功能点估算法:该方法通过将软件的功能划分为不同的模块,并根据每个模块的复杂程度和所需的工作量,进行估算。

功能点的数量可以根据需求分析文档来确定,然后根据之前类似项目的实际情况,估算每个功能点所需的开发时间。

2.任务分解法:该方法将项目的各个任务分解为更小的子任务,然后对每个子任务进行详细的估算。

这种方法的优势在于可以更准确地估算每个任务的工作量,但需要花费更多的时间和精力来确定子任务的细节。

3.专家判断法:该方法依赖于经验丰富的开发人员的判断和估算。

通过和开发团队讨论,根据过去类似项目的经验,以及项目的目标和约束,估算项目的工作量。

不论使用哪种方法,都需要对项目的需求和目标有清晰的了解,并与开发团队充分合作和沟通。

同时,需要考虑到不同的风险和不确定因素,例如技术复杂度、项目环境等。

最终得出的工作量估算应
该是一个合理的、可靠的和可执行的计划,可以为项目的成功实施提供有力的支持。

功能点估算法介绍及应用

功能点估算法介绍及应用

一、功能点估算法识别项目范围和数据复杂度功能点估算法是软件项目管理众多知识中比较有技术含量的一个。

在软件项目管理中项目计划制定的优劣直接关系到项目的成败,项目计划中对项目范围的估算又尤为重要。

如果项目负责人对项目的规模没有一个比较客观的认识,没有对工作量、所需资源、完工时间等因素进行估算,那么项目计划也就没有存在的意义。

功能点估算法的特点项目范围的估算在CMMI的“MA”度量分析管理和“PP”项目计划中均有涉及。

对软件项目范围的估算有很多种方法,常见的是LOC代码行和FP功能点法。

它们之间的区别和关系如下:•功能点估算法常用在项目开始或项目需求基本明确时使用,这时进行估算其结果的准确性比较高。

假如这个时候使用LOC代码行估算法,则误差会比较大。

•使用功能点估算法无需懂得软件使用何种开发技术。

LOC代码行估算法则与软件开发技术密切相关。

•功能点估算法是以用户为角度进行估算,LOC代码行估算法则是以技术为角度进行估算。

•通过一些行业标准或企业自身度量的分析,功能点估算法是可以转换为LOC代码行的。

在项目刚开始的时候进行功能点估算可以对项目的范围进行预测。

在项目开发的过程中由于需求的变更和细化可能会导致项目范围的蔓延,计算出来的结果会与当初估计的不同。

因此,在项目结束时还需要对项目的范围情况重新进行估算,这个时候估算的结果才能最准确反映项目的规模。

功能点分析的步骤本文将以国际标准IFPUG(International Function Point Users Group)组织提供的功能点估算法V4.1.1为基础进行讲解。

如下图所示,首先大家应该了解功能点估算法的使用步骤。

图1 功能点估算法的步骤具体步骤包括:1. 识别功能点的类型。

2. 识别待估算应用程序的边界和范围。

3. 计算数据类型功能点所提供的未调整的功能点数量。

4. 计算人机交互功能所提供的未调整的功能点数量。

5. 确定调整因子。

6. 计算调整后的功能点数量。

功能点估算法

功能点估算法

功能点是基于软件信息领域的可计算的(直接的)测量及对其复杂性的评估而导出的。

功能计算如图1所示。

针对每个功能确定了外部输出数、外部输入数、文件数、用户查询数和外部接口数等五个信息域特征,每个信息域特征值按下列方式定义。

1)用户输出数计算每个用户输出,外部输出是为用户提供的面向应用的输出信息,这些信息通常包括报告、屏幕信息、错误信息等方面的内容。

每一个外部输出数据都要进行计数,获得外部输出数。

2)用户输人数计算每个用户输入,它们向软件提供面向应用的数据。

外部输入是每个用户输入的面向不同应用的输入数据,输入应该与查询区分开来,分别计算。

3)文件数计算每个逻辑的主文件。

逻辑文件是软件修改或保存的逻辑记录集合,它可以是一个大的数据库的一部分,也可以是一个独立的文件。

4)用户查询数一个查询被定义为一次联机输入,它引发软件以联机方式产生某种即时响应,是软件以联机输出方式产生的独立查询信息。

每一个不同的查询都要计算。

5)外部接口数外部接口是所有用来将信息与其他系统进行交互或共享的端口(如磁带或磁盘上的数据文件),利用这些接口可以将信息从一个系统传送到另一个系统。

收集到以上五个信息域特征值后,就将每个计数与一个复杂度值(加权因子)关联上。

采用功能点的组织建立了一个标准,以确定某个特定条目是简单的、平均的还是复杂的。

不过复杂的确定多少有些主观。

每个功能的总计数值可以作为这个功能的功能点使用,以估算该功能的成本和工作量。

整个项目的估算还应考虑一些全局性的因素,并不是所以功能总计数值的简单相加。

整个项目的功能点计算采用下面的公式:总FP=∑每个功能的总计数值×(0.65+0.01×∑Fi)其中,Fi(i=1,2,…,14)是基于对图2中问题的回答而得到的“复杂度调整值(0~5)”。

等式中的常数是根据经验确定的。

Fi的取值在0~5之间:Fi:(1)系统需要可靠的备份和复原吗?(2)需要数据通信吗?(3)有分布处理功能吗?(4)性能很关键吗?(5)系统在一个已有的、很实用的操作环境中运行吗?(6)系统需要联机数据项吗?(7)联机数据项是否需要在多个屏幕或多个操作之间切换以完成输入?(8)需要联机更新主文件吗?(9)输入、输出、文件或查询很复杂吗?(10)内部处理复杂吗?(11)代码需要被设计成可复用的吗?(12)设计中需要包括转换及安装吗?(13)系统的设计支持不同组织的多次安装吗?(14)应用的设计方便用户修改和使用吗?一旦计箕出功能点,则可以使用它以规范软件生产率、质量及其他属性的测量和估算,也可以类似于LOC的方法来对每个功能点的错误数、每个功能点的缺陷数、每个功能点的成本、每个功能点的文档页数、每人月完成的功能点数进行估算。

功能点估算法例子

功能点估算法例子

功能点估算法例子
以下是 6 条关于“功能点估算法例子”:
1. 哎呀呀,你想想,就像盖房子要先估算材料用量一样,软件开发也得先搞清楚功能点有多少呀!比如说做一个电商平台,那商品展示、购物车、支付这些功能不都得一个个算清楚嘛!如果不算好,那岂不是会乱套呀!
2. 嘿,你晓得不,功能点估算就好比给一幅画勾勒轮廓!好比做一个音乐播放软件,播放、暂停、切换歌曲这些功能就是一个个关键点呀,这都得精准估算,不然怎么能好用呢!
3. 哇塞,功能点估算很重要的呀!比如说设计一个地图导航软件吧,路线规划、实时路况显示这些功能就像是一个个小城堡,得仔细估算它们的价值呀!不然怎么能准确带你到达目的地呢!
4. 哎呀,功能点估算不就像给一个机器选择零件嘛!就像开发一个游戏,角色动作、关卡设计,这些功能都是重要的组成部分呀,能不好好估算么!
5. 嘿呀,功能点估算就跟数星星差不多呢!想想开发一个社交软件,聊天功能、好友推荐这些就像是天空中闪耀的星星呀,得用心去估算它们的数量和重要性呀!
6. 哇哦,功能点估算其实很有意思呢!好比打造一个智能家居系统,灯光控制、温度调节这些功能就是生活中的精灵呀,得认真估算才能让生活更舒适便利呀!
我的观点结论就是:功能点估算法非常重要,关系到各种项目的顺利进行和最终效果!。

fpa标准功能点估算

fpa标准功能点估算

FPA(功能点分析)是一种用来度量软件系统规模的方法,它从用户视角来度量产品规模,不注重产品的内部结构和技术复杂度。

FPA估算模型中,任何一个软件系统都被看作是由五种要素组成,分别是:外部输入处理(EI)、外部查询处理(EQ)、外部输出处理(EO)、内部逻辑文件(ILF)和外部参照文件(ER)。

通过估算系统中这五种要素的个数,并乘以适当的权值(权值即为每个要素的功能点数)就可以计算出系统的功能点数,进而估算出系统的规模。

在FPA中,功能点数可以通过以下步骤来估算:
1.确定系统中的功能区域:首先根据系统的主要功能,将系统划分为若干个功能
区域。

每个功能区域对应一个或多个功能。

2.确定功能区域的规模:每个功能区域的规模可以根据其涉及的数据量、处理的
数据复杂度、用户数量等因素来确定。

3.计算功能区域的功能点数:根据每个功能区域的规模和复杂度,计算出每个功
能区域的功能点数。

4.确定功能区域的权重因子:根据每个功能区域的重要性和复杂度,确定每个功
能区域的权重因子。

5.计算总的功能点数:将每个功能区域的功能点数乘以对应的权重因子,然后将
这些结果相加,就可以得到总的功能点数。

FPA标准是国际功能点用户组(IFPUG)维护和推动的,它不定期发布Counting Practices Manual来统一不同公司和产品的功能点计算模型。

这个模型基于大量已完成项目的分析数据,非常全面和精确。

对于同一个产品,不同的公司,不同的人参照CPM计算出来的功能点数应当是一样的。

整理的功能点计算法

整理的功能点计算法

功能点描述功能点估算法是软件项目管理众多知识中比较有技术含量的一个。

在软件项目管理中项目计划制定的优劣直接关系到项目的成败,项目计划中对项目范围的估算又尤为重要,如果项目负责人对项目的规模没有一个比较客观的认识,没有对工作量、所需资源、完工时间等因素进行估算,那么项目计划也就没有存在的意义。

项目范围的估算在CMMI的“MA”度量分析管理和“PP”项目计划中均有涉及,对软件项目范围的估算有很多种方法,常见的就是LOC代码行和FP功能点法,它们之间的区别和关系如下:1、FP功能点估算法常用在项目开始或项目需求基本明确时使用,这时进行估算其结果的准确性比较高,假如这个时候使用LOC代码行估算法,则误差会比较大。

2、使用FP功能点估算法无需懂得软件使用何种开发技术。

LOC代码行估算法与软件开发技术密切相关。

3、FP功能点法是以用户为角度进行估算,LOC代码行估算法则是以技术为角度进行估算的。

4、通过一些行业标准或企业自身度量的分析,FP功能点估算法是可以转换为LOC代码行的。

在项目刚开始的时候进行功能点估算可以对项目的范围进行预测,在项目开发的过程中由于需求的变更和细化可能会导致项目范围的蔓延,计算出来的结果会与当初估计的不同,因此在项目结束时还需要对项目的范围情况进行估算,这个时候估算的结果才能最准确反映项目的规模。

功能点的公式:●功能点的原始计算公式:FP Count =UFP * VAF●新开发项目有时新开发的软件项目也需要与其他现存的软件系统进行整合,例如:一个企业新开发的MIS 内部管理系统经常会与财务系统进行整合。

这个时候除了考虑本身项目的功能点个数外,还要考虑系统整合或数据迁移部分的工作量,因此其功能点计算公式如下:FP Count =(UFP+CFP)* VAF●二次开发的项目有时新开发的软件项目是在原有基础上进行二次开发的,只是为了增加一些新的功能,因此其功能点计算公式如下:FP Count = ADD * VAFUFP:未调整的功能点个数1、人机交互(程序复杂度)(1)、EI: External Input外部输入(2)、EO: External Output外部输出(3)、EQ: External Inquiry外部查询2、数据存储(数据库复杂度)1、ILF:Internal Logical File内部逻辑文件2、EIF: External Interface File外部接口文件识别功能点的重要原则ILF、EIF要与EI、EO、EQ分开计算。

功能点估算法实例

功能点估算法实例

功能点估算法实例在功能点估算中,通常采用的方法是功能点分析法(Function Point Analysis, FPA)。

功能点分析法是一种基于用户需求和功能规格的软件度量方法,通过对软件系统的功能进行分类、计量和评估,从而得出系统的功能点数。

功能点数是衡量软件规模的一种指标,可以用于估算软件开发工作的工作量、资源需求和开发周期等。

功能点估算的过程通常包括以下几个步骤:1. 确定功能类型:将软件系统的功能进行分类,常见的功能类型包括数据输入、数据输出、查询、文件维护、逻辑判断等。

2. 识别功能点:根据用户需求和功能规格,识别出系统中的功能点。

功能点可以是一个用户操作界面,也可以是一个数据处理过程或者一个报表输出等。

3. 计量功能点:根据功能点的种类和复杂度,对每个功能点进行计量。

计量方法通常包括简单计数法、权重计数法等。

简单计数法是根据功能点的个数进行计量,而权重计数法则是根据功能点的复杂度和难度进行加权计量。

4. 评估功能点:根据功能点的计量结果,对系统的功能点数进行评估。

评估结果可以用于估算软件开发的工作量、资源需求和开发周期等。

功能点估算方法的优点在于它能够提供一个相对客观的度量指标,可以帮助项目团队更准确地估算项目的规模和工作量。

通过功能点估算,项目团队可以更好地分配资源、制定计划和管理进度,从而提高项目的成功率和质量。

然而,功能点估算也存在一些限制和挑战。

首先,功能点估算的结果受到人为因素的影响较大,不同的人可能对同一个功能点有不同的理解和计量结果。

其次,功能点估算需要准确的用户需求和功能规格,如果需求不清晰或者变更频繁,功能点估算的结果可能会不准确。

另外,功能点估算只是一种软件规模估算方法,对于软件开发中的其他方面如质量、风险等并没有进行考虑。

功能点估算是一种常用的软件项目管理工具,通过对系统功能进行分类、计量和评估,可以提供项目规模、工期和资源需求等关键信息。

功能点估算方法可以帮助项目团队做出合理的决策和计划,提高项目的成功率和质量。

功能点估算法

功能点估算法

功能点估算法是软件项目管理众多知识中比较有技术含量的一个。

在软件项目管理中项目计划制定的优劣直接关系到项目的成败,项目计划中对项目范围的估算又尤为重要,如果项目负责人对项目的规模没有一个比较客观的认识,没有对工作量、所需资源、完工时间等因素进行估算,那么项目计划也就没有存在的意义。

FP功能点估算法的特点项目范围的估算在CMMI的“MA”度量分析管理和“PP”项目计划中均有涉及,对软件项目范围的估算有很多种方法,常见的就是LOC代码行和FP功能点法,它们之间的区别和关系如下:1、 FP功能点估算法常用在项目开始或项目需求基本明确时使用,这时进行估算其结果的准确性比较高,假如这个时候使用LOC代码行估算法,则误差会比较大。

2、使用FP功能点估算法无需懂得软件使用何种开发技术。

LOC代码行估算法与软件开发技术密切相关。

3、 FP功能点法是以用户为角度进行估算,LOC代码行估算法则是以技术为角度进行估算的。

4、通过一些行业标准或企业自身度量的分析,FP功能点估算法是可以转换为LOC代码行的。

在项目刚开始的时候进行功能点估算可以对项目的范围进行预测,在项目开发的过程中由于需求的变更和细化可能会导致项目范围的蔓延,计算出来的结果会与当初估计的不同,因此在项目结束时还需要对项目的范围情况进行估算,这个时候估算的结果才能最准确反映项目的规模。

功能点分析的步骤在本文中将以国际标准IFPUG(International Function Point Users Group)组织提供的功能点估算法V4.1.1为基础与大家进行讲解。

如下图所示,首先大家应该了解功能点估算法的使用步骤。

功能点估算的步骤1、识别功能点的类型。

2、识别待估算应用程序的边界和范围。

3、计算数据类型功能点所提供的未调整的功能点数量。

4、计算人机交互功能所提供的未调整的功能点数量。

5、确定调整因子。

6、计算调整后的功能点数量。

EI、EO、EQEI是处理来自于应用程序边界外部的一组数据的输入,它的主要目的是维护一个或多个ILF,以及/或者更改系统的行为。

软件项目中的功能点估算法

软件项目中的功能点估算法

原理Function Point Estimation 功能点估算是一种用来估算项目大小的技术。

功能点是对软件功能和规模的间接定量测量,它基于客观的外部应用接口和主观的内部应用复杂度以及总体的性能特征。

功能点法和专家法估算最大的不同点在于对估算规模的细化的定量分析上面.我们在用专家法估算的时候往往会直接去估算工作量,或在规模的估算中掺杂了生产率的数据,导致估算数据出现问题.专家法估算虽然有时候也很准确,但不能提升为组织级可以参考和借鉴的同样规则.其实专家法的估算要做准确也是遵循了功能点法估算的思路,在考虑一个软件功能究竟涉及到哪些操作,涉及到多少数据文件的存在,每个操作需要访问哪些数据文件等相关问题.只是这些想法停留在专家头脑里面而没有量化出来.我们的预测,分析和决策能力要提升,就必须对我们的经验进行模型化和定量分析.功能点法正好就起到了这个作用.其实功能点发也有不完善的地方,这可以根据我们项目实际的使用情况去不断的改进.功能点发进行估算的时候具体过程是:1.对估算功能单元的类型进行识别2.计算每种类型的复杂度.3.计算总体的调整前的功能点数4.根据调整因子对功能点数进行调整功能点估算中有5种信息域需要进行描述:其中事务类的有EI,EO和EQ,数据存储类有ILF和EIF.外部输入(EI):通过界面等的输入,插入更新等操作都是典型外部输入外部输出(EO):仅仅输出,入导出,报表,打印等输出外部查询(EQ):先要输入数据,在根据输入数据计算输出,如查询内部逻辑文件(ILF):可以理解为业务对象,可能对应多个数据表外部接口文件(EIF):其它应用提供的接口数据A.对事务类功能点的估算:对事务类的功能点估算需要确定DET和FTR两个指标:DET:可以理解为界面的录入具体数据项,按钮也要作为数据项FTR:事务功能需要操作的数据文件的数目对EI的复杂度的计算:对EO和EQ复杂度的计算:B.对数据存储类功能点的估算对数据存储类功能点的估算需要确定DET和RET两个指标DET:具体数据存储文件的数据项的数目RET:数据文件是复合文件时候关联或引用的个数.如订单数据文件由于存在订单头和明细关联引用,RET应该算2.对ILF和EIF复杂度的计算:信息域数据估算完成后可以开始考虑调整因子:调整因子是一种补偿机制,即通过五个信息域和复杂度都还没有办法考虑到的因素就应该做为调整因子.如同样一个软件系统一种是系统要支持分布式和自动更新,而另一种是不考虑这种需求,如果不考虑调整因子这两者的规模是一样的,但很明细第一种情况复杂度和规模都会更大些.有了调整因子后最终可以得到调整后的功能点数:AFP(调整后功能点)= UFP (未调整功能点数目)* AF (影响因子)实例需求:实现一个订单的录入,更新,删除和查询功能.订单信息是指一个用户订购的公司产品的情况.其中订单头包含了具体的类型,订购时间,发运地址,客户名称等信息.订单明细包含了订购的具体产品的数量的情况.假设:1.用户表和产品数据表已经建立,本次订单功能开发仅仅是引用和取这些数据.2.暂不考虑其它特殊业务逻辑和权限功能界面情况:STEP1:计算出EI,EO和EQ事务功能举例:对于订单保存功能,项目自我约定对于组合框DET算2,对于GRID的DET算3.其余界面控件DET都算1,所以可以数出DET数目为15.再来考虑FTR数目,这里需要操作订单数据文件,客户数据文件和产品数据文件FTR数应该算3.STEP2:计算出ILF和EIF事务功能1.这里订单文件只算一个DET,但后台数据表会涉及到两个数据表.由于订单头和订单明细有关联关系,所以这里RET取2.2.客户文件和产品文件虽然不是外部系统文件,但本次开发的功能并不需要再去设计该数据文件和数据表,所以这里把其作为EIF来处理.STEP3:根据对应表计算各个信息域复杂度的情况.最终的估算情况如下:最终的未调整的功能点数目为:61调整因子在这里不再举例说明了,如项目调整因子为1.08,则最终功能点数为:AFP = 61*1.08 = 66.还有些没有细化考虑的,如具体的DET数量的计算规则等,还请指正.。

CMMI收藏:功能点估算方法

CMMI收藏:功能点估算方法

CMMI收藏:功能点估算方法何为软件功能点?软件功能点是站在业务角度对软件规模的一种度量,功能点的多少代表软件规模的大小,这里说的功能点是标准的功能点,按照标准的估算方法,每个人对特定需求估算出的功能点数是一致的。

功能点方法最早是在1970年代IBM提出,并陆续成为许多国家估算软件规模的国家标准,我国是在2000以后把功能点方法引入国内,2018年工信部发布基于功能点方法的软件造价标准《GB/T 36964-2018软件工程软件开发成本度量规范》。

如何进行功能点估算?功能点方法认为系统维护了哪些信息、如何维护的这些信息及处理的复杂程度决定了系统价值。

系统维护的信息又称为数据功能,并把数据功能分为内部逻辑文件(ILF)和外部接口文件(EIF);如何维护的这些信息称为事务功能,又把事物功能分为外部输入(EI)、外部输出(EO)、外部查询(EQ)。

这两类数据功能和三类事务功能我们称为计数项,每类计数项根据复杂度不同分别代表了不同的功能点数。

通过功能点方法做规模估算就是要根据软件需求识别这五类计数项,并根据每类计数项的权重计算功能点数,计算的结果就是我们要估算的软件规模。

例如:我们要开发一个物流管理系统,以下是客户提出的部分需求。

订单管理:管理所有的订单信息,包括订单编号、货物名称、发货方信息、收货方信息、订单价格、订单保价等,可以添加新订单、管理员可以修改订单记录、管理员可以删除订单记录、可以查询订单列表、可以查询订单明细、可以打印订单、可以按周期统计订单信息,货物状态改变后,以短信的方式通知收货方和发货方。

解析:首先我们识别数据功能,看系统维护了哪些数据:•l 维护有订单信息,是在系统内部为的,识别为ILF;•l 维护有短信通信信息,是在短信平台维护的,识别为EIF;•l 发货信息、收货信息、货物名称等是订单的具体信息,不单独识别。

然后我们识别事务功能,看系统如何维护以上的数据功能:•l 对订单信息的事务操作有:增、删、改、查(列表)、查(明细)、统计报表、打印;Ø维护数据的操作(EI)有:增、删、改Ø带计算的查询操作(EO)有:统计报表Ø不带计算的查询操作(EQ)有:查(列表)、查(明细)、打印•l 对短信信息的事务操作有:生成短信、发送短信;Ø维护数据的操作(EI)有:生成短信Ø向外界传递信息的操作(EQ)有:发送短信最后根据规则分别确定其复杂度,每类复杂度有固定的功能点权重:DET:简单理解为涉及的字段数量,如数据功能包括的字段数量;事务功能操作的字段数量;RET:是对数据功能字段的归类,如把订单信息分为订单基本信息和订单运输信息,RET为2;FTR:事务功能操作涉及到的数据文件的个数;我们对这部分需求做功能点估算的结果如下(简单起见我们以下都按中等复杂度计算):功能点方法的优势是什么?功能点方法是面向业务视角的软件规模估算方法,与软件的实现方式(如:开发语言、数据库、架构等)无关,功能点估算工程师只需要了解业务需求即可估算。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

功能点估算法识别项目范围和数据复杂度功能点估算法是软件项目管理众多知识中比较有技术含量的一个。

在软件项目管理中项目计划制定的优劣直接关系到项目的成败,项目计划中对项目范围的估算又尤为重要。

如果项目负责人对项目的规模没有一个比较客观的认识,没有对工作量、所需资源、完工时间等因素进行估算,那么项目计划也就没有存在的意义。

功能点估算法的特点项目范围的估算在CMMI的“MA”度量分析管理和“PP”项目计划中均有涉及。

对软件项目范围的估算有很多种方法,常见的是LOC代码行和FP功能点法。

它们之间的区别和关系如下:∙功能点估算法常用在项目开始或项目需求基本明确时使用,这时进行估算其结果的准确性比较高。

假如这个时候使用LOC代码行估算法,则误差会比较大。

∙使用功能点估算法无需懂得软件使用何种开发技术。

LOC代码行估算法则与软件开发技术密切相关。

∙功能点估算法是以用户为角度进行估算,LOC代码行估算法则是以技术为角度进行估算。

∙通过一些行业标准或企业自身度量的分析,功能点估算法是可以转换为LOC代码行的。

在项目刚开始的时候进行功能点估算可以对项目的范围进行预测。

在项目开发的过程中由于需求的变更和细化可能会导致项目范围的蔓延,计算出来的结果会与当初估计的不同。

因此,在项目结束时还需要对项目的范围情况重新进行估算,这个时候估算的结果才能最准确反映项目的规模。

功能点分析的步骤本文将以国际标准IFPUG(International Function Point Users Group)组织提供的功能点估算法V4.1.1为基础进行讲解。

如下图所示,首先大家应该了解功能点估算法的使用步骤。

图1 功能点估算法的步骤具体步骤包括:1. 识别功能点的类型。

2. 识别待估算应用程序的边界和范围。

3. 计算数据类型功能点所提供的未调整的功能点数量。

4. 计算人机交互功能所提供的未调整的功能点数量。

5. 确定调整因子。

6. 计算调整后的功能点数量。

识别项目的类型国际IFPUG组织将软件项目分为三类,功能点估算法适用于任何一类项目:∙新开发项目∙二次开发的项目∙功能增强的项目识别项目的范围和边界使用UML的“UseCase”用例图是以用户角度进行识别项目范围和边界的最好方法,在画用例图时就必须明确系统的边界。

通过系统的边界,我们可以知道哪些功能要计算功能点,哪些功能点是外部系统负责计算的。

以图2为例:一个外贸订单系统只包含录入、修改、删除、查询和统计订单的功能,而汇率查询转换服务是不属于该系统的。

应用程序边界的识别规则大家一定要牢记,不能从技术角度去思考,必须从用户角度来定义;如果项目牵扯到多个系统,那么必须将这多个系统的边界全部描述清楚。

图2 外贸订单系统用例图功能点估算分类功能点估算法将功能点分为以下5类:1. ILF:Internal Logical File内部逻辑文件2. EIF: External Interface File外部接口文件3. EI: External Input外部输入4. EO: External Output外部输出5. EQ: External Inquiry外部查询其中,ILF和EIF属于数据类型的功能点,EI、EO、EQ属于人机交互事务类型的功能点。

以外贸订单系统项目为例:∙录入订单、修改订单、删除订单是EI;∙查询订单是EO∙统计订单是EQ∙汇率查询转换系统为EIF∙订单和客户是ILF识别功能点的重要原则ILF、EIF要与EI、EO、EQ分开计算。

对ILF和EIF复杂度的计算可以简单理解为对数据库复杂度的计算。

对EI、EO、EQ复杂度的计算可以理解为对程序开发复杂度的计算。

一般软件项目都是由数据和程序构成的,因此计算ILF、EIF 和计算EI、EO、EQ之间没有任何关系。

内部逻辑文件与外部接口文件ILF内部逻辑文件内部逻辑文件是指一组以用户角度识别的、在应用程序边界内且被维护的逻辑相关数据或控制信息。

ILF的主要目的是通过应用程序的一个或多个基本处理过程来维护数据。

EIF外部接口文件外部接口文件是指一组在应用程序边界内被查询,但在其他应用程序中被维护的、以用户角度来识别的、逻辑上相关的数据。

因此,一个应用程序中的EIF 必然是其他应用程序中的ILF。

EIF的主要目的是为边界内的应用程序提供一个或多个通过基础操作过程来引用的一组数据或信息。

EIF所遵循的规则:∙从用户角度出发识别的一组逻辑数据。

∙这组数据是在应用程序外部,并被应用程序引用的。

∙计算功能点的这个应用程序并不维护该EIF。

∙这组数据是作为另一个应用程序中的ILF被维护的。

ILF和EIF的复杂性计算ILF和EIF的复杂性是取决于RET(Record element type)和DET(Data element type)的数量。

DET是一个以用户角度识别的、非重复的、有业务逻辑意义的字段。

DET计算的规则如下:∙通过一个基本处理过程的执行,对ILF进行维护,或从ILF/EIF中返回一个特定的、用户可识别的、非重复的字段,那么每个这样的字段算一个DET。

例如:添加一个外贸订单时需要保存“订单号码、订单日期、地址、邮编”,那么对于ILF订单来说它的DET就是4个。

再如:保存订单时还会保存订单的明细。

订单的明细往往作为一个子表进行保存,那么“订单号码”在主表和子表中都同时存在(主外键)。

但以用户角度来识别时,存盘操作是一个最小的单位,那么订单号码只能算做一个DET。

∙当两个应用程序维护和/或引用相同的ILF/EIF,但是每个应用程序分别维护/引用它们相应的DET时,这些DET在这两个应用程序的维护/引用中将单独计算。

例如,一个应用程序的两个“Elementary Process”基本处理过程都需要使用到“地址”的信息,地址信息又可以细分为“国家、城市、街道、邮编”。

那么对于其中一个基本处理过程来说,它将整个地址信息作为一个整体进行处理,只算一个DET;另外一个基本处理过程使用每个地址的详细信息,那么DET就是4个。

RET计算的规则如下:RET是指一个EIF/ILF中用户可以识别的DET的集合。

如果把DET简单理解为字段的话,那RET就可以简单理解为数据库中的表。

RET在ILF/EIF中分为两种类型:可选的(Optional)和必选的(Mandatory)。

计算RET的规则为以下两点:∙在一个ILF/EIF中每一个可选或必选的集合都被计算为一个RET。

∙如果一个ILF/EIF没有子集合,则ILF/EIF被计算为一个RET。

例如:在外贸订单系统中添加一个订单时会保存“订单信息、客户的ID、部门的ID”。

那么订单系统ILF中的RET为:1. 订单信息(必选的)2. 客户信息(必选的)3. 部门信息(可选的)因此ILF中RET的个数为3个。

ILF/EIF复杂度的矩阵如下:1. 开发功能点计算(Development Project Function Point Count)开发功能点计算类型是计算当软件系统开发完成第一次安装给使用者时的功能性大小,此功能性大小亦必须包含从旧有系统数据转换(DataConversion)所需要的功能性大小。

开发功能点计算类型通常必须依软件开发生命周期的进行,重复地计算或修正功能性的大小。

一般后续的功能点数大小的计算是去验证上一次计算所得到的功能点数大小,看看是否有增加的功能性;如果有的话,就必须把增加的功能性大小加入。

一般这种开发功能点大小会依软件项目开发的进行而逐渐增加的现象,称为范围逐渐增加(Scope Creep)。

2. 增强功能点计算(Enhancement Project Function Point Count)增强功能点计算类型是计算软件系统修改(Modification)功能性的大小,包括新增(adding)、删除(deleting)、改变(changing)已安装使用中软件系统的功能性。

一般当已安装软件系统有修改功能性的时候,就必须去计算增强功能点数的大小;当增强功能点数大小计算完成后,也必须去修改应用功能点数(第三类型的功能点计算)的大小,以反映出软件系统功能性大小的变动。

3. 应用功能点计算(Application Project Function Point Count)应用功能点计算类型是计算已安装并在使用中系统功能性的大小,这种应用功能点数也被称为基准线或安装功能点数(Baseline or Installed FunctionPoint Count)。

此功能点数主要是度量目前已安装使用中软件系统提供给使用者的功能性大小。

应用功能点数的初值是软件系统开发完成时计算所得到的开发功能点数(不包含数据转换所需的功能性大小),而且当有增强项目(Enhancement Project)时,其值必须去修正以反映出软件系统维护之后功能性的变动,亦即当有计算增强功能点数时,就必须去修正应用功能点数。

步骤二:定义计算的范围与应用系统的界限功能点数计算的范围(Counting Scope)是由计算的目的所决定,例如是要针对系统或是子系统等进行评估。

而应用的界限(Application Boundary)是代表所评估的系统与外部系统或使用者间的界限分割。

步骤三:计算数据功能性(Data Functions)数据功能性是计算软件系统内所有内部逻辑档案(Internal Logical Files, ILFs)与外部接口档案(External Interface Files, EIFs)的功能性大小。

每一个功能性元素ILF或EIF的大小是依照数据元素类别(Data Element Types, DETs)与纪录元素类别(Record Element Types, RETs)个数的大小来决定其复杂度等级(如表一所示),再依其复杂度等级(低、中、高)给予不同的未调整功能点数(请参阅表五)。

表一:数据功能性ILFs与EIFs的复杂度矩阵步骤四:计算处理功能性(Transactional Functions)计算功能性是计算软件系统内所有外部输入(External Inputs, EIs)、外部输出(External Outputs, EOs)以及外部查询(External Inquires, EQs)的功能性大小。

每一个功能性元素EI、EO或EQ的大小是依照数据元素类别(Data Element Types, DETs)与参考档案类别(File Types Referenced, FTRs)个数的大小来决定其复杂度等级(如表二至表四所示),再依其复杂度等级(低、中、高)给予不同的未调整功能点数(请参阅表五)。

表二:处理功能性EIs的复杂度矩阵表三:处理功能性EOs的复杂度矩阵表四:处理功能性EQs的复杂度矩阵步骤五:计算未调整功能点数(Unadjusted Function Points, UFP)依步骤三求算出软件系统之数据功能性、处理功能性,与其复杂度等级后,便可按照权重分配表(如表五所示)将各功能性元素的个数乘上权重值后加总计算出未调整功能点数。

相关文档
最新文档