配色: 字号:
2-Beyond the Statistical Average(中文版)-John ogilvie
2017-04-17 | 阅:  转:  |  分享 
  


超越统计平均数



为何努力使其简单反而会更困难

JohnOgilvie

国际基准比对标准组织(ISBSG)首席执行官

介绍

?本介绍基于发言者在软件开发谈判和管理

领域的长期经验,包括财务领域,如何通

过基于功能点的方法来达到生产率目标

?这些经验也同样可以用在组织中的软件开

发部门

议程

?国际基准比对标准组织(ISBSG)介绍?

?功能点简要介绍

?开发衡量生产率变化基线的案例

?成功的生产率管理项目的经验教训

ISBSG的使命

ISBSG是一个非盈利组织,其使命为:让商界和政府共同提高IT资

源管理水平

方法包括

提供和使用统一的、经过验证的,最新的和代表当前技术水平的软

件工程知识的公共数据库

我们在国际上有许多合作伙伴,在中国的合作伙伴包括:

为了实现这一使命

ISBSG建立、开发和维护两个国际IT数据库:

-软件开发和增强数据库

-超过7500个项目

-维护和支持数据库

-超过1000个应用

ISBSG的与众不同之处

它是唯一任何人都可以通过适中的价格使用的国际数据库

所有ISBSG的数据都是…

-根据质量标准进行验证和分级

-最新的,独立的和可信的

-来自不同行业和不同规模的组织

-世界各地的行业领袖都积极支持ISBSG的发展,提供最高标准的国际专业

知识



可以通过www.isbsg.org了解ISBSG的产品和服务

生产率原理

?无论什么行业的公司都在努力不断提升生产率



?在制造业,生产率的通用衡量标准是一单位产

出所付出的劳动力和/或成本(比如:一辆汽

车、一条面包、一个圆球灯罩)



?IT行业也是如此,各个公司都希望在技术上的

投资回报可以不断提升



?因此,高级经理们都在要求IT部门证明生产率

是在持续提升





衡量软件开发的产出

?如果不能有效衡量软件开发机构的产出,管理将面临障碍。

?仅仅衡量投入的多少,比如开发工作量,对一个组织的绩效

反映也有限

?广泛使用的产出衡量方法有:

代码行数-相对容易计算,但受语言、编程风格以及应用的物理

结构影响较大

功能点-更难统计,但具有几个重要的优势:

–基于用户对软件功能的认知,因此易于用户理解

–在开发周期中的任何时候都可以使用

–提供一个标准的,可复验的过程

–不受物理或技术实施的限制





国际功能点用户集团(IFPUG)

–世界各地有1450个成员

–具有国际通用标准:

?IFPUG计数实务手册;

?(ISO20926:2003)(功能规模评估的基

本概念);

–认证项目:认证功能点专家

–许多国际和国内会议以及特殊利益委员会

功能点是否可以转化为工作量或成本?

?功能点是规模的量度,在不知道一个应用其它的属性时,

不能转化为工作量或成本

–可以通过建造房屋来类比:

?400平方米的房子是800平方米房子的一半面积

?但是

–房屋建造成本(每平米成本)取决于土地性质、建筑

材料、卧室/浴室数量,装饰材料质量等

–很可能小房子的建筑成本更高

?相似地

–一个800个功能点的应用其功能是400个功能点应用的

两倍,但每个功能点的相对开发成本取决于技术平台、

复杂性、规模等因素。

案例

?ABC公司将应用开发和维护外包出去

?他们希望基于外包前的内部工作绩效建立

一套生产率年度改进目标

?与供应商的合同中明确了共同的风险和回



?超额完成和未完成相应的奖金/罚金

案例

?每季度末,评估每部分平均实际绩效,并给予奖

励或惩罚。

?对计算中最小数据量不做要求

?在许多情况下,每一类只有一至两个实际项目

–12个月后,ABC和供应商有许多矛盾。ABC威胁

采取法律措施,而供应商威胁终止合同

?超额完成和未达成目标的标准都受到质疑



案例中出现哪些问题

数据的特点有哪些:

?分布的形态

?异常值的处理

基线:

?需要多少数据

?根据性能的分组是否有意义

评估:

?如何确定生产率的变化情况

?需要多少评估数据



本介绍中使用的数据

本介绍中的数据取自ISBSG开发与加强数据库

?数据质量评级:AorB

?开发类型:加强

?计算方法:IFPUG

?应用领域:商业应用

?开发平台:大型机、中型机、多主机

?分析和表格通过Minitab统计分析软件生成

ISBSG相对大小

?将功能点分组,就像衣服的大小号一样:

相对大小功能大小

1.XXS超-超-小=>0and<10

2.XS超-小=>10and<30

3.S小=>30and<100

4.M1中1=>100and<300

5.M2中2=>300and<1000

6.L大=>1,000and<3,000

7.XL超-大=>3,000and<9,000

8.XXL超-超-大=>9,000and<18,000

9.XXXL超-超-超-大=>18,000

观察数据:描述统计



相对大小数量平均值去尾平均数标准差最小值中位数最大值

1.XXS4327.0119.8445.271.407.90236.30

2.XS15719.0614.2529.830.9010.90271.60

3.S42416.3412.2330.270.4010.00424.90

4.M147013.1911.4712.670.909.6097.90

5.M218714.5213.1012.680.8011.1080.70

6.L3111.6910.2511.631.009.1042.90

7.XL41.501.340.101.303.30

8.XXL20.350.210.200.350.50



观察数据

420360300240180120600

PDR(afp)

DotplotofPDR(afp)

Eachsymbolrepresentsupto17observations.

