每当提及「研发效能」,我们都在谈论什么?
研发效能管理要在保证质量的前提下,思考如何更快地向客户交付价值。在管理实践中,效能度量涉及三大维度:交付速率、交付质量、交付价值。
技术团队对内如何优化开发流程,以提升交付速率和质量?对外如何围绕价值交付,与产品、业务侧同事开展紧密高效的研发协作?在众多急需攻破的效能难题中,Cycle Time 都是极为关键的速率管理发力点。
Cycle Time 原是精益生产的专业术语,描述了某个工序制造一单位产品或某过程完成一个工作循环所需的平均完整时间,可以确定机器或工序的生产能力和效率。
在软件研发中,Cycle Time 是指技术团队从头到尾完成一单位研发工作平均需要的时间,即研发工作从进入开发到发布上线所经历的平均时间。
Cycle Time 是反映技术团队工作速率的结果度量指标,可以帮助团队识别障碍、有的放矢地优化改进并实现更快更好的价值交付。
总的来说,研发团队应该持续跟踪 Cycle Time,灵敏地识别开发过程中的效能瓶颈,并通过建立标准、流程优化、任务拆分等持续改进,增强组织敏捷性,提高开发速率,快速交付价值。
前面说到,Cycle Time 表示一单位研发工作经历从「进入开发」到「发布上线」平均需要的完整时间。
为了便于计算,此处定义一单位研发工作为「Git 中的一个工程任务」。在管理实践中,一单位研发工作也可以是一个故事点数、一个用户故事等等。
技术团队需要提前约定开发流程中每个环节「工作开始」和「工作完成」的标准,并确保所有人都为此达成共识。
基于清晰统一的节点标准,技术团队就可以计算各个环节的平均工作周期,并通过平均值加总得到 Git 工程任务的 Cycle Time。
同时,结合不同环节的耗时分布和交付数量,技术团队还可以制定流程规范和优化方案,将效能瓶颈逐个击破。
技术团队的编码周期过长,可能有以下原因:
因此,提高技术团队的编码效率可以从流程规范和优化、自动化工具的投入,和能力提升与培养三个角度入手。
开展工作的前提是保证技术团队一直在交付最有价值的事情,因此可以采用敏捷开发方法,对需求进行价值排序,确定优先顺序。
第二,同产品团队一起建立协作流程规范,并明确需求准入的标准(DoR),说明含需求粒度、任务拆分和分解、相关的上下文和说明文件等在内的要求。通过加强起点的把控,提升开发速率。
合理利用优质开源项目、时兴的效率工具与自动化插件,加快代码编写的速度并提高质量,以减轻语法检查、手动提交等事务性工作的压力。
同时,鼓励开发人员积极沟通,定期举办内部知识分享会,促进相互学习;建立代码知识库,收纳相关代码以供检索和复用,避免低效和浪费。
由上至下地推行统一的代码规范,鼓励开发人员遵循最佳实践,例如编写干净、文档齐全的代码和使用一致的编码约定,减少调试和故障排除的时间。
定期组织培训或展开指导,持续了解新技术,学习新知识,尝试新工具。不断精进专业实力的同时,主动扩展知识带宽。
Cycle Time 是衡量技术团队开发速率和交付能力的重要指标。在相同的交付质量和价值度量的前提下,更短的 Cycle Time 意味着研发团队能更快地响应市场和需求的变化,更快地向用户交付价值。
Cycle Time 表示研发工作从符合 DoR 并进入技术团队起,到发布上线所需的平均完成时间,与编码、拾取、评审和部署的周期皆有联系。其中,控制好需求准入标准,合理利用新兴技术和项目都有助于缩短编码周期,加快开发速率。
关注研发效能,专注科学管理。LigaAI 将持续分享更多研发效能度量体系的搭建经验,以及度量指标管理方法等干货内容,助力研发团队击碎效能瓶颈。
请持续关注 LigaAI@oschina 帐号,获取更多资讯。
也期待您点击 LigaAI - 新一代智能研发协作平台,在线申请体验我们的产品,与 LigaAI 一起做大做强💪
|