跳到主要内容

保存的文章

“准备”的定义:有害还是有益?

Dave Nicolette |领导敏捷
Dave Nicolette 高级顾问
阅读: “准备”的定义:有害还是有益?

准备好了的定义

Mike Cohn 2016年8月的文章,Ready的定义的危险描述当团队使用准备的定义。他写:

你可以把Ready的定义想象成一个站在迭代门口的高大健壮的保镖。正如夜总会的保镖只允许特定的人——年轻、时髦、穿着时髦——我们对保镖的定义只允许特定的用户故事进入迭代。

他是对的。你能够那样想到它。为什么你我不能那样想。Mike担心正式的Ready定义会导致一个stage-gate过程。也许在理论上可以。但它不是。床底下没有藏着怪物。

混淆因果

如果组织已经使用线性过程(即使他们假装运行sprint),如果团队已经被组织成功能竖井和/或围绕技术堆栈,那么他们已经有一个阶段-关卡的过程。使用一种或另一种敏捷风格的技术并不会“导致”或“导致”这种情况。这是已经建立了

下面我审查了龙眼指南针模型试图提供关于Ready的定义的上下文。我认为你将看到的一件事是,使用像《Ready的定义》这样的技术是不可能的原因组织中已经存在的问题。相反,这些实践旨在使组织能够解决这些问题。任何给定的实践是否是一个好主意取决于组织在其改进过程中的位置。

不存在神奇的“敏捷”开关

许多敏捷开发人员能够描述他们对开发团队的“敏捷最终状态”的看法,开发团队的功能是自主的。他们中的大多数人不太能够定义一个循序渐进的过程,使组织从今天的任何地方朝着“理想”状态的方向发展。一个团队要么是“敏捷的”,要么是“不敏捷的”。大多数敏捷人士说的是一段旅程,但他们教授和指导好像有一个神奇的开关,你可以打开。

组织改进是一个过程,通常需要时间和努力,并注意逐步的进展。在这个过程的早期阶段,Ready的定义可以减轻某些组织问题的影响。这并不意味着它是一种可以永远使用的魔术,而且总是以同样的方式使用。另一方面,这并不是一种应该被断然摒弃的“糟糕”技术。

在完美的世界里

在支持性组织中运营的“敏捷”团队可以做些什么。准备好的定义可能是对他们的障碍。根据定义,规范敏捷团队完全控制了端到端的交付过程,与关键业务利益相关者合作,以确定要传递的最高值功能,以创建环境和部署代码。亚博vip9通道他们没有(或很少)的跨团队依赖关系。他们没有艰难的交给。

有首老歌是这样唱的:“It’s。如果你能得到这份工作,那真是不错的工作。

或者,也许不是那么完美

这首歌接着写道:“……如果你试一试,你就能得到它。”在这种情况下,“尝试”这个词意味着很多。它是一个包含客户协作、定时迭代、每日站立、待办事项、回顾、迭代审查、客户演示、三个朋友、完成的定义、自动化“所有事情”、极限编程实践……是的,还有“就绪的定义”。

不是一个高大魁梧的门卫在门口守着。它是一种帮助团队从一个熟练水平前进到下一个熟练水平的工具。Ready的定义不是涉众和交付团队之间的一堵墙;它是合作的邀请和模板。

“敏捷”不是重点

请允许我用一个比喻:我有时把Scrum和类似的方法比作Forrest Gump的牙套。在Forrest的生活中的一个观点,他需要牙套只是为了站立和走路。当他跑的时候跑了,牙盖逐渐落下。继续穿着它们会让他回来。

大多数与“敏捷”软件开发相关的实践,特别是与Scrum框架相关的实践,都是Forrest Gump所倡导的。首先,团队需要大量的支持和帮助来改变他们的习惯,并习惯一种他们可能不熟悉的思维和工作方式。与此同时,团队所运行的系统(即组织)必须适应以敏捷思维一致地运行。随着团队和组织在他们共同的“敏捷”旅程中的进展,支持实践可能会一个接一个地消失。

