本文整理自 DevOpsDays2017.上海站演讲实录《非线性世界里,DevOps 的系统性思考与实践》

在2017年DevOpsDays这个全球DevOps实践者的聚会上,已近60岁的台湾著名敏捷讲师李智桦老师给我们带来了一趟生动的DevOps实践课程。亲历了这堂课程足以让你有能力更好的管理你的人生。小编整理出了会上李智桦老师的十大干货观点给大家。

讲师介绍:

李智桦(台湾著名精益布道师 / 91App 敏捷顾问 / DevOpsDays金牌讲师)
毕业于台湾淡江大学物理系,专业的软件工程顾问、Scrum及看板课程教学讲师。曾担任过多家信息公司的研发部经理,擅长新创公司的项目开发工作,为 Open Source 的拥护者,开放自己所有的程序代码。著作包括 《精实开发与看板方法》等。演讲时不采用PowerPoint工具而是使用自己所撰写的程序做展示。

观点一、真实世界是非线性世界,用线性的公式化思想去认知是错误的。

非线性世界指的是不线性,既然不是线性的,那么一份耕耘一份收获对不对?两份耕耘有两份收获?错,当然错。十份耕耘就有十份收获吗?错的更严重。

这个世界不是这样的,爱因斯坦讲的理论离开数学教室以后,1+1就不等于2了。事实上是如此,尤其在电脑的世界里面更是如此。大家知道,离开教室以后真实的世界更不是这样的,不能用线性这样1+1=2的方式思考。

线性是你想象中认为的,比如说读书学习或工作事业都会一帆风顺。但是事实上真实的世界处处是高山火海,崎岖不平的道路,到处充满水深火热。真实的世界不是我们想象的世界,这就是对非线性的解释。我们在面对真实的非世界的时候往往用线性的思维模式去理解和管理,而实际上错误的。

观点二、反思很重要,要使人的观念发生改变,让他反思去吧。

反思这两个字太重要了。要让老板改变他对公司员工的管理方法,让他反思。想要让老师改变对个人的印象,让他反思。反思很重要,你会获取很多,然后你会改变。

观点三、一定要有系统化思维。

一定要有系统思维,这是我整堂课讲的最重要的话,一定培养自己看到事情的全貌。

当你看的很细的时候,你看不到轮廓,当你看到轮廓的时候你看不到细节,就是这样抽象,所以你自己必须通过系统思维决定现在要看什么。决定你现在看什么当务之急才是重要。

观点四、看板是在流程化上的一种简化的表征,不要做复杂了

看板是系统的流程上的一种简化的表征,实际上很多细节都丢掉,所以千万不要把看板上面小的贴纸写满字。

用粗的签字笔可以避免犯这个错误,尽量用粗的签字笔,而不要用铅笔和用圆珠笔写很小的字,那是没有意义的。写抽象一点,把它写足够就好了,那才是重点。高德拉特的限制理论,正是主张一个复杂的系统隐含着简单。

看板是变简单不是变复杂,不要在一个东西上面贴很多东西,复杂化,足够就好了。缺什么补一下,足够就好了。

观点五、巧用因果回馈图,避免落入线性思维陷阱

因果回馈图它的英文名字CLD,你知道就可以了,这样画图不会落入线性的思维,所以刚刚一直到现在都强调线性思维,你认为1+1等于2 ?是错的,离开数学教室就不合理了,真实世界不是这样的一定是非线性的。

因果回馈图来自于Jay·Forrester,但是动力学之父他去年过世了,这个人改变了这个世界。看系统的时候他的思维模式是对的,因果有正向有反向,有平衡有滚雪球。他用加减符号、曲线把它连起来,他发明这些图形。右上角这个图形就是。

看板思维是怎么样?增量在中间,需求在右上方,有需求要开发工作,开发工作是正向的,需求越多开发工作越辛苦越多,产量增加。往下面来流程的控制WIP限制流程,显示它的状态再回来。

