十七 浪费本质

对不起,请停下来,努力工作也可能是浪费

  • 对浪费的理解不深刻
  • 杜绝浪费就是“不做不产生价值的东西”
  • 如何“不做不产生价值的东西”

到底什么是浪费,一般的理解里,浪费可以是我们看到公司购买最高档的打印机,但实际上很少人用;浪费可以是本来约定十点的会议到十点二十人才到齐;浪费可以是本来可以一个人解决的事情却需要繁杂的流程审核。

但我们却很少有一个统一认识,只有永远不会使用那台打印机的人才会认为那是浪费;只有最先到达会议室空等的会议组织者才会觉得迟到会是浪费;只有需要去解决问题的那个人才会觉得繁琐流程是浪费。也就是说,人们把对自己不产生价值的却不得不做的行为(等待或执行无必要流程)或者有经济关系的购置物(自己不同可自己可能不得已参与购买)。

在精益的环境里,浪费的本质不是针对每个人而言,而是放在整个组织产生价值的价值流上来考虑—不对整个价值流产生价值的行为就是浪费。基于这个理解,作为个人认为可能充满价值毫无浪费可言的行为,可能彻头彻尾成为一种对价值流的浪费。

实际上,对一个精益化的组织来说,最大的浪费来自于“生产不产生价值的东西”。这个观点就是说,看起来很勤奋的,毫无闲置努力生产的员工实际上对组织有害,做完根据生产节奏分配给他的任务完成以后保持空闲状态的员工更应该值得表扬。

FL是另一个典型的H人,乐观积极,朴实勤奋,他负责的模块是许多需求都有的部分,在他的带领下,他的团队效率很高,加上本身业务相关性小,这个团队完成代码速度比其他模块小组要高,于是他提前完成了一个迭代的工作,甚至在迭代一的前完成了大半下个迭代的故事。

可是因为需求调整,有些本来确定的需求被客户要求停止开发,我告诉他:你们制造了很大的浪费。也许这一点很难被接受,为什么多做也会认为是浪费,其实回答很简单,如果你做的事情不能及时让客户埋单,这些事情都是不能产生价值的东西,就是浪费。

这就是我们说的库存。精益把库存当作浪费之源,库存就是仓库里客户暂时不会去买的东西,正是因为这个暂时二字,让很多人认为库存可以是固定资产的一部分,或者反应市场变化的安全保障。但是“暂时”可以是足够幸运,订单纷至沓来的一周,也可以是现金流断裂前,必须折旧拆款的一夜。

我承认,在软件开发中,普遍存在着因为各个模块团队工作节奏不同产生的等待,因为等待产生的工作任务切换,因为工作任务切换产生的过度生产(我在等待某个模块功能完成的时候,我会被切换做其他我不需要等待的事情,这些事情很多情况都是过度生产)。

在传统瀑布式模型(大规模生产)中,这种事情完全合理,跟大规模生产一样,不管我做什么,做多少,在这个长达半年的开发期中的产出物,都是会被接受并付款的,那么谁会在乎疯狂生产某个模块的功能?就像福特赖以成名的大规模生产,福特T型车在十几年里没有大的变化,并被市场接受了十几年。

可是,世界不会再有福特T型车,世界也不会再有在开发阶段不变的需求,那么一旦产出物的市场需发生变化,这些库存会变成什么?返工或者回滚代码!

请问作为项目管理者的你,如何看待这件事?你是不是也跟大部分人一样更加在乎是不是有员工空闲,一旦空闲安排新的任务,哪怕这些任务暂时是不产生价值的(不被正在产生价值的团队需要,或客户不会对这个功能单独埋单);你是不是也有某种很卑微的情节:当面对责备你做不完的客户时,你可以拿着半边代码说,我至少还是做了一滴滴的。同时在交付压力巨大的情况下,是不是牢记那个时常让我撕心裂肺的声音—“要把客户的交付压力当成交付动力”,然后你的选择要么是拼命加班,或者疯狂扩大团队规模(基本上这个很难)。

而一个真正具有精益思维的项目管理者,第一步需要问自己的是:我的团队各个小组之间的工作节奏协调吗?浪费就出现在那些因节奏各异产生的等待而进一步产生的“非需求拉动”的任务切换,找到它解决它。事情的关键点就在工作节奏。掌握工作节奏才能保证:不做不产生价值的东西。此是杜绝浪费的关键之所在。

工作节奏我们下次再谈。