从精益的角度来看,所有规范的敏捷实践、活动和仪式等等都是开销。没有客户明确地为我们做这些事情付钱。他们只为最终结果付出代价。我们不应该努力完善我们的日常站立,我们的sprint审查和我们的定义“完成和就绪”,我们应该努力使它们变得不必要。我们不能随意抛弃这些做法;我们必须通过展示在没有他们的情况下也能提供服务的权利来抛弃他们。在我们可以放弃支架之前,我们必须先站起来,然后走,然后证明我们准备好跑了。

什么时候是“随时可用”的定义?

Ready的定义代表了对工作必须处于的状态的一种共享的理解,在工作可以继续到完成的路上的下一组活动之前。当多个团队必须通过交付管道将工作转移到Done时,这是很有帮助的。

假设一个全新的敏捷团队在一个全新的敏捷组织中运作,那么就不需要定义就绪(Definition of Ready)了,因为一个团队就可以处理交付的所有方面。它只有在不同的人处理交付的不同方面时才有用,比如战略规划、需求精化、架构、设计、编码、测试、打包、部署、基础设施管理、生产系统监视、操作和生产支持。

感到有信心的最佳方法是通过直接协作来实现共同的理解。因此,建立准备定义的目标实际上推动了合作。

LeadingAgile与许多更大、更成熟的组织合作,这些组织离原始的敏捷模型还有很长的路要走。随着时间的推移,这些组织不断发展壮大,既有组织发展,也有收购发展。通常基于利用的心态,他们将类似的技能集和工具收集到专门的功能筒仓中,认为这是实现效率的方法。

事实上,效率是通过专注来实现的吞吐量而不是利用率。生成的步骤,资源和人员必须与值流对齐。亚傅体育app

在具有多个产品和服务以及后台支持功能的组织中,这可以转化为在组织的不同部分同时使用的多个操作模型。简单、规范、原始的敏捷团队模型是不够的。这甚至是不可能的。

亚傅体育app下载

我想用龙舌石指南针模型和爬山隐喻,将一些背景放在准备好的定义的想法周围。指南针真的是一个作为一个圆圈的象限图,所以我们可以称之为指南针,与我们登山的隐喻一起去。非常聪明,呃?是的,我也这么认为。

这是一种观点:

该模型说明了水平轴上的组织值。预测意味着组织寻求可预见和可问责地满足承诺。自适应意味着组织寻求建立适应变化的能力。

以顾客为导向的价值观显示在纵轴上。收敛意味着客户知道他们想要什么。组织的努力收敛交付已知的能力和需求。新兴意味着客户需要组织去探索可能性并发现解决方案。组织的努力出现客户有价值的解决方案。

不确定性和指南针

亚历山大·劳弗和其他人研究了不确定性在20世纪90年代的建筑项目中。他们确定了两种不确定性:意味着不确定性和结尾不确定性。

意味着不确定性意味着我们知道我们想要什么,但我们不确定如何从这里到达那里。结尾不确定性意味着我们有一个愿景、概念或能力,但我们不确定什么样的解决方案将实现这个目标。

规范敏捷团队模型和规范敏捷方法旨在处理意味着不确定性。它们在一个在自适应收敛象限中运行的组织中运行。也就是说,已知业务目标,并亚博vip9通道且可能是任何给定软件系统的“要求”:努力意味着在该解决方案上收敛。

同时,通往目标的道路是不确定的;我们需要频繁的反馈和航线修正才能到达目的地。

所以我们有了定时迭代的概念,Scrum称之为“Sprint”,在这个过程中,交付团队会列出一系列要做的事情,通常称为“待办事项列表”。

有人知道应该在积压的内容,并负责保持最新状态。该团队与某人合作,以便在不久的将来改善积压的物品。迭代提供用于反馈和课程校正的时间标记。迭代的长度是相同的,这提供了规划,审查正在进行的工作,利益相关者反馈和流程改进的可预测性。

这适用于落入自适应收敛象限的操作。