我刚刚讲麦当劳故事这件事如果你不知道把它弄清楚,它是看板最基本的理论。麦当劳老板看到排队高兴还是不高兴?你去星巴克知道店员服务几个之后会停下来做一次整理机器,答案是“是”。

观点六、看板思维,看少一点可以看见全貌

我画了一个系统回馈图把整个看板方法加进去,这个图太复杂了一看就不懂,所以当你看东西的时候一口气看到这么多好还是不好?是不好,这是很糟糕的一种图,当然要改一点,把一些资料拿掉。再排序一下,你会越看越清楚。

整个看板方法就是这样的,简单到一个境界,就是精艺原则,再下来是个人看板,大家可以尝试一下个人看板管理自己的生活;

通常这种不会持续两个礼拜,第三个礼拜会放弃。我没有放弃,晚上睡觉以前都会拿出iPad划两下把今天看板做完,十分钟以内解决,我发完以后思考一下。哪些人是害我的,嗯…哪些人给我帮助,嗯…我应该往哪里走,花多少力气在他上面。

等我搞清楚以后很舒服的睡着了,把iPad放在一边。注意,带着好的东西回忆到美的东西进入梦想的时候会带着微笑,如果总是想到挨骂的事,做不出的程式,那题人生是很悲惨的,晚上可能做恶梦被自己吓醒。

看少一点可以看见全貌,注意看见全貌不是看多,很多人都以为看多颠倒,看少一点,所以你们看老板挂董事长、挂总经理坐在房间懂的那么少因为他看见全貌。把你的视野拓展到看见全貌,不需要看见那些细节,把细节逐渐模糊掉非常重要,人生就是这样的,如果老记得那些怨恨你活不下去,你老记得那些快乐的日子你活的很快乐,但是不知所以然。什么时候应该看到哪一个细节这才是重点。

观点七、不要在意做的好坏,持续改善最重要

我们把刚刚说的做一个简单的分析应该长这样,看板方法最重要的是晶石的原则,百分比它最高,第二有系统的思维,然后限制理论,再来学会制作看板,在中间,看板制作是持续改善不是做完就结束了,所以不要在意做的好坏,持续改善是重要。

观点八、找全公司最恨你的人站在你的看板面前批评你的看板

找看板的问题,最简单的方法就是找全公司最恨你的人站在你看板前面批评你的看板,你改善之后再下个礼拜请他来。下个礼拜他来就没什么好骂的,因为你持续改善,所以不要在乎眼前的东西,把眼界拉远,实做得到你的东西,把东西做出来才是重要,卡在一个东西不是重点。再来才是流程,再来规则,最后是个人看板。

一定要有一些挑战才可能克服这些挑战然后获得更多,这就是人生非常有趣的事情,看板一定要显示你一大堆错误才有机会修正。所以看板拉起来以后第一件事找最怨恨你的人骂你的看板。第二把全部改善了,第三个礼拜看看他还可以骂什么呢?没什么东西好骂了。

所以我最擅长的会议是这样的,把对手最恶毒的副总请过来,给我们一大堆批评记录下来,持续成长,人们给你的建议是最有价值的你记下来持续成长在看板上改善它。在看板上改善是你自己看得见,你分析过指定某一个人固定多少时间完成它,因为下一次就没有了,这是看板最之前的地方,它记录整个过程让你持续改善。

观点九、面对人月神话问题,跟老板要求加薪不要加人

但是先有问题再找设计模式,所以思维导图里面基模有很多。如果你落后老板的思维,增加忍受,增加人手开发加倍,开发加倍赶上真实的进度,这是老板基本的思维,但是真实世界不是这样的,如果你注重绩效你运气很好,如果人数乘以10,就是这样的,因为人们学习东西要有时间积累,而老板经常会忽视这个问题,这个世界不是这样的,可以解决问题可能一个就够了。

