跳到主要内容

提升开发者体验的三个维度

在 GetDX、微软研究院和加拿大维多利亚大学的一项研究中,识别出影响软件开发体验的 25 个因素,发现软件工程师的生产力主要受三个维度的影响:反馈循环、认知负荷和心流状态。

反馈循环认知负荷心流状态
人员

对自动化测试速度和结果的满意度



对验证本地更改所需时间的满意度



对将更改部署到生产环境所需时间的满意度

对代码库复杂性的感知



调试生产系统的难易程度



理解文档的难易程度

保持专注和避免干扰的主观感知



对任务或项目目标清晰度的满意度



在值班期间的中断感知

流程

生成 CI 结果所需的时间



代码审查周转时间



部署前置时间(将更改发布到生产环境所需的时间)

获取技术问题答案所需的时间



部署更改所需的手动步骤



文档改进的频率

没有会议或干扰的时间块数量



不计划任务或请求的频率



需要团队关注的事件频率

目标

  • 对交付软件的轻松感知
  • 员工参与度或满意度
  • 生产力的感知

1. 反馈循环

反馈循环在软件开发中起着至关重要的作用,通过优化价值流和减少软件交付的延迟来实现。开发者收到反馈的速度越快,他们就能越快进行必要的调整和修正。研究表明,频繁部署和较短的前置时间可以将实现性能目标的可能性翻倍。

为了改善 DevEx,组织必须专注于缩短反馈循环。缓慢的反馈不仅会中断开发过程,还会导致挫折和延迟。识别工具可以优化或人类流程可以改进的领域,对于增强反馈循环过程至关重要。

2. 认知负荷

认知负荷是指开发者执行任务所需的心理处理。随着工具和技术数量的增加,开发者面临着越来越大的认知负荷,这有时会妨碍他们提供价值的能力。

高认知负荷可能由于文档不完善的代码或复杂的开发流程而产生。为了改善 DevEx,组织应消除开发过程中的不必要障碍。这包括强调有组织的代码和文档,以及提供易于使用的自助工具,以促进更顺畅的工作流程。

3. 心流状态

心流状态是一种心理状态,特点是完全沉浸、充满活力的专注和对活动的享受。开发者常常将这种状态称为“进入心流”或“处于状态中”。实现心流状态会带来更高的生产力、创新和员工发展。

研究表明,享受工作并经常体验心流状态的开发者表现更好,生产出更高质量的产品。然而,延迟和干扰可能会阻碍开发者达到这种高效的状态。

为了增强 DevEx,组织应专注于创造有利于心流状态的最佳条件。这包括通过集中会议、避免不计划的工作和批量处理帮助请求来最小化干扰。此外,培养一种积极的团队文化,使开发者拥有自主权和机会去应对充实的挑战,对于促进心流状态至关重要。领导者应倡导有利于这些条件的环境。

结论

通过关注 DevEx 的三个核心维度——反馈循环、认知负荷和心流状态,组织可以更好地理解和改善开发者的生产力。通过优化这些领域,团队可以在输出上获得显著改善,最终实现软件交付的更大成功。

References: