功能点估算方法_第1页
功能点估算方法_第2页
功能点估算方法_第3页
功能点估算方法_第4页
功能点估算方法_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件项目估算方法2011年1月目录估算的目标和范围如何做估算功能点估算法实例介绍问题与思考2什么是估算什么是项目估算项目估算:指客观地根据项目特性、约束条件,采用一定的估算方

法对项目的规模、工作量、进度或成本进行估算,从而

形成项目开发周期、所需成本和资源的合理推断或估计。项目估算活动贯穿于整个软件生命周期。项目计划和项目估算间差距不超过20%,项目经理可以通过增加人员投入、加班等措施来达到业务目标。但是如果差距超过20%后,不减少需求范围那么牺牲的就是质量了。34估算对象通常估算的对象有规模、进度、成本、工作量等。估算对象典型样例和单位估算目标规模代码(千代码行)、功能点√工作量人月√进度工作日或月成本元彼规模与此规模在实际的估算过程中,我们常常直接进行工作量估算,所以很容易混淆项目规模和工作量。估算中的“规模”特指软件系统本身的规模大小而不指工作量大小,一般使用诸如代码行、功能点、用户案例(Use

Case)或者其他度量单位来估算给定项目属性集的技术工作的范围。估算有什么用估算的作用在于为项目计划制订提供一个客观的依据5估算典型过程先对规模采用估算方法进行估算,然后根据规模估算值计算出工作量,进而推算出进度和成本,估算过程见下图:6进入估算的思想准备什么才是良好的估算?是指对项目实际情况有足够清晰的了解的估算,它让项目负责人可以做出好的决策以控制项目并达成目标。从数据统计上看,一个估算良好的项目,单点估算值可能和最终结果有所偏差,但最终结果始终在估算范围之内,并且随着项目的进行,估算范围是越来越小的。7进入估算的思想准备在估算中拍脑袋的表现就是即兴估算,就是根据个人记忆在未仔细考虑前给出的看似思考分析过的估算值。下图为即兴估算与评审过的估算的平均误差比较图。一般的即兴估算的平均相对误差量为67%,而一般评审过的估算的误差只有30%,只有前者的一半。8目录估算的目标和范围如何做估算功能点估算法实例介绍问题与思考9估算的时机项目估算的时点要求项目估算活动贯穿于整个生命周期,随着项目的开展不同阶段的项目估算能为项目开展提供不同精确度的估算值作为项目参考依据,因此根据本行实际情况要求在以下三个点进行项目估算活动概要设计阶段10概要设计完成估算项目成本项目组支持项目成本复核立项阶段

启动阶段业务需求大纲已完成

业务需求说明书完成估算项目成本

估算项目进度

IT支持小组

项目组支持项目IT预算

支持项目计划制定估算的逐渐精确为什么要多次估算?随着项目的开展,项目的不确定性因素不断通过各种决策被消除,估算的准确便获得提高,因此需要进行多次估算。每次估算都有其相应的价值。11怎么做估算12选择估算方法时,要考虑我们要估算的对象、被估算项目的规模、软件开发方式、所处的开发阶段以及需要的估算准确度的影响。这些因素可能的情况见表格:影响因素可能情况估算对象规模、工作量、进度、特性项目规模小、中、大开发阶段早期、中期、后期软件开发方式迭代式、顺序式或两者皆可可能的准确度低、中、高常见估算方法估算方法判断条件工作分解结构WBS类比估算宽带

Delphi法功能点法专家估算法Pert主客观性较主观较客观主观客观主观估算对象工作量规模、工作量、进度规模、工作量、进度规模规模、工作量、进度项目规模中大小中大中大小中大小中大开发阶段早期-中期早期-后期早期早期-后期早期-后期迭代式或顺序式两者皆可两者皆可顺序式顺序式两者皆可可能的准确度中中中高高13目录估算的目标和范围如何做估算功能点估算法实例介绍14功能点估算方法15什么是功能点估算从用户角度出发通过对所提供的软件功能进行分析和量化以度量软件的规模的一种方法目标是度量用户要求和能够接收到的功能提供一种与具体实施方法和技术无关的对进行度量的手段一种相对来说比较简单的对规模进行度量的手段在不同的项目和组织之间能够保持一致的度量方法功能点估算方法的好处提供对软件进行横向比较的基本判断依据帮助软件开发组织从规模出发判断一个软件项目的日程、人力和成本为一个组织判断自己的质量和生产率提供

