NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

作者访谈:分布式敏捷框架指南

  • 2018-10-19
  • 本文字数:4445 字

    阅读完需:约 15 分钟

本文要点

  • 当个人、团队和组织试图在远程工作中采用敏捷方法时,有一些常见的模式会影响他们
  • 远程敏捷团队确实可行,但他们需要一个框架辅助他们
  • 有一个可以使用的框架探索了需要应对的六个要素——文化、沟通、领导力、团队和工具、组织、产品
  • 一个有用的框架需要提供的不仅仅是实践——跨越距离和文化需要团队采取不同的行为来构建心理安全感

InfoQ 的贡献者和分布式团队专家 Hugo Messer John Okoro Savita Pahuja 扩充了他们关于在分布式团队中有效工作的文章迷你书,并出版了一本名为《分布式敏捷框架》的书。该书为希望使用敏捷方法来交付客户价值的分布式组织和团队提供了一个框架。

该框架探索了影响远程工作的个人、团队和组织的六个方面:

  1. 文化
  2. 沟通
  3. 领导力
  4. 团队和工具
  5. 组织
  6. 产品

对于每一个方面,他们都提供了一组需要探索的问题、需要培养和追求的美德、他们发现的有帮助的实践。

本书可以在这里购买,InfoQ 读者可以在这里下载示例章节。

本书作者向 InfoQ 讲述了他们写作这本书的动机以及书中的要点。

InfoQ:你们为什么写这本书——你们想要解决什么问题?

John Okoro:我们注意到,对于分布式敏捷团队的指导存在差异。也确实有许多敏捷团队是分布式的。

Hugo 已经在开展分布式敏捷博客、模型和迷你书方面的工作。当我们见面讨论这个话题时,我们发现我们对这个话题有着共同的兴趣和经验。这就是我们决定写一本书的原因。

Savita Pahuja:我们一直想与社区分享我们的经验,以及在这个领域工作的其他人的经验,这就是为什么我们有很多实践被社区里的人分享。

Hugo Messer:几年前,我做了一个关于分布式敏捷的播客。Savita 和 John 的采访激励了我,后来在我们的讨论中,我萌生了写一本书的想法。开始时,我们有 4 位作者,但有一位太忙了,无法继续写作。看到“分布式”在敏捷社区中从未得到充分的回答,我们有了最初的想法。大多数框架都涉及这一点,但总是透过框架来看待分布式。我们认为,帮助解决分布式工作中出现的具体挑战是很有趣的。我们采访了许多多年来一直与之抗争的人。在我自己的公司 Bridge,我一直面临着团队分布在欧洲、乌克兰和印度的挑战。我们打算通过这本书帮助人们克服这些挑战。

InfoQ:为什么组织会采用分布式团队模型,尤其是当大多数软件开发团队都采用了看上去偏向集中式团队的敏捷方法时?

Okoro:集中式团队是最好的方法。但实际情况是,敏捷团队通常位于不同的地点。有些近岸,有些离岸,有些在同一个国家的不同办事处,有些在不同的国家。Jeff Sutherland 讨论了地理位置不集中的高效分布式 Scrum 团队。当我们考虑到大规模敏捷 / 敏捷扩展时,这就变得更加重要了。这些类型的团队几乎总是位于不同的地点。

因此,虽然理想的情况是集中式团队,但在实践中通常不是这样,敏捷从业者和开发团队需要知道如何在通常是分布式的领域里工作。我们写这本书是为了帮助提供这种类型的实践指南以及来自其他从业者的故事、美德、问题和实践。

Messer:就像 John 所写的那样,如今的公司需要从全球范围内寻找人才,尤其是在 IT 领域。的确,敏捷在集中式团队中的效果最好;在分布式组织中,这也是可以建立的。虽然团队可能位于不同的地点,但团队本身常常是集中式的。团队之间的工作编排可以以分布式方式进行。例如,产品负责人可以位于美国总部。团队可能位于印度和南美。在更大范围的方法中,首席产品负责人可能在美国,而本地产品负责人可能与不同的团队一起工作。这是在分布式环境中组织敏捷团队的一种方法。

InfoQ:远程工作的常见模式是什么?

Okoro:在敏捷团队中,常见的模式有以下几种:

  1. 客户产品负责人和敏捷 ScrumMaster 以及分布在全球多个地点的开发团队处于不同的地点。如果处理不好,这可能是一种“反模式”,它可能会因为与产品负责人的交流受限而减少了与客户的协作。
  2. 分布式团队的成员分别在不同的地点工作;在这种模式中,为了创建“团队”感或“ba”感,使分布式团队可以进行有效的协作,工具变得更加重要。
  3. 另一种模式是定点分布式团队,这样工作就可以 24 小时不间断地进行。例如,一个 Scrum 团队在泰国,另一个在东欧,还有一个在美国。这些团队可以站立会议来保持一致,或者在站立会议中使用 Slack 之类的工具,并针对其产品进行 24/7 的不间断工作。
  4. 另一种模式是位于多个地点的虚拟跨职能团队,我们认为这是一种优点。这意味着每个地点都有多个角色:ScrumMaster、产品负责人、开发人员……在每个地点。
  5. 还有一种模式与上面的第 4 点相关,就是由多个位于不同地点的集中式团队组成的分布式敏捷产品团队。因此,每个地点都可以获得集中式团队的好处,但是整个团队分布在多个地点。因此,整个产品团队仍然必须牢记实践、美德和问题,就像我们在为了使分布式敏捷团队最有效地开展工作的书中所介绍的那样。

