远程敏捷团队的7个最佳实践

远程和分布式团队可以在敏捷软件开发方面出类拔萃,但这需要工作和试验。让这作为您的指导

远程敏捷团队的7个最佳实践
dem10 / Getty Images

敏捷方法 当团队中的每个人都聚集在一个位置时,工作效果最佳。当团队共享一个工作区时,团队成员可以轻松地提问,配对编程任务并解决问题,而无需安排会议。使用网络会议,群聊和电子邮件等技术的效果不如直接进行人与人的交互。

也就是说,组织可以使敏捷方法在远程和分布式团队中脱颖而出,但是这需要一些工作和试验。团队成员必须找到最佳的技术使用方式,并适应沟通方式,以确保团队的生产力,协作和质量。

随着COVID-19的爆发,许多敏捷团队必须从在办公室工作转移到远程工作。对于许多在职业生涯中大部分时间都不在家工作的人以及习惯于面对面交流的团队来说,这将是一种新的体验。此外,由于流行病的流行,某些团队成员可能会生病或面临其他困难,因此敏捷团队必须适应新的工作方式。

本文是一个简单的指南,旨在帮助团队成员,团队和组织从主要的面对面敏捷团队过渡到高度分散的团队。 

选择合适的设备,工具和工作空间

如果您要进行远程工作,请确保您有适合您,您的公司和您的团队的设置。可以将其视为办公室搬家,并花大量时间评估各种选择,并确保您拥有一切所需的东西,以保持工作效率,舒适度以及分散注意力的空间。

考虑这些 长时间远程工作时的12个注意事项 其中包括有关工作纪律,工作空间,设备,网络和工具的建议。

在开始之前,您需要进行的一些更改不会变得清楚。如果连接性较差,则可能需要重新放置无线路由器或切换到有线连接。如果您要进行很多视频会议,则可能需要调整办公桌的位置。您可能需要告诉家人在工作时保持距离。

在场并与队友交谈

敏捷团队通过在协作时间与编码和其他开发活动所需的集中精力之间进行平衡,从而取得成功。在办公室里,看到队友的注意力要容易一些,训练有素的敏捷团队找到避免分心和上下文切换的方法。

远程工作时,团队必须在线,但也要共享其可用性。 Slack和Microsoft Teams等工具可让您设置可用性状态,而其他协作工具则可让您静音通知。当团队开放灵活的工作时间时,使用状态设置至关重要。

敏捷团队必须安排时间进行正式协作会议并完成用户故事,但是团队成员还应该进行闲聊。人们对压力和远程工作的反应各不相同,因此相互检查至关重要。此外,人们在网上和面对面的交流方式也各不相同,并且有新的机会让更多的人参与在线对话。

Scrum主管,技术负责人和产品所有者应定期向团队询问有关他们对需求的理解水平,阻碍其进展的问题以及是否需要提高生产力和幸福感的任何问题。

最后,来自多个团队的Scrum管理员和技术负责人应定期相互联系。他们管理远程团队的经验和问题可能不是唯一的。分享有关如何使敏捷团队进行远程协作的任何知识无疑将使整个团队受益。

审查敏捷仪式的方法

转向远程协作的敏捷团队不必重新设计流程或放弃敏捷仪式。但是,要远程控制,可能需要Scrum管理员重新考虑如何进行会议,具体取决于团队的规模和可用的协作工具。

例如,面对面的团队在日常起立期间查看scrum板,将需要设计该仪式的数字版本。如果团队很小,并且历史上遇到的障碍相对较少,这阻碍了用户故事的工作,那么他们也许可以取消会议,而将其替换为预定的聊天聚会。

对远程敏捷团队的其他建议:

  • 使用数字白板工具进行冲刺计划和设计会议
  • 设置视频网络会议以进行承诺会议
  • 选择一个人在冲刺审核中进行屏幕共享
  • 使用调查或低码应用程序以追溯收集反馈

致力于现实的团队和个人任务

从面对面协作到远程协作的敏捷团队必须重新设置他们的冲刺速度,并审查他们可以实际完成并完成的工作的水平和复杂性。 Scrum主管和敏捷领导者应采用与新组建的敏捷团队类似的做法,并允许团队适应新的工作方式。

例如,由于需要一些队友在冲刺过程中变得不可用,因此提交需要多个团队成员共同贡献的复杂用户故事是不明智的。如有可能,应将这些故事分解为较小的故事,或者如果产品所有者能够取消它们的优先级,则应将其延迟。

同样,敏捷团队可能希望避免提交依赖其他团队工作的故事。额外的协作可能需要几个冲刺才能为新组建的远程团队定义。

增加文档级别

敏捷开发团队将工作代码的优先级放在前期文档上,但这并不意味着不需要架构,API和代码文档。

长时间进行远程工作的团队可能需要讨论文档标准,并查看是否需要做出更大的努力。有时,记录代码可以代替一些有关代码模块如何工作或团队成员如何解决技术问题的现场实施讨论。

投资尖峰,CI / CD和解决技术债务

希望长时间进行远程工作的团队可能会发现,专注于更多的技术故事比需要与产品所有者和利益相关者进行交互的故事更容易。例如,测试多步用户体验涉及产品所有者,设计师,开发人员和测试人员之间的协作。当团队刚刚开始远程工作时,可能难以协调讨论或对最终用户需求达成共识。

还有其他机会可以优先安排工作,这些工作需要较少的协作以及更多的个人专注和创新。优先小 尖峰 测试新想法就是一个例子,特别是如果开发人员可以在很少中断或上下文切换的情况下进行简短的概念验证的情况下。另一种选择是优先处理寻址代码级 技术债务,尤其是重构代码模块,添加单元测试或改善异常处理。第三种选择是花时间发展或改善 CI / CD自动化.

这些更具技术挑战性的任务还可以帮助开发人员专注于直接看到收益的领域完成工作。

审查部署策略并降低风险

高度协作的敏捷团队学会像高性能曲棍球队一样一起工作。在冰球比赛中,即使冰球移动很快并且可以不规则地弹跳,球员们还是会使用既定的打法和即兴发挥来进行混合,既能实现强力的防守性比赛又能实现爆炸性的进攻性比赛。 

现在,将这支队伍从室内竞技场转移到室外的湖泊中,他们将需要一些时间来适应元素。他们会保守防御一段时间,直到他们适应新环境并恢复节奏为止。

敏捷团队和多个团队的敏捷组织也是如此。团队是在旧系统上工作还是在使用  最新的devop做法.

要求敏捷团队进行远程工作的条件可能会影响业务的其他方面,包括运营,客户期望和供应链动态。

客户和最终用户可能不希望使用相同的部署频率,尤其是如果该频率有损于应用程序的可靠性或性能的话。如果您拥有与您的企业供应商一起使用的API,则可能难以访问这些供应商来参与测试更改。如果软件应用程序受到法规遵从性或监管部门的监督,那么可能很难获得所需的审查和批准。

敏捷团队必须意识到影响组织业务模式,客户和工作环境的更广泛的变化。从部署的速度和频率到优先考虑的工作类型和用户故事等所有方面的组织原则都需要从新的运营角度进行审查。

敏捷的很大一部分是,不仅要遵循敏捷实践,还要认识到何时以及如何进行更改。

阅读有关敏捷开发的更多信息

版权© 2020 IDG通讯,Inc.