3 使用ISBSG数据了解团队绩效

      ISBSG 收集行业数据,使用 ISO/IEC 标准化的、客观的、可重复的、可审计 的方法(如 Nesma、IFPUG 和 COSMIC 功能点)来衡量产出。ISBSG“新开发和增 强”存储库中包含数千个已完成的项目、发布版本和 sprint,可以通过这些行业 数据进行判断和决策。决策为了了解团队 A 的 PDR 绩效,可以将其与行业平均水平进行比较。图 2 展 示了如何筛选 ISBSG 数据集,该数据集为 MS Excel 文件。以下为筛选条件:
    •    数据质量等级=A 或 B
    •    项目年份>2015
    •    主要编程语言=Java
    •    计数方法:IFPUG 4+或 Nesma(方法基本相同)
    •    相对规模:XS 或 S(10–100 FP)
    •    项目类型=增强

图2 ISBSG存储中数据筛选

      筛选过后得到 341 个数据,图 3 显示了这些数据的分布。
  
图3 2021年ISBSG新开发和增强存储库中Java项目的PDR分布
 

      由于这些分布向右倾斜,所以使用中值而不使用平均值来表示市场平均水平。因此,对于此数据集,中值为 8.1 小时/EFP,通常称之为“市场平均值”。现在可以评估 Java 团队(团队 A)的绩效,即 12.9 小时/EFP,在分布中处 于 P80 和 P90 之间。在分析 PDR 值时,较低的值表示创建一个功能点所花费的时间较少。因此,与行业市场平均水平相比,A 队的绩效不是很好。生产率指数是一个可用于将团队 PDR 与行业平均值进行比较的指标。该指 标计算方式为:1-(团队PDR/市场平均PDR)。因此,团队 A 的生产率指数为1–(12.9/8.1)=-60%。因此,该团队的表现比市场平均水平差 60%。当对所有团队都进行计算时,它可以突出表示高绩效和低绩效团队。如图4所示,显示12个团队的生产率指数趋势。
图4 不同团队的生产率指数比较

      如图所示,生产率指数在一年中测量了 4 次。中间的虚线为 0%,表示市场平均水平为 0%。在此图中,很容易看出哪些团队的表现优于市场平均水平,哪 些团队的生产效率较低。造成这种情况的原因可能是高绩效团队采取了某些最佳 实践方式,或者他们拥有更多的经验和技能。然而,这些衡量标准并不是用来惩 罚团队或个人的,相反,可以将它们作为改进的基础。此外,在完全为外部团队 的情况下,可以在合同中标明这些指标,这样就可以根据产出来衡量供应商的价值了。


4      结论

      通常情况下,人们很难准确衡量出软件开发团队的产出,但 NESMA 引入的 增强功能点(EFP)可以有助于确定团队产生的价值。结合统计数据,可以确定几个重要指标:项目交付率(生产力的倒数)、成 本效率、交付速度和程序质量。这些指标与 ISBSG 的行业数据进行比较可以为 管理层提供更多的参考价值。
      在 ISBSG excel 中筛选相关数据集,数据分布显示了各个团队的表现。可以 根据行业平均水平(中位数)计算绩效,每个团队都可以了解他们在相应指标下与 行业平均水平的对比。这种方式有助于管理层了解各个团队的绩效表现,并进行有效改进。

5  国际软件基准标准组(ISBSG)

      ISBSG 是由国际软件度量协会于 1997 年成立的一个非盈利性组织。主要目 的是促进 IT 行业的数据使用,并提升软件过程和软件产品。ISBSG 是一个独立的国际组织,收集并提供软件开发项目和运维活动的行业 数据,以帮助软件行业中的所有组织(商业和政府,供应商和客户)了解并改进 绩效和决策。ISBSG 制定了软件数据收集、软件数据分析和软件项目基准测试过 程的标准,是相关实践的国际思想领导者。ISBSG 的任务是支持商业组织和公共组织提升 IT 软件项目和运维合同的评 估、规划、控制和管理。ISBSG 维护并增加了 2 个数据库:IT 软件开发和 IT 运维数据存储库。该数据来源于国际 IT 组织,可从 www.isbsg.org/project-data 网站获取。