InfoQ:远程工作人员面临的最大挑战是什么?

Pahuja:对于远程团队来说,最大的挑战是在愿景、目标或策略方面不能与组织的其他部分保持一致。没有对齐有很多根本原因,以下是部分原因:

  1. 缺乏沟通——出于人类的天性,人们更喜欢与距离近的人交谈,而不是与其他建筑物或城市的人交谈。因为与不在同一个地方的人沟通不方便,会造成错位和误解,我们都知道误解会破坏高效团队的文化,从而妨碍产品交付。

这个问题在许多组织中都很普遍。因此,我们建议通过增加交流来解决这个问题。最好的方法是时不时地让人飞过来,增加面对面的时间。其次,经常通过视频会议开展讨论。除此之外,使用数字工具提高透明度。

  1. 领导支持——领导者应该以身作则,不管是一个集中式团队还是一个分布式团队,但对于分布式团队来说,使领导者以良好的、足以作为表率的方式工作更重要,这样他们就能在多个地点保持良好的一致性。一旦高层一致了,团队就会和睦相处。
  2. 文化差异——即使团队成员乐于沟通和理解他人,如果他们不懂得如何按照他人的文化规范进行沟通,最终也会导致冲突或互相不尊重。我们建议,团队应该在开始开发产品时使用文化地图或团队地图等工具来了解他们的分布式团队成员,这样他们就可以进行建设性的交流。

InfoQ:组织在建立远程团队时面临哪些挑战?

Pahuja:在产品开发的开始阶段,针对产品特性和所需技能组建团队是一项挑战,尤其是当人们身处不同的地点时。下面是组织面临的常见挑战。

  1. 在一个地点能够获得所有所需技能中的哪一些。
  2. 团队应该如何配置。产品负责人、Scrum 管理者和其他团队成员应该被安排在哪个地点。
  3. 不同地点的团队成员如何在愿景、路线图和特性上保持一致。
  4. 沟通渠道和常规的沟通、协作是什么样子。 

根据我们的经验,多站点小型集中式团队比完全分布式的团队更有效,但在那种情况下,决策不应该完全基于不同地点的可用技能集。创建小型多站点团队,帮助他们培养端到端特性所需的技能,以避免对不与他们坐在一起的人的依赖。

Messer:Savita 介绍了组织在组建团队时可选择的模式。前面已经提到了一个潜在的“趋向”,就是文化差异。我们看到,在许多跨文化团队中,文化影响着我们沟通和合作的方式,但它并不总是可见的。我们生来就有某些习惯和行为。我们出生的文化对这些有很大的影响。一旦我们开始与生活在另一种文化中、习惯迥异的人交流,我们就会面临挑战。在人的层面上,我们认为我们是一样的,我们是一致的,在更深的层面上,我们通常不是。如果我来自一个低语境文化(比如荷兰文化),我习惯于用一种清晰直接的方式来表达。如果一个向我汇报工作的同事有什么问题或者有更好的想法,他会简单地和我分享。现在,当我生活在一个高语境文化中,有很多等级制度,同事会对和我之间的权力距离很敏感。所以他可能会选择不跟我分享他的问题或想法,因为他觉得他可能会伤害我的立场或感觉。我来自低语境文化,我可能会感到沮丧,因为同事似乎在隐瞒什么,似乎“不主动”或“不开放”。

在跨文化的分布式环境中,我们很少有机会解决这些文化误解。因此,我们需要特别注意解决这些问题。与同事公开讨论文化如何影响我们的合作。我们能做些什么。

InfoQ:远程团队如何建立信任和心理安全感?

Pahuja:在远程团队中建立信任并不容易。就像人类的正常行为一样,人们不信任那些相处时间不够长的人,他们没有见过这些人在不同情况下的表现。

所以,组织应该给他们提供足够的会面时间。其中一个有效的方法是在产品规划的开始阶段,让人们从不同的地点飞到一个地点进行初步讨论,并在以后定期进行讨论。否则,试着在视频会议上进行所有的讨论。

如果不创造一种将失败视为改善机会的文化,就无法创造心理安全感。所有地点的负责人都应该通过分享相同的信息和以身作则来创造同样的文化。

InfoQ:对于考虑组建远程团队的管理人员,您有什么建议?

Okoro:首先,让团队至少见一次面。这是建立联系的好方法,有助于建立强大的分布式团队。第二,确保有正确的工具来支持远程协作。共享 Scrum / 看板、视频会议、远程呈现、wiki 等工具有助于跨越团队成员之间的距离。最后,达成工作共识,团队和领导之间共同的价值观有助于进一步改善团队成员之间的协作。我们的书涵盖了其他许多对分布式敏捷团队有益的问题、价值和实践。

