返回

提升开发效率,决胜敏捷之道

闲谈

为何团队的敏捷开发实践,效果远不如预期?我们认为是方法不当。研发团队应摒弃加班越多,产能越高,故障越少等传统思想,从而从根源解决痛点,激发团队潜力。阿里巴巴作为互联网科技巨头,其研发的成功之道值得我们深思,因为他们崇尚数据驱动、目标驱动、流程驱动和文化驱动。

“数据驱动是所有效能提升的关键”,阿里巴巴集团质量保障技术专家张冠楠在演讲中明确指出。

在方法上,我们可使用科学的手段收集、分析数据,进而通过全流程实施研发效能提升实践,实现高效开发。本案例分享的就是阿里团队基于此理念的一些实践分享,具体包含下面四个方面。

  1. 需求管理:从数量管理走向质量管控

    开发团队可以通过多种方式减少需求变更,实现业务和研发的良好协同。包括:

    • 数据分析研判: 开发团队应定期对需求变更进行量化,研究需求变更对业务和研发的双重影响,继而找到需求变更的源头,有的放矢地对需求变更进行优化。

    • 需求合理性评审: 开发团队可以建立一套标准的评审流程,通过评审来确保新需求的合理性和价值,剔除不合理需求。同时,团队应重视数据积累,努力构建足够完备、准确的需求池,以便开发者了解已实现的功能及市场反馈。

    • 需求排期与管理: 合理的排期规划,有助于将开发任务与项目目标紧密结合,同时促进开发者协同配合,提高研发效率。

  2. 研发提效:从过程导向走向结果导向

    研发团队应关注研发过程的优化,通过度量和反馈机制实现提效。度量上,团队可以通过统计代码提交量、交付频率、部署成功率等,衡量出开发团队的生产效率。针对度量的结果,团队应制定相应的改进计划。值得注意的是,每个团队都应根据各自的具体情况构建度量体系。

  3. 质量保障:从验收型走向预防型

    通过数据分析,发现研发过程中问题产生的根源,继而做出相应的整改,将质量保障由验收型走向预防型。具体包括如下几个实践:

    • 注重测试人员和开发人员的沟通与协作: 鼓励测试人员和开发人员在测试用例设计阶段就建立联系,帮助开发者更好地理解需求,减少不必要的返工。

    • 引入故障注入机制: 帮助团队提前发现潜在问题,促进风险控制。

    • 上线故障的复盘: 对于上线故障,团队可以组织专项复盘,帮助研发团队不断提高故障预防能力。

  4. 流程优化:从需求到运维的全流程优化

    开发团队应注重对研发全流程的优化,而非简单地关注其中某个环节。敏捷团队需要花费一定精力优化从需求到运维的全流程,优化工作涉及以下两个重要方面:

    • 服务稳定性优化: 可靠的应用和服务才能为团队持续优化、提升效率提供保障。为此,团队应提高系统可靠性和可用性。

    • 云原生技术应用: 团队应主动拥抱云原生技术,云原生技术是未来软件架构的主流趋势之一,可极大地助力团队实现高效开发。

通过上面这些实践,阿里团队实现研发效率的大幅提升,一些指标甚至提高了数倍之多。这说明研发提效并非是一句空谈,也不是不可能实现的。

最后,张冠楠对本次分享做了总结:注重数据积累,实现数据驱动;坚定不移地推进文化建设,建立良好的研发团队文化;关注持续改进,以持续改进为团队注入源源不断的生命力。只要按照这些原则去做,团队就一定会取得一个又一个成功。