5分钟工作的5个阶段。

作为系统团队的一部分,我每天听到的最常见的短语之一是:“ 只需要五分钟! ”。 通常,在闲聊之前,先进行补充,有时还行贿糖果。 但是,当有人带着这些要求来到我的办公桌前时,他们常常不满意。

这听起来可能不像系统团队的行为方式,因为其目的是成为开发团队的推动者。 这听起来似乎有些卑鄙,但这是有充分理由的。 没有一项工作只需要5分钟。

要了解原因,让我们分解一下完成这5分钟的工作之一的实际花费。

阶段1:宜人

任何请求者要做的第一件事就是打电话给他们想要做5分钟工作的工程师。 为了清楚起见,我们将其称为请求者史蒂夫和我们的工程师布伦特。 当史蒂夫停下来到布伦特的书桌上发出请求时,他打断了他的所作所为。 在任何形式的体力劳动中都可以,布伦特可以轻松地接管自己所做的一切。 但是,在任何形式的创意或精神专业中,这都是非常昂贵的。 布伦特可能会在他这一天处于重大突破的思考过程中,只需要几分钟就可以将所有内容拼凑在一起,然后史蒂夫就可以了,他要求布伦特时间只有几分钟。 即使布伦特拒绝了史蒂夫的要求,他也已经被排除在思路之外。 由于这涉及到神经科学领域,并且很难实际衡量尚未完成的想法的成本,因此,为了简单起见,我们可以取消潜在成本。

现在我们在T = 0,布伦特中断了,我们可以开始计算5分钟作业的成本了。

除非史蒂夫(Steve)特别着急并直接跳入询问,否则他将至少花几分钟与布伦特(Brent)快速聊天。 通常,你好吗?孩子们怎么样?周末计划? 人们在办公室很友善没有错,仅在这种情况下,我们正在考虑工作的成本。 因此,可以说史蒂夫花了大约2分钟与布伦特通话。

我们现在在T = 2。

阶段2:询问

接下来是关键部分,问。 史蒂夫需要做两件事; 首先,要说服布伦特(Brent) 现在需要进行这项工作,并取代他之前所做的事情。 如果工作实际上更重要,这可能很容易,但经验表明并非如此。 其次,史蒂夫需要向布伦特提供足够的信息以实际完成工作,因此他需要仔细研究整个问题并确保布伦特理解。 这两件事加起来可能又需要5到10分钟。 我们可以在此处进行更高的估算,因为通常需要说服您,您的工作对当前正在开展的工作更为重要,而要求通常也不是直截了当的。

我们现在在T = 12。

第三阶段:工作

现在开始了简单的部分,即完成5分钟的工作,而不会花费额外的时间。 将真诚地假设它是真正的5分钟工作。

所以我们在T = 17

看起来足够合理吧? 仅是估计值的3倍。 小到足以让史蒂夫那天晚上睡得香。 但是,对于布伦特而言,这还不是故事的结局。

阶段4:后果

布伦特现在需要将上下文切换回中断之前的操作,他需要重新获得思路。 这是一项昂贵的任务,因为人类在上下文切换方面效率不高。 回到中断之前的状态,可能最多需要20-30分钟。 假设布伦特擅长上下文切换,我们称之为20。

我们现在在T = 37。 但这至少是故事的结局。 对?

如果工作做得完美无缺,那么很不幸,很可能是匆忙完成的,因此无法保证。 这项工作不可避免地会有一些缺陷,并且可能需要一些返工。 如果这是史蒂夫发现的,那么我们需要重新做一遍。 中断Brent,设置相同的优先级参数,进行工作,然后上下文切换回去。

这使我们的总数达到T = 74。 一个小时,然后改变,做5分钟的工作,还不错。 同样,我们一直都得到了它,没有任何遗漏,并且工作已经完成,它将不再需要再次接触……

阶段5:无限循环

前提是布伦特不使用任何形式的技术来完成这项工作。 在这里,我们遇到了IT中鲜为人知的事实之一,所写的每一行代码和所使用的每种工具都不是资产,它们是一种责任。 刚刚完成的完美工作现在可以发展成美丽的技术债务。

