产品战略专家梁宁确认出席AICon北京站,分享AI时代下的商业逻辑与产品需求 了解详情
写点什么

流的本质

  • 2015-07-30
  • 本文字数:3179 字

    阅读完需:约 10 分钟

引言

如何在流程中获得良好的“流(flow)”?近日,我在瑞典斯德哥尔摩参加了一场“精益咖啡”会议。在会上,有个人描述了他们的情况,一个有四名开发人员的团队需要服务于四名不同的产品经理的需求。她说这种情况太分散。这引发了我对于这种我认为非常常见的情况以及精益和敏捷如何帮助解决这个问题的思考。

一个有瓶颈的流程

这是一张通用的流程描述图片。它可以描述任何类型的流程,请求从流程的一端进入,交付物从另一端输出。流程中有多个增加价值的步骤。如果流程没有增加价值,那么就没有存在的理由。所有流程都存在瓶颈 / 约束形式的限制 [1]。

“最窄”的瓶颈决定了流或者整个流程的生产能力。精益的一个关键概念是 _kaizen_,它的意思是应该对流程进行持续改进。当一个瓶颈消除了,另一个就变成了“最窄”的,因此,你需要继续 _kaizen_ 工作,永不结束。流程是一个公司所拥有的最有价值的东西,比其产品和服务(会随时间变来变去)更有价值。希望流程改进可以一直持续下去!

遗憾的是,我从软件开发行业中得到的经验表明,我们更关注我们做什么(产品和服务有一定的不稳定性),然后是如何做(长远来看,流程将最终决定公司的成功)。希望在软件行业中,我们可以改为更关注后者。要获得流,就需要专注。

过度分散是一种常见情况

我认为,这是一种在许多软件公司中都非常常见的情况。注意力分散“各处”——公司提供的多种产品和服务。我们常常做点这个,做点那个,以免错过可能成为“下一个大事件”的东西。由于我们一次做许多事情,所以工作变得太“稀疏”,所有任务间的上下文切换 [2] 使我们产出的实际价值越来越少。由于无法预见事情什么时候可以完成,所以我们不得不提早开始,这进一步增加了在制品数量。在制品是指你同时进行的所有工作。最终,你进入了一个恶性循环。在软件开发中,没有天然的在制品限制(所有的工作都发生在我们的头脑中或者服务器上)。在工厂中,有物理上的限制,比如有限的地面空间。

事实上,缺乏专注更可能使我们不成功。在史蒂夫乔布斯的自传 [3] 中,有一个章节讲述了一次所有苹果高管都参与的异地会议。如果我记得没错,高管们大概有 100 个不同的想法,他们认为那些想法会成为“下一个大事件”,并希望公司支持和资助。通过在几天的会议中比较和讨论各个想法,他们最终将它们归结为三个。现在的好处是,整个公司都支持那三个想法,他们可以非常非常专注。

我们希望使流程更加合理,增加生产能力

下面是我们希望实现的目标:

  • 简化我们的业务,同一时间专注于更少的事情(比如,减少在制品),以此增加生产能力,并缩短提前期
  • Kaizen,持续改进流程,消除瓶颈,获得流
  • 缩小交付增量,更快地、持续不断地为客户带来价值

一个良好的流的例子——接力棒

我是个体育迷,包括田径运动。在世界锦标赛或奥林匹克运动会中,4x100 接力赛通常是一项非常有趣且激动人心的赛事。

当前的世界记录为(男子):

  • 400 米:43.18 秒,由迈克尔·约翰逊于 1999 年 8 月 26 日在塞维利亚创造
  • 4x100 米接力赛:36.84 秒,由牙买加于 2012 年 8 月 11 日在伦敦创造

虽然迈克尔·约翰逊是有史以来最好的运动员之一,但来自牙买加的团队创造的接力赛记录比他的 400 米记录快了 15%。为什么会这样?有两个原因:

  1. 在来自牙买加的团队中,每个人都可以以最大能力跑(400 米虽然不长,但要以跑 100 米的速度来跑是不可能的)
  2. 在接力棒交接时没有速度损失

