我们如何作为客户的扩展分布式团队运行敏捷项目

已发表: 2018-12-14

Computereconomics 最近的一份报告发现,在 2018/19 年期间,应用程序开发过程已成为见证最大外包机会的过程——全球 56% 的组织将其开发需求外包。

这种对外包移动应用程序开发需求的需求增加背后的原因与往常一样 - 成本低于雇用本国开发人员所必须支付的成本,从而可以更加专注于主要业务,并提供更好的服务质量。

然而,即使外包在应用程序开发行业中占据中心地位,我们发现当客户计划将其软件开发项目外包到其所在国家/地区之外时,他们会表现出一些共同的担忧。

在本文中,我们将研究 Appinventiv 如何使用分布式敏捷开发周期与离岸客户合作,从而实现更紧密的工作流程以及一致的风险和薪酬模型。

但在我们开始讲述我们如何作为客户的分布式团队运作并无缝工作以使我们成为他们扩展的内部技术团队之前,了解分布式敏捷团队甚至意味着什么是很重要的。

分布式敏捷团队是什么意思 

分布式团队是一个概念,用于解释两个或多个团队跨越多个地理位置而不是一个办公空间甚至一个城市的两个办公空间的事件。
分布式敏捷团队依靠数字技术无缝交互并朝着同一个目标共同努力——及时的项目交付。

为什么企业投资移动应用开发分布式团队?

有很多原因促使企业投资分布式团队,原因包括:

  1. 他们国家缺乏熟练的开发人员
  2. 在对团队建设进行投资之前需要测试市场
  3. 利用灵活团队的好处,可以在扩展应用程序时增加并在需要结束时解散。

现在考虑到定义和需求,现在让我们看看 Appinventiv 团队如何作为客户的分布式团队工作。 但在我们跳到那里之前,让我们快速看看我们典型的分布式敏捷团队结构是什么样的——

Appinventiv 分布式敏捷开发方法 

很多时候,我们得到一个项目,要求我们与客户的 FTE 密切合作。 在这种情况下,我们不要让工作之间的距离以千里为单位,并且我们能够实时做出改变并对发展过程采取行动,这一点变得非常重要。

我们如何确保及时交付而没有零范围的沟通滞后和误解,这是一个问题,其答案在于分布式敏捷方法

适合小型和大型企业,当我们必须与位于其他地理位置且时区完全不同的团队一起工作时,遵循分布式敏捷最佳实践非常方便。

让我们看看我们在移动应用程序开发过程中应用的分布式敏捷开发方法。

在我们相互介绍了所有团队成员并协作了项目管理软件之后,实际工作开始了。

我们制定了每日敏捷 Scrum 方法论的过程 虽然在传统意义上,Scrum 需要 15 分钟的面对面站立会议,其中每个参与者分享他们的任务状态并通知团队他们接下来将要承担的任务,但几乎不可能在一半时遵循相同的流程团队的成员坐在其他时区的其他地理国家。

为了在 Scrum 中保持面对面交互的精髓,我们所做的是在一个确定的时间举行视频通话,这适合团队中从事该项目的每个人。 在屏幕共享的帮助下,我们的敏捷 Scrum Master在 Trello 或 Jira 等工具的帮助下运行虚拟 sprint backlog,使每个团队成员都能了解项目的最新进展。

我们的经验是,让所有团队成员都能访问一个易于访问和更新的任务跟踪平台是非常重要的。 我们还强调使用 Skype 或 Slack 等交流平台,让每个人在两个 scrum 时间段之间分享更新或询问他们的疑问。

我们在日常敏捷和 Scrum流程中遵循的另一种方法是,对于每个不同的 Scrum,我们指定一个 Scrum Master。 因此,每个单独的团队都作为一个独立的 Scrum 团队,有一个 Scrum 主管和产品负责人——这个过程也被称为 Scrum of Scrums。

在此,所有 Scrum 代表都对 Scrum 中的以下问题提供了答案——

  • 自上一次 Scrum 的 Scrum 以来团队已完成的工作
  • 工作团队计划在下一次 Scrum of Scrums 会议之前做
  • 球队目前面临的阻挡者
  • 可能导致另一个 Scrum 团队的阻碍。

该方法使从事该项目的所有主要人员能够直接相互交流,这始终会导致从启动阶段到启动阶段的奉献精神。 这确保了所有团队之间的公开、清晰和透明的沟通,每个人都有发言权。
除了 scrum of scrums 之外的过程与我们在典型的敏捷方法中遵循的过程相同。
但是,我们的团队与客户团队之间的距离相距甚远,但我们必须尽可能无缝地工作,这一事实已经带来了一系列我们通过采用分布式敏捷所推动的学习。 让我们看看这些学习是什么——

我们从分布式敏捷开发过程中汲取的教训

1.分布式团队的创建是关于建立一种文化而不是一个过程

分布式团队敏捷方法下,定义项目成功的因素并不取决于团队成员的技能水平,而是取决于他们能够一起工作的能力、他们工作的主人翁意识,以及最终如何它们与项目的目标密切相关——这是文化而不是过程形成的东西。

2.只有 SMART 项目才能成功

当一个项目必须由一个甚至不在同一个国家更不用说办公室的团队完成时,您为项目设定的目标遵循 SMART 是非常重要的——具体、可衡量、可实现、现实和时间框架,概念到 t。

3.在线协作工具没有替代品

无论花费多少,您都必须依赖实时且延迟最小到零的在线协作工具。 在最终确定在线项目管理和交流平台方面,您无论如何不能懈怠。 您必须确保他们在技术上能够满足您的要求。

现在我们已经看到了作为分布式团队从丰富的工作经验中吸取的教训,是时候看看我们在这个过程中遇到的一些挑战,以及我们如何解决这些挑战以成为一个值得信赖的分布式敏捷应用程序开发公司

分布式敏捷开发方法的挑战以及我们如何解决这些挑战

1.文化差异

通常分布式敏捷软件开发方法要求与来自不同文化背景的团队合作。 由于不同的价值观和修辞格,这种差异会引起摩擦。
我们的解决方案:我们在最初几天与客户的团队密切合作,以便我们习惯他们之间的界限和背景。

2.时区差异

分布式敏捷方法的关键是来自不同地理国家的团队。 在这种情况下,由于时差而出现的通信差距是很常见的。
我们的解决方案:我们将分布式团队的敏捷概念作为其核心。 我们确定了一个来自所有国家的团队都在场并活跃的时间。 为了实现全神贯注和全神贯注,我们要求我们的队友在 Scrum 日改变他们的办公时间,以便他们睡得好、专心。

3.缺乏“大图”的共同观念

由于地理位置、工作结构和政策的不同,大图的想法可能存在差异——移动应用程序的最终目标。 这种差异可能会导致一些团队成员缺乏兴趣,而其他成员则更加感兴趣。
我们的解决方案:在项目启动时召开愿景会议,并在每次 Scrum 中进行提醒,以便每个人都朝着同一个目标努力。

4.缺乏代码所有权

没有集体代码所有权意味着没有人拥有代码,它属于整个团队,所以当出现问题时,责备游戏就开始了。
我们的解决方案:我们应用版本控制系统来检查谁在编写代码以及代码的工作时间和效果。 这样,图片就完全透明和诚实了。

所以,这就是我们 Appinventiv 如何成为分布在世界各地的客户团队的故事。
想讨论如何提高分布式敏捷软件开发的水平? 与我们的移动应用策略师联系。