《软件研发效能度量规范》(E³CI)是一项由中关村智联软件服务业质量创新联盟和中国软件行业协会系统与软件过程改进分会共同发起的团体标准。该规范旨在通过体系化梳理和定义研发效能,制定出一套度量原则、框架、方法和指标集,以帮助软件组织、团队及个人构建、执行、评估和提升软件研发效能,实现质量和效率的双重提升。
一、基本内容
E³CI规范的核心理念是以价值为导向,将软件研发效能定义为“持续快速交付高质量有价值的软件产品和服务的能力”。这里的关键词是“交付”,意味着软件产品和服务必须被市场接受并为之付费,否则其价值等同于零。效能被分为三个方面:效率(Efficiency)、效果(Effectiveness)和卓越能力(Excellence),这三者共同构成了E³CI中的“E³”。
规范进一步将软件研发效能的度量分为认知域(Cognition)和改进域(Improvement)两个部分。认知域包括交付价值、交付速率、交付质量、交付成本和交付能力五个方面,目的是提升管理者的认知水平,从而实施改进措施。改进域则反映在认知基础上进行的研发效能改进过程的成效,重点关注交付价值、交付速率、交付质量、交付成本和交付能力等领域的系统或专项提升。
度量方法上,E³CI建议按照确立目标和范围、选取度量指标、实施度量和改进三个步骤来执行。首先,需要明确度量的目标(Goal)和问题(Question),然后选择合适的度量指标(Metric)。这一过程被称为GQM方法。最后,根据选定的指标进行度量和改进,以展现当前状态并对未来进行期望。
E³CI规范还提供了一套详细的指标体系,包括63个认知域指标和5个改进域指标,覆盖了软件研发过程的各个阶段和维度。这些指标被组织成一个矩阵,横向为认知域,纵向为软件研发过程的不同阶段,如需求、设计、开发、测试、发布和运营等。指标分为结果指标和过程指标,其中结果指标具有战略性,影响产品或服务的最终结果,而过程指标则具有战术性,影响结果指标的某些因素。
此外,E³CI规范还强调了度量工具的重要性,如开源研发数据平台Apache DevLake,它能够处理数据汇集、治理工作,并支持数据的分层存储、抽象和映射,以满足速度和可靠性的要求。这些工具和平台能够帮助团队更有效地进行数据查询、读取和管理,从而更好地实施研发效能度量。
《软件研发效能度量规范》提供了一套全面、系统的理论和实践框架,旨在帮助软件研发团队通过科学的方法和工具提升研发效能,实现更高效、更优质的软件产品和服务交付。
二、实施重点
1. 精准设定度量目标:E³CI倡导以价值创造为核心,因此度量目标应紧密围绕软件研发效能的三大核心要素——效率、效果和卓越能力展开。具体而言,目标设定需关注诸如缩短交付周期、提升产品质量、优化成本结构、增强团队协作与创新能力等方面,确保目标与组织的战略愿景、业务需求以及客户期望深度契合。
2. 科学选择度量指标:遵循GQM方法,根据度量目标和问题,从E³CI提供的详尽指标体系中选取最具代表性和针对性的指标。这些指标应具备客观性、可量化、易获取、敏感性高等特性,既能反映现状,又能预测趋势,有助于识别瓶颈、发现问题并驱动改进。例如,对于交付速率的度量,可能选用“功能点每迭代完成数”、“缺陷修复时间”等指标;对于交付质量,则可能关注“缺陷密度”、“用户满意度”等。
3. 构建度量数据采集与分析体系:有效度量离不开准确、及时的数据支持。E³CI推荐使用如Apache DevLake等专业工具,实现研发数据的自动化采集、整合、清洗与分析。通过搭建数据仓库、建立数据模型、设定数据流转规则,确保数据的完整性和一致性。同时,利用数据可视化技术,将复杂的数据转化为易于理解的图表和报告,便于各级管理者和团队成员直观洞察效能状况,做出明智决策。
4. 建立常态化的度量反馈与改进机制:度量并非目的,而是推动改进的手段。E³CI规范强调将度量结果与绩效考核、资源分配、流程优化、技术选型等管理决策紧密关联,形成闭环管理。定期进行效能评审会议,分享度量结果,深入剖析问题根源,制定并执行改进计划。鼓励团队开展敏捷实验,持续验证和调整优化策略,确保改进举措落地生效。
5. 培育效能文化与技能:E³CI规范的落地实施需要全员参与和共识。组织应通过培训、研讨、知识分享等活动,提升员工对研发效能度量的认知与技能,培养数据驱动思维。同时,塑造尊重事实、追求卓越、勇于创新的效能文化,激励团队主动寻求效能提升的机会,形成持续改进的良好氛围。
通过精准设定度量目标、科学选择度量指标、构建高效的数据采集与分析体系、建立常态化的度量反馈与改进机制,以及培育深厚的效能文化与技能,软件组织能够切实提高软件产品的交付速度、质量与价值,实现业务的可持续发展。