因此,在这种情况下,1+1+1+1 不等于 4,而是大于 4!我们如何将这种情况转化为一种与我们的环境相匹配的描述?

“一体式(One piece)”连续流

精益的真正目标“Nirvana”是一个一体式连续流。这里的一体式是指在工作流程中增加价值的步骤之间没有任何等待时间或库存。就像接力棒!我们开始时可以从上述哪个原因入手?当然你可以(并且应该)雇用最熟练的人,并让他们尽力而为,但最有意思的是运动员之间的交接棒。事实上,一个国家,即使它的运动员不是最好的,只要他们将交接棒的过程练习到完美的程度,那么也可以在奥林匹克运动会或世界锦标赛中取得好成绩。在决赛中,经常出现那样的情况,其中一个可能夺冠的国家因为交接棒犯规而被取消资格。

在你的组织中,你们会练习在流程的不同步骤之间交接吗?或者你们只关注流程步骤?

我们姑且将我们的“运动员”描述为:分析师、开发人员、QA& 部署人员。分析师和开发人员之间的任务(需求)交接是如何进行的?开发人员在接到需求之前就已经“提起速度”了吗?

为了确保交接过程没有遗漏,分析师同开发人员“一起跑”了吗?我猜,在大多数情况下,任务都在排队(比如在一个跟踪系统中)。

学习接力棒的例子

我们能从这个例子中学到什么呢?首先,我们需要练习交接,使交接过程尽可能顺利。在竞争模式(比如:做日常工作,交付给客户)下,这是不可能做到的。我们需要后退一步,反思我们的行为,然后做出改变,获得持续改善。其次是专注和信息共享(如果你愿意)。所有的“运动员”都完全清楚要做什么以及何时做。他们有所有需要的信息,所以能够俯瞰“整个比赛”。

如何实现流

在软件企业中,如何实现良好的流?对于许多组织而言,思想的转变是必须的。现在,我们往往专注于高资源效率(人们一直很忙)。相对于高资源效率,我们还有高流效率(工作在流程中快速移动)。我们必须做的是,暂时停止关注高资源效率,留有冗余(资源变得可用),那样,流被优先考虑,然后改善流程(kaizen),资源因此更高效。通常,总提前期中只有 1-5% 的时间增加价值,20% 增加价值是个很高的数值了 [4]。

我们希望创建的是覆盖整个价值流、包含所有所需职能 / 能力的团队。这样做,我们就可以确保交接工作尽可能地顺利,因为它们发生在彼此了解而又向着共同目标努力的同事之间。有三件事可以成就一个伟大的团队:自主性掌控性目的性[5]。

例子:如何获得流

下面是一些有关如何在流程中实现流的例子 [6]:

  • 限制在制品——通过限制流程中的在制品,可以确保工作在流程中更快地移动。团队成员应该总是想着“停止开始新工作,开始完成已开始的工作”,而不只是在完成当前工作时开始一项新任务。这可能意味着帮助另一个团队成员进行测试,以完成那项任务。
  • 缩短等待时间——研究为什么任务在等待,并努力缩短等待时间。提出如下问题:
    • 任务为什么排起了队?也许是时候解决已知的瓶颈了。
    • 如何促成所需的决策?召开所有涉众都参与的会议,推动工作继续进行下去。
    • 有什么方法可以临时消除外部依赖吗?也许可以编写一个外部系统的模拟器。这样做可以实现流,但也多出了可能需要后续“偿还”的“技术债务”(当外部系统可用,但并不能 100% 按你在模拟器中的预期运行时)。
  • 跨职能团队—— 正如在前面的小节中所描述的那样,我们希望创建一个团队,它拥有满足整个价值流所需的所有能力,我们将这样的团队称为跨职能团队。团队有“所需的一切”,我们实现了外部依赖的最小化,尽可能地消除了同其它团队交接所导致的延迟和对流的妨害。

小结

在这篇文章中,我已经讨论过,所有的流程都受瓶颈限制。在软件开发公司中,一个常见的场景是同时有太多的工作在进行,导致工作 _ 太分散 _、太稀疏。4x100 米接力赛中的接力棒是流的一个很好的例子。在文章最后,我描述了思想转变,从专注于 _ 资源效率 _ 到专注于 _ 流效率 _,然后给出了一些获得流的例子。

