用于软件项目工做量估算的方法有以“估”为主的专家法和类推法,以“算”为主的类比法和方程法。在软件估算的实践中,类比法和类推法也是广泛使用的估算方法,但不少人搞不清两者的应用范围和估算步骤,如今笔者就对这两种估算方法作一下详细介绍。数据库
一、类比法markdown
类比法是指将本项目的部分属性与相似的一组基准数据进行比对,进而得到待估算项目工做量、工期或成本估算值的方法。类比法是基于大量历史项目样本数据来肯定目标项目的预测值,一般是以50百分位数为参考而非平均值。选择类比法进行估算,应根据项目的主要属性,在基准数据库中选择主要属性相同的项目进行比对。框架
类比法适合评估那些与历史项目在应用领域、系统规模、环境和复杂度方面类似的项目,经过新项目与历史项目的比较获得估计数据。类比法估算结果的精确度取决于历史项目数据的完整性和准确度。所以,用好类比法的前提条件之一是组织创建起较好的项目后评价与分析机制,对历史项目的相关属性创建基线数据。
适用范围:
当需求极其模糊或不肯定时,若是此时有与本项目相似属性(如规模、应用类型、复杂度、开发团队经验等)的一组基准数据,则可直接采用类比法,充分利用基准数据来估算工做量。类比法能够在整个项目级上作基准比对,也能够在子系统级上进行。
估算过程:
1) 肯定待估算项目所具备的属性特色,如系统的规模、复杂度、应用类型、业务领域、开发人员的经验和能力等。
2) 查询历史数据库并筛选“最类似”的项目属性数据。
3) 若是待估算项目属性与历史项目的主要属性相似,则可依据历史项目的基线数据直接得出待估算项目的工做量合理范围。
4) 若是同时知足待估算项目主要属性的历史项目太少,则可针对待估算项目的每一个属性与历史项目相应属性的基准数据分别比对,再分别计算得出P25/P50/P75的平均值做为估算值。
5) 通常状况下,取P50的工做量数据做为待估算项目工做量最可能的值。
应用示例1:
项目范围描述:为某银行新开发应用驾驶舱项目,以支持金融相关业务数据的图形化展现和决策分析,如经营指标、绩效指标、财务指标、风险指标、监管指标等,使用仪表盘技术,综合展现现状及目标完成进度以帮助了解目前经营指标是否均衡发展,市场规模是否具备良好发展态势。
对待估算项目的主要属性进行识别,分别为:应用类型(BI)、业务领域(银行)、新开发项目。
经查询企业基准数据库后发现,公司作过55个与待估算项目属性基本相同的项目。
查询结果以下:ide
从表中数据可得出待估算的项目最可能的工做量为3845人时(P50),合理的工做量范围在3366人时(P25)和4210人时(P75)之间。
应用示例2:
项目范围描述:为某集团企业开发一套结算报销审核和资产管理系统,以支持该单位的报销单据的填写、审核和审批,并支持固定资产采购的申请、审批和资产的借用、分配和淘汰管理。
对待估算项目的主要属性进行识别,能够识别出项目的3个主要属性是新开发类型、业务领域和应用类型,分别为“新开发”、“集团企业”、“业务处理”。
经查询企业基准数据库后发现,同时符合3个筛选条件的项目只有5个,数量过少,参考价值不大。所以选择单一属性分别比对,查询结果以下:开发
从表中数据可计算出,该项目最可能的工做量为5238人时,计算方法为(5500+5240+4975)/3。工做量估算的合理范围在4744人时和5938人时之间(采用P25和P75的值分别计算平均值)。
二、类推法
类推法是指将本项目的部分属性与高度相似的一个或几个已完成项目的数据进行比对,适当调整后得到待估算项目工做量、工期或成本估算值的方法。选择类推法进行估算,一般只参照1~2个高度相似的项目,同时根据待估算项目与参照项目的差别,进行适当调整。
适用范围:
1) 当需求极其模糊或不肯定时,较难估算工做量,若是此时具备高度相似的历史项目,则可直接采用类推法,充分利用历史项目数据进行估算。
2) 适用评估一些与历史项目在业务领域、应用类型、环境和复杂度等方面的类似项目,经过新项目与历史项目的比较进行估计。
3) 该方法估算结果的精确度取决于已完成项目数据的完整性、准确度,以及两个项目之间的类似度。若是没有相似的项目,该方法就不能应用。
估算过程:
1) 识别出待估算项目的主要属性。
2) 查找本组织曾经作过的相似的历史项目。
3) 对比历史项目,标记差别点,通过调整后计算出待估算项目的工做量。
应用示例:
如下项目是基于某公司银行监管报送产品框架,依据人行和银监会要求的报送制度,作相应的功能定制开发。示例中的甲、乙客户都属于城市商业银行。
项目范围描述:采用公司自有产品框架,为乙银行开发一套知足监管报送制度的系统。银行业务系统包括核心业务系统和信贷管理系统,监管报送数据来自这两个系统,通过数据抽取、清洗、汇总后按要求分别上报人行和银监会。
历史项目状况:公司为甲银行开发过相似的系统,并已上线运行。经统计,项目开发总工做量为75人天,其中监管报送部分的工做量为60人天,行内报表部分的工做量为15人天,即甲银行在监管报送业务功能的基础上,增长了3张行内定制报表。
需求差别:通过对甲、乙客户项目的分析,确认两者的应用类型相同,项目复杂度和业务领域相似,而且在监管报送方面的项目范围相同,但乙银行对行内报表没有提出额外的开发要求。
基于以上信息,采用类推法估算乙客户项目最可能的工做量为60人天,与甲银行在监管报送部分的开发工做量相同。
类比法和类推法估算都依赖于项目的历史数据,类比法要求组织创建基准数据库,而类推法要求新项目和历史项目具备高度相似的部分属性。(本文版权归北京软件造价评估技术创新联盟全部,转载需标明出处)产品