“分母”用来从功能角度度量一个采购软件的规模16目录估算的目标和范围如何做估算功能点估算法准备开始功能点计算计算未调整功能点数计算调整系数计算调整后功能点数17开始功能点估算功能点估算流程18开始功能点估算1

确定此次功能点估算的类型开发项目为用户第一次安装应用时所提供的功能多少的度量升级项目为用户提供升级项目对目前系统所提供的功能修改、增肌和删除的功能数量的度量应用对一个已经安装的应用系统进行度量项目开始时进行的功能点计算是对应用将要给用户提供的功能的预测,需求变更、细化都可能造成与最终的功能不符,因此在项目结束时需要重新对功能点进行计算,方能真是反映提供给客户的功能状况。19开始功能点计算2

识别计算范围和应用边界开发项目范围为所有被影响的功能,包括新建或客户化的功能升级项目范围为所有新增、变更和删除的功能应用的功能点计算的范围受到计算目的影响,可能仅包括用户用到的功能也可能包括所有交付的功能20开始功能点计算21应用边界表示所度量的软件和用户之间的边界边界识别规则边界的定义必须基于用户的视角,边界必须是用户能理解和描述的相关应用之间的边界是由用户看到的不同功能区域来划分,而不是由技术考虑来划分的应用之间初始的边界不会因为功能点分析而改变3

估算数据功能和交易功能223

估算数据功能和交易功能23识别数据和交易功能时涉及的名词解释3a

识别数据功能识别数据功能(Data

Functions)内部逻辑文件(ILF)指一组用户能够识别的,存在内在逻辑关系的数据或控制信息。数据的集合必须是逻辑相关的且是用户可识别的这些数据或控制信息必须是在本应用的边界内被维护的外部接口文件(EIF)是指一组用户能够识别的,在本应用中被引用的,以及存在内在逻辑关联的数据或者控制信息。数据的集合必须是逻辑相关的且是用户可以识别的这一组数据或控制信息必须在应用内被引用,但并非在本应用内这一组数据或者控制信息的维护工作不是在本应用内进行的这一组数据或者控制信息是另一个应用的ILFYYDHYH-PE-D-002-项目估算表243b

识别交易功能识别交易功能(Transactional

Functions)–外部输入(EI)指一个处理来自本应用边界之外的一组数据或者控制信息的基本处理。目的是为了维护一个ILF或者改变系统的行为。数据或者控制信息是从应用边界以外接收到的如果接收的不是控制信息,至少有一个ILF被改变该基本处理与其他EI相比较应符合:–独特的处理逻辑–识别出不同的数据元素–引用不同的ILF、EIF253b

识别交易功能识别交易功能(Transactional

Functions)–外部输出(EO)指一个向应用边界之外发送数据或者控制信息的基本处理。目的是为了向用户展示一组经过逻辑处理(排除提取)后的衍生数据或者控制信息。与其他EO相比应符合:–独特的处理逻辑–识别不同的数据元素–引用不同的ILF/EIF满足以下规则之一–至少包含一个数学公式–创建衍生数据–维护至少一个ILF–改变系统行为263b

识别交易功能识别交易功能(Transactional

Functions)–外部查询(EQ)指一个向应用边界之外发送数据或者控制信息的基本处理。目的是为了向用户展示提取的数据或控制信息。与其他EO相比应符合:–独特的处理逻辑–识别不同的数据元素–引用不同的ILF/EIF满足以下所有规则–从ILF或EIF中提取数据或者控制信息–不包含数学公式–不生成衍生数据–不维护ILF–不改变系统行为YYDHYH-PE-D-002-项目估算表273c

