在很多情况下,我们在知道全部需求信息之前(已经有足够信息确定系统的ILF、EIF、EI、EO、EQ,但没有足够信息确定DET、RET和FTR)需要做出一个规模估算,此时,我们给出“平均”权重。我们通常称这种方法为快速FPA估算方法,其通常的步骤是: 1.
计算输入EI,输出EO,查询EQ,主控文件ILF,和接口需求EIF的数目。 2.
将这些数据进行加权乘。下表为一个典型的权值表。 3.
估算人员得到功能点=33。 PS:整体功能点估算(FPA) 系统的规模同样可以从两方面来看,即用户的功能观点和开发者的技术观点。用户关心的是系统能为他们做什么,功能规模度量支持这样的观点。开发者关心的是系统内核支持什么,这就和技术规模度量息息相关。在项目的生命周期中,软件规模估算早期一般使用功能规模度量,而在中期则使用技术规模度量。理想情况下,这两种度量应该使用同样的规模描述,并且相互间有一定可行的转换方法。 功能点估算(或FPA)是从用户的观点基于软件功能性来估算和度量应用软件规模的流行方法。功能点估算是在需求分析阶段基于系统功能的一种规模估计方法。系统的功能性规模根据功能点数(FPC)来计算。 功能估算点的原理推导: SIZE系统= SIZE需求
= SIZE功能需求+ SIZE非功能需求
= (SIZE逻辑需求+ SIZE数据需求)+ SIZE非功能需求
= [(SIZE输入+ SIZE输出+ SIZE查询)+(SIZE内部数据+ SIZE外部数据)]+SIZE非功能需求
= SIZEFR+SIZENFR
= [(SIZEEI+SIZEEO+ SIZEEQ)+(SIZELIF+SIZEEIF)]+SIZENFR
= SIZEFR+SIZEFR*VAF
= (1+ VAF )*SIZEFR 功能点估算的方法一般有四步: 1.
计算未调整功能点数(UFP) v
数据文件的相关概念 :
系统边界:它是被测量的项目(或应用)和外部用户域(或应用)之间的分界。
内部逻辑文件(ILF):它是用户可确认的,在应用程序内部维护的、逻辑上相关的数据或控制信息。
外部接口文件(EIF):它是用户可确认的、由被测应用程序引用,但在其他应用程序内部维护的、逻辑上相关的数据或控制信息。
数据元素类型(DET):它是ILF(或EIF)中用户可识别的、唯一的、非循环的字段或属性。
记录元素类型(RET):它是用户可识别的、存在于一个ILF(或EIF)中的一组DET的子组。
文件类型参考(FTR):它是一个被某个事务参考的文件类型。 v
事务处理的相关概念:
外部输入(EI):它表示一个数据从系统边界外进入系统内的基本事务过程。这些数据可能是控制信息或商业信息(如果是商业信息,则它会维护一个或多个ILF)。
外部输出(EO):它表示一个从系统内导出数据到系统外的基本事务过程。在这个过程中,会形成某种形式的报表或输出文件到其它应用中,并且这些导出的数据一般带有计算结果或推导的成分。
外部查询(EQ):它表示一个同时带有输入和输出成分的基本事务过程。在这个过程中,数据从一个或多个ILF(或EIF)中产生,并被导出至系统外部(这些导出的数据一般不会带有计算结果或推导的成分)。 计算开发功能点的方法 v
对于ILF,计算基于其DET和RET的数量。 v
对于EIF,计算基于其DET和RET的数量。 v
ILF和EIF复杂度矩阵: v
对于EI,计算基于其DET和FTR的数量。注意:EI在处理过程中所维护(或参考)的任何一个LIF(或EIF)都可以作为一个FTR计算。
对于所有消息只计算一个DET
将指定EI动作的能力算做一个DET,即使有多种方法触发同一个逻辑处理过程也一样。
EI的复杂度矩阵 v
对于EO,计算基于其输入和输出两端的DET和FTR的总数量。注意:EO在处理过程中读取(或维护)的每个ILF(或EIF)都可以作为一个FTR计算,每个EO至少有一个FTR。
在图形显示中,将每种类型的标签和对应数字算做一个DET
EO的复杂度矩阵 v
对于EQ,计算基于其输入和输出两端的DET和FTR的总数量。注意:EQ在处理过程中读取到的每个ILF(或EIF)都可以作为一个FTR计算。
EQ的复杂度矩阵 v
每个功能的未调整的功能点取决于上述的功能类型(ILF、EIF、EI、EO或EQ)和功能的复杂度(简单、一般、复杂),其赋值如下表。将每个功能的未调整功能点求和,即得到项目的未调整功能点数UFP。
上一篇:老板和项目组之间关于项目周期的博弈 下一篇:项目总结问答引导版 欢迎指正 |