但我们很少发现已经准备好以这种方式运作的组织。

对于处于预测-突发和预测-收敛象限的组织,规范的原始敏捷团队模型太困难了。它在深层次上违背了组织的本质。

对于处于自适应-涌现象限的组织,这基本上是精益创业的想法,相同的模型是退化的,会使他们的速度变慢,而不会增加价值。

适应性紧急象限的组织具有最终不确定性;他们不断探测市场,以确定他们需要做的事情。

规范敏捷方法在这种情况下没有帮助,因为没有建立backlog的实际方法。我们所需要的更像是一系列实验以及以低成本快速转向的能力。

在这种情况下,Ready的定义没有什么意义。但是像待办事项列表、定时迭代或ScrumMaster这样的概念也不需要。它是整个规范的敏捷模型,而不是孤立的一种技术(比如Definition of Ready),不适合在这里使用。

所以,鉴于指南针模型,让我们考虑一下哪些组织可能会受益于准备定义的内容。

更大组织的起点

大型组织通常从预测-突发象限开始。这不是一个真正可行的运营模式。它是混乱的,不像辛尼芬模型那样有潜在的好处,只是简单的旧混乱。缺乏控制。没有人真正明白发生了什么。他们试图使用依赖于预先理解需求的方法来发现紧急解决方案。

对于那些组织,我们首先朝着预测收敛而开始。即使他们的目标是在自适应紧急象限中运作,它看起来好像它是在隔壁的那样,那么没有直接到该目的地的直接路径。该组织必须学习如何一步一步到达。

我们引导组织走向预测-收敛象限;我们称之为Basecamp 1的能力水平。目标是在做出和履行承诺时变得可预测、可靠和负责。

大型组织从围绕功能和/或技术构建团队开始。他们会有一个设计团队、一个测试团队、一个网络团队、一个基础设施团队、一个数据库团队等等。团队没有与价值流或产品线保持一致。为了让一项工作通过交付系统,必须有几个或多个团队接触这项工作。没有一个团队对完成工作所必需的所有活动有全面的看法或完全的控制。

管理跨团队依赖项

在这些条件下,当团队接收到部分完成的工作时,该工作必须处于团队可以执行的状态。否则,工作必须向后进行,并由一个或多个上游团队重新访问,然后才能在其上取得进一步进展。

这些回流是组织无法以可预测的方式满足承诺的原因之一。孤立的组织结构是很难找到对发生的任何事情负责的人的原因之一。

准备的定义是我们可以利用的工具来减轻组织结构的影响,这并不符合功能性竖井的价值流,而是必须把工作多次去另一个过程中完成一个请求。

关于责任,Ready的定义帮助所有相关方理解交付过程中某些事情发生的地方,以及谁对这些事情负责。在大多数情况下,这些信息是事先不知道的;组织里的每个人只知道他们自己的那部分行动。我们经常发现,在组织的任何地方,没有一个人对事情是如何完成的有全面的理解。

支架一点一点脱落

随着组织或组织的一部分从一个基础营地发展到另一个基础营地,它们通常会从模型的下半部分从预测-收敛到自适应-收敛,如果业务需求要求的话,还会上升到自适应-突发象限。亚博vip9通道

在这次旅程中,Ready的定义有助于团队合作理解彼此的需求,以及澄清问责制,并识别简化组织结构并简化交付过程的机会。

随着组织的成熟,可以逐渐降低形式的形式水平,因为一旦组织了解更好的方法来实现相同的目标,就可以像其他开销活动一样放松。

所以,Ready的定义并不是一种孤立团队和阻碍合作的机制。恰恰相反。它是一种工具,可以在旅程的某些阶段增加价值,当它被正确地应用并且出于正确的原因时。

它也不是我们想永远锁定的东西。当组织的发展超出了对它的需求时,正式的Ready定义就可以被简化,甚至可能被取消。

下一个;Scrum城市的麻烦

留下你的评论

您的电子邮件地址不会被公开。必需的地方已做标记*