它需要对其零件进行更新,它可能需要随着时间的推移而移动平台。 它会失败,破裂并最终消失到过时的程度。 所有这些都会一次又一次地回到布伦特来增加T数。 在其一生中,这项工作可能会消耗无数小时的布伦特,史蒂夫和其他人的时间。

自然,对此的正确应对方法是curl缩到角落,意识到生活是一场与熵无休止的斗争,再次做任何事情毫无意义。 但是,这样做的目的不是要让人们对无所作为感到绝望,而是要通过一些基本的举动,寻找减少一件作品的T计数,将其保持在更易于管理的数量的现实方法。

敏捷覆盖了您

最常见的帮助方法之一是积压的工作,这是敏捷方法论的所有支持者所拥护的。 这是Steve在遵循标准的情况下通常以用户故事的形式为Brent收集事实的地方。 “作为(史蒂夫的角色),我想要(工作要做的事情),以便(我可以 从工作中获得价值) ”。 这使第1步和第2步的讨论和需求收集正式化,这样就不必事先打扰布伦特。

将细节放到用户故事中应该使Steve能够准确地思考他想要工作要做的事情(验收标准) ,工作的生命周期是什么,粗略猜测工作可能实际需要花费多长时间(大小调整) ) ,包括布伦特需要一些时间在尚不清楚的地方(缺陷的能力)进行返工 借助此功能,Brent将能够从积压的工作中取出工作项,花一两分钟阅读它,并且理想情况下能够在5分钟内实现它,并在10分钟内第一次完成整个工作

在成熟的组织中,史蒂夫还可以将工作项目拖入待办事项的清单中,例如维护任务,有节奏的升级,甚至是不再需要该工作的过时任务。

尝试解决一个仅需5分钟的简单问题时,这似乎令人生畏。 如果这是第一次,那么可能需要一些思考和大量努力。 但是,随着时间的流逝以及提出更多此类请求,围绕它自然会形成一个过程。 团队或个人将为该请求创建模板,在执行该请求时嵌入需要遵循的检查清单,并且在许多情况下,根本不需要进行任何工作。

这不会一overnight而就,但是随着组织的成熟,这些流程将不断发展,工作将会不断进行。 这样做确实可以使人们腾出更多时间与彼此进行非正式对话,因为他们不会因请求而分心。

工作协议

另一个有用的工具是就如何最好地使人们参与工作环境达成工作协议,例如何时可以联系某个人以及由谁联系。 敏捷再次具有管理团队积压工作的产品负责人和保护他们不受干扰的Scrum Master的开箱即用的答案,但是即使他们也可能无法保护团队免受一切侵害。 人们之间不断地进行交互,走廊对话可以轻松地启动这些请求之一。

真正保护工程师时间的唯一方法是达成每个人都遵循的良好工作协议。 遵守积压工作中所有工作的敏捷实践是一项功能强大的工作,但这也可以在敏捷框架之外完成。 可以讨论,商定并正式确定一些简单的协议,例如“ 午餐前不开会” ,“ 如果我戴耳机不打扰我”或“ 星期五不发送电子邮件” 。 通过这些,每个人都可以继续工作,不受干扰。

还可以就应多久升级一次技术和何时应关闭某些设备达成协议。 即使在敏捷框架内,确保所有零件都上油良好也是一项艰巨的任务,并且只有在何时达成书面协议的情况下才能实现。

关闭工作可能更具挑战性,人们可能会对这些工作变得非常感伤,即使它每天中断,只要您知道使它重新运行的诀窍都没有问题。 确定衡量何时维护成本超过带来价值的协议是至关重要的。 它们使我们能够消除任何基于意见的论点,以使某些东西早已不再有用。

人为因素

最后,可以产生影响的最大的事情就是尊重和同理心。 了解另一个人是一个人而不是机器。 他们有生活,他们需要吃饭和睡觉。 他们有自己的优先事项,工作量和目标。

在每个组织中,每个人都有自己的角色,许多人是在为他人服务。 通过确保他们完成工作,他们确保其他人也可以做到。 其中的许多内容没有引起任何人的注意,但是在提出这些“简单”请求时,值得花时间思考以上步骤,以及这些步骤对人是否公平或是否有更好的方法。

解锁建筑物的门可能只需要5分钟,但是除非每天在正确的时间完成此操作,否则我们不会分心,我们都会很快注意到一些重要的东西丢失了。