关于作者

Tomas Rybing居住在瑞典斯德哥尔摩,自 1996 年开始从事 IT 工作,最初是名顾问兼程序员。从 2007 年开始,他的关注点转到了团队领导、项目领导、产品管理和开发方法。他有一个妻子和两个孩子。他的主要爱好有运动、音乐和旅游。你可以通过电子邮件博客或者 Twitter 同他联系。

参考资料

[1]约束理论

[2]上下文切换——头号公敌?

[3]《史蒂夫·乔布斯传》,Walter Isaacson,ISBN 978-1451648539

[4]悖论:忙碌的蜜蜂

[5]《 Drive: The Surprising Truth About What Motivates Us

[6]《Kanban in Action》,Marcus Hammarberg & Joakim Sundén

2015-07-30 09:213072
用户头像

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

关注

评论

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

黑神话 悟空|风灵月影 V1.0-35项修改器

理理

CAD快速看图 v9.9.9 VIP激活版

理理

(spss统计软件)IBM SPSS Statistics 27 许可证代码

理理

如何在Linux中映射LUN、磁盘、LVM和文件系统

百度搜索:蓝易云

“创造神迹” -> “打造利器”:AI 从实验室走向市场的五大障碍

Baihai IDP

程序员 AI LLMs 企业 9 月 PK 榜 AI 产品

Dropzone 4 for mac文件拖拽增强工具

Mac相关知识分享

文件管理工具

强大视频转码工具EditReady for Mac

Mac相关知识分享

在RHEL配置网络绑定(成组)

百度搜索:蓝易云

SketchUp Pro 2024 for mac强大三维建模软件

Mac相关知识分享

三维建模软件

数据恢复新利器!Disk Drill Enterprise:高效恢复,无忧存储!

理理

如何在Kubernetes集群中设置动态NFS配置

百度搜索:蓝易云

键盘也能用上大模型?文心一言内置于罗技最新品

百度Geek说

大模型 开发语音 文心一言

生成式AI的天命:“不疯魔,不成活”!

博文视点Broadview

智源研究院推出全球首个包含文生视频的模型对战评测服务

智源研究院

交互式反汇编工具 IDA Pro 9 for mac破解资源 支持M1/M2

理理

深度挖掘 1688 商品评论数据接口,洞察用户心声

tbapi

1688商品评论接口 1688API

NineData云原生智能数据管理平台新功能发布|2024年8月版

NineData

DevOps 数据迁移 数据管理 新功能 NineData

音频修复iZotope RX 10 for mac破解补丁 兼容M芯片

理理

Vector Magic(图片矢量转换工具)

理理

Cookie的secure属性引起循环登录问题分析及解决方案

vivo互联网技术

https Cookie 单点登录

PDF 文件处理工具PDF Merge PDF Splitter for Mac

Mac相关知识分享

PDF

南开大学携手火山引擎,联合打造全国“AI+教育”成果新示范

新消费日报

火山引擎VeDI赋能小城酒店业,助力“流量”向“留量”转化

字节跳动数据平台

大数据 数据分析 云服务 火山引擎 增长营销

如何配置docker或者k8s拉取https私人镜像仓库

百度搜索:蓝易云

首个大数据批流融合国家标准正式发布,阿里云为牵头起草单位!

阿里云大数据AI技术

大数据 阿里云 信息技术 国家标准

GraphPad Prism 10破解版安装 含永久激活码 mac/win

理理

Default Folder X for mac专业搜索优化工具

Mac相关知识分享

别让质量问题拖垮您的企业!快看看这些隐藏的风险!

天津汇柏科技有限公司

质量管理 低代码 AI人工智能

公开课 | 测试工程师的质量体系构建指南

测试人

软件测试

Docker启动容器报错:cannot allocate memory: unknown

百度搜索:蓝易云

NFT铸造挖矿交易系统开发部署搭建

V\TG【ch3nguang】

流的本质_文化 & 方法_Tomas Rybing_InfoQ精选文章