研发效能提升“双流模型”解读
时代背景与挑战
当前时代变化迅速,研发效能的重要性与紧迫性显著提升。研发团队面临“大鱼吃小鱼”、“快鱼吃慢鱼”的竞争压力,需关注研发效能的“灵魂拷问”:
- 研发团队的忙碌是否代表高效率?
- 敏捷是否是提升研发效能的银弹?
- 自动化测试是否真正提升软件质量?
- 研发效能的提升是否一定由技术驱动?
- 研发效能是否真的可以提升?
这些问题揭示了研发效能的“鸿沟”,即期望与实际效能之间的差距。各大行业龙头企业开始关注研发效能,以应对产品层面的“烟囱效应”。
研发效能提升的“第一性原理”
研发效能提升的核心在于构建“顺畅、高质量地持续交付有效价值的闭环”,通过数据驱动实现长期质量与客户价值的提升。
研发效能提升的“双流模型”
“双流模型”包含两大阶段:
-
需求阶段(开发开始前)的效率提升实践
- 需求优先级原则(KANO模型):区分基础功能、亮点功能、期望功能、无差别功能及反向功能,以用户满意度为导向。
-
个人本地开发和测试阶段的效率提升实践
- 高效获取开发环境:优化环境配置流程。
- IDE精准代码提示:基于大数据智能推荐,减少按键次数(如Python示例中从311次降至56次)。
- 本地静态代码检查(SonarLint):实时检测代码问题。
- Java单元测试用例自动生成(EvoSuite/DiffblueCover):自动生成测试代码,提升测试覆盖率。
- (本地)单模块功能测试:快速验证模块功能。
-
代码合流阶段的效率提升实践
- 代码评审(Code Review):
- 核心理念:代码评审是工作量,需保证逻辑正确,避免主观评判。
- 最佳实践:响应快、找对人、多批次、小批量。
- 社会属性:促进知识传播、设计共识、代码可读性。
- 度量指标:基于观察而非考核,如单次变更代码行数、变更频度、响应时间等。
-
集成测试与验证阶段的效率提升实践
- 测试基础架构服务化与测试中台:
- 通过统一服务框架(如Test Bed Service、SUT Setup Service)管理测试环境、数据及执行,实现高效集成测试。
核心观点与结论
研发效能提升需从需求阶段、个人开发测试、代码合流及集成测试等多个环节入手,通过数据驱动和流程优化实现高效交付。双流模型强调需求优先级管理、自动化测试、代码评审及测试服务化,以提升整体研发效能。