所以最好的方式跟老板要求加薪不要加人。我天天做这件事,因为一定要让你找到杠杆点用杠杆解决你的问题,系统思维最大的目的是找到杠杆点,什么是杠杆点?失利一点点得到很大的效果,通常一个系统都会有这种现象找到它,用各种试验的方式找到他,轻轻的失利得到很好的效果,失利错误就很惨。

很多事情会有时间延迟的现象,很多事情不会马上就效果。举例来讲,加人有没有有?等那个人看懂我们的程式要什么时候,而且新人来第一件事是派一个熟悉系统的人教他,瞬间没有产能了,所以一开始会产生下降,而且很漂亮的下降了,因为他都教新人,尤其录取是女孩子就更麻烦了。

所以刚刚讲到最简单的基模,理想目标和现实有差距,增加人手会不会增加进度赶上进度吗?有时间延迟,没有这么简单。反过来讲,如果把目标调降,如果能力不足可以达到,这也是一种方法把目标下降,但是目标不断的调降,你们的实力会被看扁。

有方法可以解决,这种方法就很糟糕了,饮鸩止渴答案是必死无疑。最简单的是增加人手,可是人变多沟通成本通常增加,沟通成本看到效益要一段时间延迟,所以通常要有一个磨合期,然后第一个现象是落后会加大。加大是因为最优秀的人协助最弱的人去了,两个人都没有产能了。

另外一个如果团队非常和谐,为什么这个团队产能不足呢?长官参与最麻烦的长官开始关注的时候立刻产生加班、赶工,会得到技术债,接下来维护它的人会死的很难看,产品出去BUG很多。

这种债你会还的,QA测试人员测怎么这么简单的BUG还有,备注栏里面写了这是不可原谅的BUG,他们都忘了我们是赶工出来的东西,为了老板喝酒的时候跟人家拍胸脯,这是不正常的,千万不要做这些事,所以刚刚是第一个Demo,现在做第二个Demo。

观点十,系统思维的六个细节一定要注意。

系统思维是种竞争力,想办法让你的团队具有系统思维的能力,我这里有6个细节要讲系统思维

  • ** 不要被表象所迷惑,**你看到的不能不是真的。

  •    **不要用线性的思考用非线性思考**。大学四年你认为你会平步青云上去的少做梦,一定有一些很坎坷的,所以不是直线是曲线,那个叫做真实人生。
    
  •   **在非线性世界里不要用线性思维模式**。人月神话缺三个人,三个人不够再加三个人,如果老板这样跟你讲,你给他建议做30个人,老板会恍然大悟说不能用线性思维考虑这件事。
    
  •    **恰当的划分边界,边界最重要**,要做到哪里没有比这更重要,做多没有用,20%的东西够你用,80、20理论,所谓做20%的东西处理80%的工作就够了,不要做多,做多会增加更多的BUG。
    
  •   **看清各种限制因素,无处不在的时间Queue**,用Queue思考这个世界,我们犯的最严重的线性问题是我们认为即使会发生,但是不是,要一时间慢慢的解决,要把时间延迟算进去,任何东西是这样的,加人就是这个原因,等那个人熟悉这个技能开始有产能,这个专栏可能已经做完了。那最简单的办法是不断检讨你的Queue有多长。今天加一个人进去,时间要多长,这个是最重要的一件事,今天这堂课如果有收获就是回去反过来看你的团队,我们用UML的技术。因此Queue要一个月,加一个人要学一个月才开始有一点产能,这个很重要,那你的Queue越短越可以救你,想办法把你的时间缩短,而且要不断持续改善,用看板来看,就可以看出你的产能。
    
  •    **有限理性做衡量,绝对有比较**。老板问你这个专栏比较难还是上一个专栏比较难,用必要的方式很容易抓出来,但是如果直接说这个差三个礼拜,我们很难这么准确预估一件事情,最多只能给出一个范围,最好的方式是用有比较的,然后就可以做成衡量,没有东西不能衡量的,有这本书可以找一下,所有东西是可以衡量的。这是系统思维最大的障碍无法衡量,这六点请大家参考。
    

END