InfoQ:对于那些考虑远程工作的人,您有什么建议?

Okoro:首先与你的组织 / 团队建立信任和联系。如果团队还不熟悉你这个人,那么你通常很难开始自己的第一天,并要求远程工作(除非这是你事先安排好的工作任务)。还要确保你能成为远程工作团队中有效的一员。如果其他所有人都位于同一地点,而你是唯一的远程团队成员,那么你可能会发现与团队保持联系是一个挑战。另一方面,如果整个团队都在不同的远程地点,有效地远程工作所需要的支持可能已经到位。

确保频繁检入也是关键。对于 Scrum 团队来说,最理想的情况是在每天的站立会议时间。对于看板团队来说,可能是在每周的站立会议时间。但重要的是,要确保你与团队其他成员保持联系,不要发现自己孤立无援。这需要远程团队成员付出额外的努力,所以提前做好准备是很好的。

我们的电子书的推介链接在这里

关于本书作者

Savita Pahuja  擅长于 Scrum、精益, 看板和其他可视化发现方法。她作为一名开发人员开始了她 IT 之旅,并为组织的敏捷应用做出了贡献。然后,她以顾问和培训师的身份进入了敏捷世界。从那时起,她就开始与采用敏捷的不同客户合作,进行 Scrum 和看板培训。

Hugo Messer  十多年来一直在世界各地建立和管理团队。他热衷于让跨文化、跨地域、跨时区的人合作。他是全球软件巨头 Bridge Global 和分布式团队教育平台 ekipa.co 的所有者。

John Okoro  是 Auspicious Agile 的创始人和 Orbium 敏捷实践的负责人。他为亚洲的 Rally 软件和美国一家管理咨询公司创立了敏捷服务实践。John 使用敏捷方法将近十年了,他是在企业范围和大型分布式组织中使用敏捷实践和方法的专家。John 经常在敏捷和行业会议上发言,并为 InfoQ 做了 DevOps 方面的贡献。

查看英文原文: Author Q&A - A Guide to Distributed Agile Framework

2018-10-19 15:431581
用户头像

发布了 1008 篇内容, 共 374.7 次阅读, 收获喜欢 341 次。

关注

评论 1 条评论

发布
暂无评论
发现更多内容

如何在非 sudo 用户下运行 docker 命令?

愚一

Docker DevOps

什么是物联网中台

老任物联网杂谈

物联网中台 IOT Platform 物联网平台

一个工程师向电信公司的维权

D

Apache Beam 大数据处理一站式分析

李孟聊AI

Java 大数据 数据中台 数据交换 Beam

记一次spring注解@Value不生效的深度排查

捉虫大师

spring Spring Boot dubbo

Linux系统优化

桥哥技术之路

Linux

项目实施要避免哪些坑?

顾强

项目管理

18个PPT,29个提问解答,都在这儿啦!

Apache Flink

大数据 flink 流计算 实时计算

读书·行路·问心·求道

黄崇远@数据虫巢

读书笔记 个人成长 读书

MacOS配置网络命令

编程随想曲

macos network

用jdk8的stream实现斐波那契数列

编号94530

jdk stream 斐波那契 fibonacci

Python 有哪些黑魔法?

极客时间

Python 编程语言

思维导图学《Linux性能优化实战》

Yano

Linux 后端

centos7.6操作系统安装

桥哥技术之路

Linux

当dubbo多注册中心碰上标签路由

捉虫大师

dubbo

nacos的一致性协议distro介绍

捉虫大师

nacos

skywalking内存泄露排查

捉虫大师

dubbo 内存泄露

身为程序员,怎么接私活赚外快?

爱看书的小代码

IPFS 星际传输协议的入门(二)

AIbot

区块链 分布式数据库

XOR异或运算在计算机中的应用

王坤祥

XOR 异或运算 对称加密

SpringBoot中如何优雅的使用多线程

读钓

Java spring Spring Boot

以为是青铜,没想到是王者的dubbo标签路由

捉虫大师

dubbo

在Kubernetes上运行SpringBoot应用

铁花盆

Docker Kubernetes Spring Boot

Ledge:这可能是距今最好的『DevOps + 研发效能』知识平台

Phodal

DevOps 敏捷开发 软件开发 研发效能

零基础应该如何学习爬虫技术?

极客时间

Python 编程 爬虫

Sentinel在docker中获取CPU利用率的一个BUG

捉虫大师

Java sentinel cpu

LeetCode 前1000题二叉树题目系统总结

Yano

面试 算法 LeetCode 二叉树 刷题

一次漫长的dubbo网关内存泄露排查经历

捉虫大师

dubbo 内存泄露

Docker运行常用软件:MySQL,Redis,Nginx,RabbitMQ,Neuxs,Gitlab

读钓

MySQL nginx Docker gitlab

都在说实时数据架构,你了解多少?

Apache Flink

大数据 flink 流计算 实时计算

一行代码实现网站可编辑,并解决网站禁止复制的限制

王坤祥

复制 破解 DOM

作者访谈:分布式敏捷框架指南_文化 & 方法_Shane Hastie_InfoQ精选文章