ImageVerifierCode 换一换
格式:DOCX , 页数:46 ,大小:93.77KB ,
资源ID:6483106      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6483106.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(功能点分析法指南.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

功能点分析法指南.docx

1、功能点分析法指南功能点分析法指南 版本1.0文档编号:SW_SPP_GUI_FPA_V1.0SEPG文件变化记录单版本号或变更记录号*变化状态简要说明变更日期变更人批准日期批准人*修改状态:A增加,M修改,D删除文件批准单职务签字日期1.功能点分析法概论本章概要地介绍了功能点分析的方法,包括功能点方法的目的以及对功能点分析的方法进行总结。功能点分析是一种从用户的角度对软件开发进行度量的方法。1.1.目标功能点方法度量的是软件的规模,它是主要从逻辑设计的角度出发对提供给客户的功能进行量化的方法。功能点分析方法的目标是:度量用户要求和能够接收到的功能。提供一种与具体实施方法和技术无关的对软件开发和

2、维护进行度量的手段。除了满足上述的目标之外,功能点分析方法还是:一种相对来说比较简单的对规模进行度量的手段。在不同的项目和组织之间能够保持一致的度量方法。1.2.收益功能点方法在组织中的应用包括:用来从功能角度度量一个采购软件的规模帮助用户从提供的功能角度判断一个软件对他们的好处为一个组织判断自己的质量和生产率提供“分母”帮助软件开发组织从规模出发判断一个软件项目的日程、人力和成本提供对软件进行横向比较的基本判断依据1.3.步骤功能点分析方法的主要步骤包括:1.3.1.决定分析的类型功能点分析的第一个步骤是确定分析的类型。功能点分析的方法既可以应用在项目上,也可以应用在应用上。功能点分析有如下

3、三种类型:开发项目功能点分析升级项目功能点分析应用的功能点分析1.3.2.识别分析范围和应用边界分析范围的界定限制了在一次分析中所应该包含的功能范围。应用边界的界定划出了被分析的应用与用户之间的界限。1.3.3.确定未经调整的功能点数未经调整的功能点数(Unadjusted Function Point Count - UFPC)反映了应用向用户提供的功能的数量。 计量用户功能的原则是数出“该应用向客户提供了什么功能”而不是“这些功能是怎么提供的”。在计数过程中只计入用户要求和定义的组件。未经调整的功能点数(UFPC)包括两个大类:数据和交易。这两个类别的进一步定义在下图中:1.3.3.1.数

4、据功能的计数数据功能是指向用户提供的满足内部或者外部数据需求的功能。数据功能有两类,内部逻辑文件和外部接口文件:内部逻辑文件:内部逻辑文件(Internal Logical File - ILF)是指一组用户能够识别的,存在内在逻辑关联的数据或者控制信息。这些数据或者信息应该是在本应用的边界之内被控制的。ILF的主要目的是容纳一组在本应用中由一个或者一组基本处理来维护的数据。外部接口文件:外部接口文件(External Interface File- EIF)是指一组用户能够识别的,在本应用中被引用的,以及存在内在逻辑关联的数据或者控制信息。与内部逻辑文件不同,这些数据或者信息是在本应用的边界

5、之外被控制的。EIF的主要目的是容纳一组在本应用中由一个或者一组基本处理引用到的数据。这就意味着在本应用中的EIF必须是另外一个应用中的ILF。1.3.3.2.交易功能的计数交易功能指的是向用户提供的用来处理数据的功能。外部输入:外部输入(External Input - EI)是指一个处理来自本应用边界之外的一组数据或者控制信息的基本处理。外部输入的基本目的是为了维护一个内部逻辑文件(ILF)或者改变系统的行为。外部输出:外部输出(External Output - EO)是指一个向应用边界之外发送数据或者控制信息的基本处理。外部输出的基本目的是为了向用户展示一组经过了除了提取之外的其他逻辑

6、处理的数据或者控制信息。这里的其他处理包括至少一个数学演算或者对衍生数据的生成。外部输出也可能包括对内部逻辑文件(ILF)的维护或者对系统行为的改变。外部查询:外部查询 (External Query - EQ)是指一个向应用边界之外发送数据或者控制信息的基本处理。外部查询的基本目的是为了向用户展示提取的数据或者控制信息。外部查询的逻辑处理里面不包含数学公式或者计算以及对衍生数据的生成。外部查询不维护内部逻辑文件(ILF),也不会引起系统行为的改变。1.3.3.3.确定调整系数调整系数(Value Adjustment Factor - VAF)反映的是应用给用户提供的功能的概况。VAF 包含

7、了14个基本系统特征 (General System Characteristic - GSC),每一个特征都有特定的规则描述来帮助使用者确定该特征对本应用影响的大小。这些影响值从0到5,分别表示对系统从无影响到具有强烈影响的程度。1.3.3.4.计算经过调整的功能点经过调整的功能点 (Adjusted Function Point)是针对不同类型的使用(开发、升级、应用)使用不同的公式计算得来的。在后面的章节里还会介绍这些公式。2.分析流程2.1.决定分析的类型2.1.1.定义:功能点分析的类型功能点的分析既可以应用在项目上也可以应用在应用上。以下是三种功能点分析的类型:开发项目升级项目应用

8、以下是对这三种类型的定义:开发项目:这种类型的分析为用户提供应用第一次安装的时候所提供的功能多少的度量。升级项目:这种类型的分析为用户提供升级项目对目前系统所提供的功能修改、增加和删除的功能数量的度量;当升级的应用被安装的时候,应用的功能点度量应该得到相应的更新。应用:对应用的功能点分析是对一个已经安装的应用系统进行度量的手段。它也被称为基线功能点或者安装功能点。这个度量揭示了当前应用为用户所提供的功能数量。它在应用第一次被安装的时候确立,在系统升级的时候得到更新。下图说明了这三种类型的分析之间的关系:估算和最终计量的关系在项目开始的时候所进行的功能点分析是对应用将要给用户提供的功能的一种预测

9、,在项目进展过程中,对功能、范围的调整和细化都有可能导致最终发布给用户的系统的功能与最初的估算不完全相符。这种现象有时候被称为范围的偏移(Scope Creep)。在这种情况下,在项目结束的时候对功能点进行重新的计算是非常必要的,只有这样,应用的功能点才能真正反映发布给客户的功能状况。2.2.识别分析范围和应用边界2.2.1.定义本节定义的目的是对分析范围和应用边界进行定义,并且揭示此二者是如何受到分析目的的影响的。对分析目的的定义:功能点分析的目的是提供对业务问题的答案。该目的:决定功能点分析的类型并且通过在划定的范围内进行功能点分析来获得对所需要解决的业务问题的答案。影响了应用软件及其周边

10、的界限的界定。例如,如果人力资源管理模块是作为一个软件包的一部分来提供的,那么分析者可能决定将人力资源管理作为一个单独的应用来看待。分析的目的的例子有:通过进行功能点分析,为项目估算开发第一个版本所需要的人力投入的估算提供输入为已经安装的软件提供一个规模的基线对不同供应商所提供的软件包进行功能上的比较定义计数范围计数范围定义了在一次功能点分析中所需要涵盖的功能范围。计数范围定义了被计数的软件的一个集合或者子集是由这一次分析的目的所决定的识别出为了满足分析目的所需要提供的答案中应该包括的功能可能包含了不止一个应用为了不同的计数目的,该范围的定义如下:在升级项目中,该范围包括所有被增加,改变和删除

11、的功能。开发项目的范围包括所有牵涉到的功能,包括被创建的或者被客户化的功能对应用的功能点分析的范围可能包括被用户使用到的功能或者该应用所提供的所有的功能。2.2.2.定义应用边界应用边界表示所度量的软件和用户之间的边界。应用边界:定义了对于应用来说什么是外界是对应用的“内部”和“外部用户世界”之间接口的概念性定义是交易所处理的数据(EI, EO和EQ)进入和送出该应用的一层“细胞膜”封装了由该应用所维护的数据集合 (ILF)帮助识别出该应用所使用,但并非是由该应用所维护的数据(EIF)是由用户对该应用的商业视角所决定而非技术/实施考虑决定的2.3.规则和流程本节定义了识别分析范围以及定义应用边

12、界时所需要遵循的规则和流程。应用的边界之所以重要,是因为它直接影响到分析的最终结果。同时也是因为边界的划定区分开了进入和输出该应用的数据 (EI和EO)2.3.1.边界识别的规则识别边界的时候必须应用如下的规则:边界的定义必须基于用户的视角,边界必须是用户能够理解和描述的。相关应用之间的边界是由用户看到的不同功能区域来划分,而不是由技术考虑来划分的。应用之间初始的边界不会因为功能点分析而改变。2.3.2.分析范围和应用边界流程步骤行动1建立分析的目的2识别分析范围3识别应用的边界4记录如下条目分析目的分析范围应用边界所有与以上条目有关的假设2.3.3.边界识别的一些技巧使用系统的客户需求或者获

13、得一个系统的流程图,在系统的周围画一个圈,以此区别系统内部和外部的元素。察看数据的维护方式。察看其他数据,例如成本,人力,缺陷等。功能点分析中的应用范围应该和其他的度量数据的应用范围是一致的。2.4.计数数据功能数据功能指的是提供给用户的用来满足内部和外部数据需求的功能。数据功能分为内部逻辑文件和外部接口文件两种(ILF/EIF)。在这里,文件的概念并非是传统意义的文件,而是一组逻辑上相关联的数据的集合。本章将介绍对ILF 和 EIF 的定义,并且解释计数这些功能的规则和流程。2.4.1.定义内部逻辑文件:内部逻辑文件(Internal Logical File - ILF)是指一组用户能够识

14、别的,存在内在逻辑关联的数据或者控制信息。这些数据或者信息应该是在本应用的边界之内被控制的。ILF的主要目的是容纳一组在本应用中由一个或者一组基本处理来维护的数据。外部接口文件:外部接口文件(External Interface File- EIF)是指一组用户能够识别的,在本应用中被引用的,以及存在内在逻辑关联的数据或者控制信息。与内部逻辑文件不同,这些数据或者信息是在本应用的边界之外被控制的。EIF的主要目的是容纳一组在本应用中由一个或者一组基本处理引用到的数据。这就意味着在本应用中的EIF必须是另外一个应用中的ILF。控制信息:控制信息指的是影响到被分析的应用的基本处理的信息。它规定了什

15、么,何时和怎样对信息进行处理。例如,在一个工资系统中规定了每一个场地上员工的发薪日,这个日期就包含了对处理发薪信息的时间要求。用户可以识别的:用户可以识别的指的是对数据组的需求的状态是经过相互认可,被用户和软件开发人员共同理解的。维护:维护的含义是通过基本处理对数据进行修改的能力。基本处理:基本处理指的是对用户来说有意义的最小的功能活动单元。2.4.2.计数流程概述本节描述的是计数流程的大略,主要目的是为了说明计数规则的环境。步骤行动1识别ILF和EIF2确定ILF或者EIF的复杂度以及判断它们对未经调整的功能点的贡献在每一个行动中都需要应用ILF和EIF的计数规则。计数规则包括如下两种:识别

16、规则复杂度和贡献规则具体的规则大略如下:ILF识别规则EIF识别规则数据元素类型(DET)记录元素类型(RET)2.4.3.ILF识别规则要寻找ILF, 就必须找到符合ILF定义的数据集合或者控制信息的集合。这样的集合必须符合如下的规则:数据的集合必须是逻辑相关的并且是用户可以识别的。这些数据或者控制信息必须是在本应用的边界内被维护的。2.4.4.EIF识别规则要寻找EIF, 就必须找到符合EIF定义的数据集合或者控制信息的集合。这样的集合必须符合如下的规则:数据的集合必须是逻辑相关的并且是用户可以识别的。这一组数据或者控制信息必须是在被应用内被引用,但并非是在本应用边界范围之内的。这一组数据

17、或者控制信息的维护工作不是在本应用内进行的。这一组数据或者控制信息是另一个应用的ILF。2.4.5.复杂度和贡献的定义和规则一个ILF或者EIF的复杂度直接决定了该功能对未经调整的功能点数的贡献状况。每一个ILF或者EIF都必须有一个复杂度与它相关联。该复杂度是由这个ILF或者EIF的数据元素类型(DET)数和记录元素类型(RET)数决定的。DET的定义:一个数据元素类型(DET)指的是一个用户可以识别的,非重复的域。DET计数规则每一个通过执行基本处理从ILF或者EIF进行维护或者访问的用户可以识别的以及非重复的域都作为一个DET。例如,一个账号,就算是在多个字段中进行保存的,也作为一个DE

18、T。又例如,在客户订单处理中计算出来的营业税字段也要算做一个DET。每一个在ILF或者EIF中作为对其他数据功能的联系而存在的字段都应该作为一个DET而被计数。例如:一个关系型数据库的表中的外键在它所联系的两张表中都应该作为一个DET进行计数。RET的定义:一个记录类型元素(RET)指的是一个EIF或者ILF中用户可以识别的数据的子集。RET有两种类型,可选的或者必须的。可选的子集是用户可以选择在一个基本处理中使用或者不使用它来创建或者增加这些数据的实例的子集。必须的子集是用户必须使用其中至少一个的数据子集。例如:在一个人力资源管理应用中,要增加一个雇员的信息,必须输入一些基本数据,一个雇员可

19、以是按月支取薪水的也可以是按小时支薪的。用户已经决定:某个雇员必须是月薪或者时薪类型的。而每一种类型都可以有附加的“子女”的信息。在这个例子中,一共有三种类型的RET:支取月薪的雇员:(必须的)包括基本信息支取时薪的雇员:(必须的)包括基本信息子女: (可选的)RET计数规则:以下两个原则之一必须得到应用:在一个ILF或者EIF中的任何一个必须的或者可选的数据子集必须被计数为一个RET或者如果一个ILF或者EIF中不存在数据子集,则该ILF或者EIF被计数为一个RET2.4.6.ILF/EIF计数流程下图表示了计数ILF和EIF的概要流程:识别流程:步骤行动相关的标准01识别内部逻辑文件ILF

20、识别规则02识别外部接口文件EIF识别规则03确定复杂度和贡献复杂度和贡献确定流程2.4.7.复杂度和贡献确定流程遵循以下的步骤来计算ILF和EIF的复杂度和对未经调整的功能点(UFPC)的贡献步骤活动1根据复杂度和贡献的定义和规则中的要求识别和计数DET以及RET2使用下面的矩阵来决定功能的复杂度:119个DET2050个DET51个以上DET1个RET低低中25个RET低中高6个以上RET中高高3参照下面的表格,为每一个ILF和EIF决定它们未经调整的功能点数ILF参照表:EIF参照表复杂度功能点数低7中10高15复杂度功能点数低5中7高104计算各ILF和EIF对UFPC的贡献,例如:功

21、能类型功能复杂度小计总计ILF低: 1 X7=722中: 0 X10=0高: 1 X15=15EIF低: 0 X5=064中: 2 X7=14高: 5 X10=502.4.8.数据功能计数技巧下面的技巧能够帮助我们应用ILF和EIF的计数规则,但是这些技巧本身并不是规则该数据组是否是一个支持特定用户需求的逻辑的集合?一个应用可以在不同的处理中使用同样的ILF和EIF, 但是它们只被计数一次。一个逻辑文件在一个应用中不可能同时既是ILF又是EIF如果一组数据没有单独被看作一个ILF或者EIF,那么这组数据中的DET应该记入它所属的ILF或者EIF中。不要想当然的认为一个物理文件或者数据库中的一个

22、表就是一个ILF。虽然它们是紧密相关的,但是这种一对一的对应关系并非总是成立。并非所有的物理文件都是一个逻辑文件或者逻辑文件的一部分。数据是在哪里得到维护的?是在应用边界之内还是之外?考察工作流程。在功能拆分的时候,识别出与用户以及与其他应用的接口。完整考察处理过程图表以获得提示。如果一个ILF被多个应用维护,那么对于每一个维护它的应用都要计算一个ILF。这些ILF的复杂度由它在不同应用中的DET所决定。2.5.计数交易功能简介:交易功能代表应用所提供给用户的用来处理数据的功能。交易功能包括外部输入、外部输出和外部查询。本节定义了EI, EO以及EQ,包括了它们的计数规则以及流程。2.5.1.

23、定义2.5.1.1.基本定义外部输入:外部输入(External Input - EI)是指一个处理来自本应用边界之外的一组数据或者控制信息的基本处理。外部输入的基本目的是为了维护一个内部逻辑文件(ILF)或者改变系统的行为。外部输出:外部输出(External Output - EO)是指一个向应用边界之外发送数据或者控制信息的基本处理。外部输出的基本目的是为了向用户展示一组经过了除了提取之外的其他逻辑处理的数据或者控制信息。这里得其他处理包括至少一个数学演算或者对衍生数据的生成。外部输出也可能包括对内部逻辑文件(ILF)的维护或者对系统行为的改变。外部查询:外部查询 (External Q

24、uery - EQ)是指是指一个向应用边界之外发送数据或者控制信息的基本处理。外部查询的基本目的是为了向用户展示提取的数据或者控制信息。外部查询的逻辑处理里面不包含数学公式或者计算以及对衍生数据的生成。外部查询不维护内部逻辑文件(ILF),也不会引起系统行为的改变。2.5.1.2.交易功能的总结交易功能(EI,EO,EQ)之间的主要区别在于他们的目的。下表中列出了这三种功能在目的上的主要区别。外部输出和外部查询的主要区别在于外部输出除了对数据进行表示之外,还可能完成对数据进行修改、维护ILF或者改变系统行为的功能。功能交易功能EIEOEQ改变系统行为PIFN/A维护ILFPIFN/A向用户展示

25、数据FPIPI示例:PI: Primary Intent 该功能的主要目的F : Function 该交易功能具有这项功能,但不是主要目的,有的时候适用N/A: Not Applicable 不适用 2.5.1.3.相关术语的定义基本处理基本处理指的是对用户来说有意义的最小的功能活动单元。控制信息控制信息指的是影响到被分析的应用的基本处理的信息。它规定了什么,何时和怎样对信息进行处理。例如,在一个工资系统中规定了每一个场地上员工的发薪日,这个日期就包含了对处理发薪信息的时间要求维护维护的含义是通过基本处理对数据进行修改的能力。用户用户是发起用户规格说明书的人,也是与应用进行交互的任何人或者对象

26、。例如,在一个人力资源管理系统中,人力资源部的操作员是用户,同时,一个处理福利应用,因为要从人力资源管理系统中提取数据,也是该系统的用户。逻辑处理逻辑处理指的是用户请求进行的完成一个基本处理的需求,逻辑处理的例子包括数据验证例如在增加一个雇员的信息的时候,系统需要对加入的信息进行验证数学公式和计算例如,在对雇员信息进行报告的时候,需要计算领取周薪的雇员数量和领取时薪的雇员数量以及雇员总数等效数据的换算例如一个货币换算基本处理引用了一个货币汇率,但是这个汇率是由一个表中取出的,并不需要进行计算。数据的过滤和选择例如,为了生成一个按照角色选择的雇员列表,一个基本处理将雇员的信息与工作角色进行比较和

27、选择以生成这个列表。分析适用的条件例如,在添加一个雇员的时候,首先判断他是支取月薪还是支取时薪的雇员,然后决定采取何种逻辑处理更新一个或者多个ILF例如:当添加一个雇员的信息的时候,雇员这个ILF就被更新了引用一个或者多个ILF或者EIF例如,当添加一个雇员的时候,货币这个EIF被引用以决定该雇员的薪水折算成美元的数量提取数据或者控制信息。例如,当用户察看薪酬级别的时候,薪酬级别信息被提取出来。运用现有的数据生成衍生数据例如,当生成一个病历代码的时候,例如(SMIJO01)这个代码由下列的数据衍生而来: 病人的名字的前三个字母+病人的姓的前两个字母+唯一的两位数字代码改变系统的行为例如,当把发

28、薪日由每月的15日和最后一天改为每周的周五的时候,发薪这个基本处理的行为就被改变了。对应用范围之外准备和展示数据例如,向用户显示雇员列表接受进入系统边界的数据或者控制信息的例如,用户输入一些信息来添加一个客户订单恢复和重新整理数据例如,用户要求按照字母顺序列出雇员名单2.5.1.4.交易功能执行的逻辑处理总结下表列出了每一种交易功能可能进行的逻辑处理,对于每一种交易功能,有些逻辑处理是必须的,而有些则是可选的。具体见下表:逻辑处理EIEOEQ1 数据验证CCC2 数学公式和计算CM*N3 等效数据的换算CCC4 数据的过滤和选择CCC5 分析适用的条件CCC6 更新一个或多个ILFM*M*N7

29、 引用一个或多个ILF或者EIFCCM8 提取数据或者控制信息CCM9 运用现有数据生成衍生数据CM*N10 改变系统的行为M*M*N11 对应用范围之外准备和展示数据CMM12 接受进入系统边界的数据或者控制信息MCC13 恢复和重新整理数据CCC说明:C = can 该功能可以执行此项逻辑处理,但并非必须M = mandatory 该功能必须执行此项逻辑处理M*=mandatory(*) 该功能必须执行列表中所有带M*标记的逻辑处理中的至少一项N=cannot 该功能一定不能执行该逻辑处理2.5.2.EI、EO、EQ计数规则本节定义计数EI,EQ和EQ时所适用的规则。2.5.2.1.交易功能计数

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1