观察数据

420360300240180120600

1.XXS

2.XS

3.S

4.M1

5.M2

6.L

7.XL

8.XXL

PDR(afp)

R

e

l

a

t

i

v

e



S

i

z

e

DotplotofPDR(afp)

Eachsymbolrepresentsupto16observations.

异常值

异常值是一个特别大或特别小的数,会对统计结果

如平均值等有不成比例的影响,从而导致数据误读

可以通过一系列技巧来处理:

?去掉最大和最小的5%的数据-容易实施

?删除超过平均值两个标准差的数据(容易实施,

但数据应是正态分布)

?假设样本里所有的值都来自相同的、正态分布的

数据

?使用箱形图



箱形图

?箱形图体现了从一四分位(Q1)到三四分位(Q3)的数



?四分位数间距(IQR)是从一四分位到三四分位,其值=Q3–Q1

?平均值、中位数都可以体现出来

?“Whiskers”是1.5IQR

?异常值是超出Whiskers的所有值

?每组都这么处理,去除第7组和第8组,数据点数从1319

减少到1213,减少了106个。

去除异常值后的描述统计

相对大小数量平均值去尾平均值标准差最小值中位数最大值

1.XXS3813.4411.8414.921.406.0053.80

2.XS14713.0812.3110.120.9010.3044.80

3.S38810.6210.137.240.408.6032.70

4.M143310.209.796.380.908.8030.30

5.M217812.5011.898.780.8010.1538.90

6.L288.648.207.041.006.3027.70

去除异常值后的数据分布

484032241680

PDR(afp)

DotplotofPDR(afp)

Eachsymbolrepresentsupto3observations.

评估基线和绩效需要多少数据呢?

?对于确立基线来说,要有足够多的数据点,它

们的平均值能较好地体现总体数据的平均值。

?一个方法是基于统计理论的中心极限定理:

?总之尽量使n>30

?如果数据是高度偏态的,最好有更多的数据



?如果数据是对称的,小于30个也可以

?在案例中,5个数据点不够建立基线



基线和绩效评估需要多少数据?

?在这个案例中,除了建立基线,ABC公司还想确定

是否达到了生产率目标

?统计上来说,我们绩效的真均值95%的置信区间可

以通过以下来表示:

?“我们有95%的概率相信真均值在这个区间里:

CI(置信区间)=S±1.96σ/√n“

?S=样本均值,σ=样本标准差,n=样本量



需要的样本大小















?比如,如果M1规模的项目有15个数据点,平均是S,那我

们确信M1项目的真均值在S±3区间的概率是95%

?因此,是这个区间,而不仅是S这个值需要考虑

如果生产率目标在这个区间里,那么就说明完

成了。

Standard

Deviation

Confidence

Interval

SizeM1=6.3895%90%

±1.0159112

±1.57251

±2.04230

±2.52820

±3.02015

±3.51611

±4.0139

SampleSize@

ConfidenceLevel



基线——分段有价值吗



在决定建立基线和随后的绩效管理使用什么样的分

段方法时,应考虑是否有足够证据表明每段的绩效

不同



分太多段会减少每段的数据量,从而影响评估的置

信区间,就像之前说的那样



如何决定数据段是否不同?



















如何决定数据段是否不同

?区间图表示S&M1可以合起来

?没想到XS和M2是相似的

?可能需要在数据选择标准中增加更多的

属性

?由于数据点太少,XXS和L的置信区间太大,

所以没什么用(分别是38和28)

基线推荐

?对于数据点少的情况应如何处理

?寻找异常值

?努力找到异常值的原因,如果可能在你的数据

中出现,不要删除

?除非不同段之间有真正的区别,否则不要

将数据分段

?你自己的数据总是最好的,行业数据是有

价值的对标,可以为你自己的数据库提供

参考

?评估你的工作和改善情况

成功的生产率管理项目的注意事项



?高级管理层的承诺很重要,项目团队不会在意

生产率,而业务经理也可能质疑其价值

?保证生产率水平是衡量项目的重要因素

?记录管理需要充足的资源

?有必要建立一个数据库来帮助管理生产率数据

?要保证功能点计数的一致性和准确性,审查和

验证过程是必要的



成功的生产率管理项目需要考虑的因素



?时间记录的原则至关重要。首要是保证每个可计费

的小时都被记录,同样需要保证功能点和非功能点

的工作量是分开计算的

?强有力的变化管理原则应尽早到位,即使是时间和

材料等也需要固定价格水平控制,保证变化和返工

对功能点投入的影响得到及时的记录

?生产率数据不应该用来评估个体绩效

?一定要让受过专业训练的认证功能点计数员来计数。

成功生产率管理项目需要考虑的因素

?是对整个合同的平均生产率进行评估,还是根据工作的不同类型进行颗

粒度更细的评估



?如何评估改进情况:

?基于基线。但是随着时间的推进,工作类型可能会和基线期有很大

不同,这种方式可能不再适用。需要追踪工作内容的变化,这样才

不会忽略生产率的改进。

?年同比。能够帮助解决以上问题,但会导致其他问题,比如一段时

间超出预期也会提高下一年的标准



?一定要保证充分的资源可以实施必要的流程和培训等来管理评估体系。

结论

?在建立基线或者评估生产率变化时,需要

更加复杂的统计分析,而不仅仅是计算平

均值。

?在管理生产率时有必要评估产出

?如果有任何问题,请通过

john.ogilvie@isbsg.org和我联系。

W.EdwardsDeming曾说过:除非你是上帝,

否则任何人都必须以数据说话。





献花(0)
+1
(本文系软件造价联...首藏)