提升开发者体验的三个维度
· 阅读需 4 分钟
在 GetDX、微软研究院和加拿大维多利亚大学的一项研究中,识别出影响软件开发体验的 25 个因素,发现软件工程师的生产力主要受三个维度的影响:反馈循环、认知负荷和心流状态。
反馈循环 | 认知负荷 | 心流状态 | |
---|---|---|---|
人员 | 对自动化测试速度和结果的满意度 对验证本地更改所需时间的满意度 对将更改部署到生产环境所需时间的满意度 | 对代码库复杂性的感知 调试生产系统的难易程度 理解文档的难易程度 | 保持专注和避免干扰的主观感知 对任务或项目目标清晰度的满意度 在值班期间的中断感知 |
流程 | 生成 CI 结果所需的时间 代码审查周转时间 部署前置时间(将更改发布到生产环境所需的时间) | 获取技术问题答案所需的时间 部署更改所需的手动步骤 文档改进的频率 | 没有会议或干扰的时间块数量 不计划任务或请求的频率 需要团队关注的事件频率 |
目标
- 对交付软件的轻松感知
- 员工参与度或满意度
- 生产力的感知
1. 反馈循环
反馈循环在软件开发中起着至关重要的作用,通过优化价值流和减少软件交付的延迟来实现。开发者收到反馈的速度越快,他们就能越快进行必要的调整和修正。研究表明,频繁部署和较短的前置时间可以将实现性能目标的可能性翻倍。
为了改善 DevEx,组织必须专注于缩短反馈循环。缓慢的反馈不仅会中断开发过程,还会导致挫折和延迟。识别工具可以优化或人类流程可以改进的领域,对于增强反馈循环过程至关重要。
2. 认知负荷
认知负荷是指开发者执行任务所需的心理处理。随着工具和技术数量的增加,开发者面临着越来越大的认知负荷,这有时会妨碍他们提供价值的能力。
高认知负荷可能由于文档不完善的代码或复杂的开发流程而产生。为了改善 DevEx,组织应消除开发过程中的不必要障碍。这包括强调有组织的代码和文档,以及提供易于使用的自助工具,以促进更顺畅的工作流程。