计算复杂度28计算复杂度时涉及的名词解释计算数据功能复杂度29计算数据功能(Data

Functions):ILF或EIF的复杂度是由数据元素类型(DET)数和记录元素类型(RET)数决定的数据元素类型(DET)指的是一个用户可以识别的、非重复的域。每一个通过执行基本处理从ILF或EIF进行维护或者访问的用户可以识别的以及非重复的域都作为一个DET每一个在ILF或者EIF中作为对其他数据功能的联系而存在的字段都应该作为一个DET记录类型元素(RET)指的是一个EIF或ILF中用户可以识别的数据的子集。在一个ILF或EIF中的任何一个必须的或者可选的数据子集必须被计数为一个RET或者如果一个ILF或者EIF中不存在数据子集,则该ILF或者EIF被计数为一个RET计算数据功能复杂度计算ILF和EIF的复杂度功能点决算汇总表(项目为边界)30计算交易功能复杂度31计算交易功能(Transactional

Functions)由数据元素类型(DET)数和引用文件类型(FTR)数决定的–FTR的含义是一个由交易功能所维护的ILF或者一个被交易功能所读取的EIF计算交易功能复杂度32计算交易功能(Transactional

Functions) –EI的FTR计数规则每一个被维护的ILF计为一个FTR所读取的每一个ILF或EIF计为一个FTR对于即被读取又被维护的ILF只计一个FTR–EI的DET计数规则满足以下条件的计为一个DET非重复的用户可识别的进入或者输出该应用的边界的提取或者衍生数据没有穿越应用边界不能计为DET发布到应用之外的每一个信息计为一个DET计算交易功能复杂度33计算交易功能(Transactional

Functions) –EO/EQ的FTR计数规则所读取的每一个ILF或EIF计为一个FTR–EO特定的FTR计数规则每一个被维护的ILF计为一个FTR对于即被读取又被维护的ILF,只计一个FTR计算交易功能复杂度34计算交易功能(Transactional

Functions) –EO/EQ的DET计数规则每一个进入应用边界的用户可识别的,非重复且确定

什么数据何时或怎样被生产/提取的数据计为一个DET。每一个用户可以识别的,不重复的退出该交易边界的数据计为一个DET一个DET既进入又推出则只计一个发送到应用之外的每一个信息计为一个DET触发基本处理的多种方法计为一个DET处理所提取或者衍生的数据没有穿越应用边界的则不计为DET不要将格式化文本计为DET不要将页码信息和系统标记计为DET计算交易功能复杂度计算EI、EO和EQ的复杂度功能点决算汇总表(项目为边界)354

计算调整系数36计算调整系数(VAF)调整系统(value

adjustment

factor-VAF)–标准功能点计算方法–目前采用的调整系数功能点估算调整系数计算表功能点决算汇总表(项目为边界)375

计算调整后功能点38计算调整后功能点数开发项目功能点的计算功能点包括的内容用户需求中包括的应用功能,即软件安装后所提供的满足用户业务需求的功能用户需求中包括的转换功能,即安装时用来转换数据的功能或者满足用户其他特定转换要求的功能应用的调整系统计算公式DFP=(UFP+CFP)*VAF说明:DFP

开发项目的功能点UFP应用在安装以后向用户提供的未经调整的功能点

CFP额外的转换功能的未经调整的功能点功能点决算汇总表(项目为边界)39计算调整后功能点数40升级项目功能点的计算功能点包括的内容用户需求中包括的应用功能,包括升级项目所增加、删除和改变的功能用户需求中包括的转换功能,即安装时用来转换数据的功能或者满足用户其他特定转换要求的功能应用的调整系统,升级项目包括升级前和升级后的应用调整系数计算公式EFP=(ADD+CHGA+CFP)*VAFA+DEL*VAFB说明:EFP

升级项目的功能点,ADD增加的未经调整的功能点CHGA改变的功能未经调整的功能点CFP额外的转换功能的未经调整的功能点,VAFA升级后的应用调整系数

DEL被删除的功能未经调整的功能点,VAFB升级前的调整系数目录估算的目标和范围如何做估算功能点估算法实例介绍问题与思考41目

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论