敏捷开发

敏捷大会 II 敏捷助力产品创新(下)


b3cb168d-6594-442d-88ae-ea6c3a03b526.png

(李国柱-京东精益敏捷教练)

三、建立低成本快速试错的工程能力

如果要支撑之前的以最小成本快速试错,我们必须建立低成本快速试错的工程能力,这个实现不了,我们很难实现最小成本快速试错。

例如

“团队一” 可以做到一周快速有五六次上线,

“团队二” 可能一个月就试一两次

“团队二”一个月做的尝试试错数量都比不上“团队一”一周做的,如果我们竞争对手能做的这么快,我们的危机就来了。他一个月尝试试错次数是我们一年的量,这个意味着他可以比你更早找到正确的方向,我们的生存危机就很大了,所以我们必须建立低成本快速试错的能力。

让创新置换快速运转

我们有想法、快速实现上线,基于数据分析,然后形成新的想法,不断来进行循环。这个过程要做很多的事情,我们要让创新的环快速运作,大家看各种各样的事情要做。这个需要很多人紧密配合,才能让环转起来。

在你的团队里面,转一圈要多久?通常之前参与比较好的团队,如果一个想法比如说一天开发,一天测试的想法,转一圈非常快,基本一天半就转完了,你有一个想法,产品同学有一个想法马上要验一下,这个非常重要,一天开发一天测试,两天半就够了,这个是非常快的。

屏幕快照 2019-05-24 上午10.01.42.png

如果把这个创新环比做成齿轮,我们想让齿轮快速转起来,就需要加入润滑油,这个润滑油就是精益的实践。

屏幕快照 2019-05-24 上午10.04.11.png

跨职能自管理团队

我们要把我们的这种创新团队组织起来,这个创新团队跟之前不一样,它必须是跨职能自管理团队,首先我们要坚持的是围绕价值流组织跨职能团队,下图是电商业务价值流,所谓价值流就是通过一系列的过程能够提供用户有价值的产品。这个过程是企业的命脉,如果这个过程出问题,那么企业就有了问题。围绕这个过程顺利进行,我们必须下面有很多的系统支持,就是有系统群。每一个系统群有相应的研发价值,研发团队确保这个系统正常运作,如果有新的需求快速迭代,快速上线做尝试,这是首先要做到的。

屏幕快照 2019-05-24 上午10.14.20.png

在团队划分的时候不要对抗康威定律。康威定律说的是软件系统组织和架构有一一对应的关系,如果没有对应就意味着有更高的沟通协作成本。

屏幕快照 2019-05-24 上午10.22.27.png

团队边界和系统的边界重合是沟通成本最小,我的团队需要按照这种方式来组织。这个意味着我们的系统要经过比较合理的划分,使得系统间高度结耦,只保留最小程度的依赖,消除不必要的依赖,这种情况下每个系统可能对应相应的团队。这种情况下团队之间的跨团队沟通协作成本最低,沟通协作的成本在这个过程会消除很多。

屏幕快照 2019-05-24 上午10.35.56.png

我们需要打破巨石架构,采用微服务的形式。

屏幕快照 2019-05-24 上午10.36.04.png

微服务是高度类聚,我们希望加强交付为主的跨职能团队。

屏幕快照 2019-05-24 上午10.41.00.png

还有宽组织沟通协作机制,确保团队可以高效的运作。

屏幕快照 2019-05-24 上午10.42.43.png

管理风格是非常关键一点,这里面象征了两种管理风格,一种是牧羊犬,另外一种是领头羊。

** 牧羊犬** 的模式:走偏了赶回来,模式寿命比较短。

** 领头羊** 的模式:把领头羊管好就可以,领头羊走到哪里,其他羊就走到哪里。

这两种模式区别非常明显,我们希望团队可以高效进行产品创新,我的经验是下面的方式有利于团队创新。

原因其实挺简单:

** 牧羊犬的方式** 要想运作起来,必须制定复杂的流程,各种检查机制,各种文档,确保整个团队能够运作起来。但是问题是,对于需要创造力和反复试错的任务,无法通过简单的遵循一套规则来实现。

** 领头羊的方式** 对期望高效创新的团队来讲是非常需要的,我们就是希望有人站起来引领大家往前走,而不是拿着鞭子赶着大家往前走。

屏幕快照 2019-05-24 上午10.44.45.png

我们需要激发和引领团队内在驱动力,希望团队有掌控感、成就感,同时有明确的目标和满足感。如果希望这个团队有这种感受,我们让团队自己来形成这种组织,制定团队运作的规则来推动团队的运行,让他们来管理。

透明和信任也是很重要,我们把信息透明起来,有透明才有机会带来信任。没有透明信任就无从谈起。一旦没有信任,团队间协作成本非常高,因为大家都忙着自我保护。

** 小批量快速反馈跟交付**

刚才提了研发的价值,我们从需求一直到有价值功能,整个过程就是研发价值流,这个过程就是价值实现的过程。这个过程中我们一般都是小计划,短迭代,小批量的方式来运作。我们不做大的计划,我们可以有长期路线图,但是只聚焦在短期要做的事情上,批量切小,把需求切小,每一次聚焦我们在做事情,快速完成再做下面的事情。

屏幕快照 2019-05-24 上午10.54.53.png

小批量就是快速得反馈,这个事情一个月才能做完,如果作为一个月的需求来看,你靠近一个月才有可见的东西出来,才有测试介入,才能告诉开发,这个地方没有作对。如果切小就有机会分析上线,本来一个月要上线,我们切了四批,第一周结束的时候就可以上线,第二批在第二周结束就可以上线了,有些时候有些功能早上线一天,生存机率就大很多。还有如果是大包东西没有拆开,要做就是一开始一批全部开始做,把需求切小了很重要的一点,就是减少浪费了。

屏幕快照 2019-05-24 上午10.58.52.png

** 快速需求探索和规划**

其实需求跟规划、探索是挺花时间的一个过程,而且你会发现这个过程当中,如何充分发挥团队的这种智慧,其实是很大的挑战。我们知道有很多人有不错的想法,如果把大家合到一起来就会发现讨论的过程,大家做出来的决策趋于平庸化,我们采用了一些群策群力头脑风暴的方式,我们叫做需求探索工作坊,模式就是大家群体一起头脑风暴。

但是为了让大家充分发挥每个人聪明才智,这个里面有一些方法和技巧:

** ① 引导的技巧** ,保证团队能够在过程进行高效的讨论,不跑题,不被某些人主导而压制其他人,主持人角色很重要。

** ② 整个过程是可视化** ,一旦可视化沟通效率就增加了很多。

屏幕快照 2019-05-24 上午11.05.27.png

** 工作透明化**

这是我们办公场所,其实放眼望去,这么团队在忙,他们是一个团队,他们做一些重要的事情,但是没有可视化是搞不清楚。也许每个人专注于自己那一块,到底卡在什么地方?哪些地方需要大家一起协商讨论介入,这个过程是看不出来。没有过程的可视化就没有办法做优化的工作,或者是协调共同的工作,就不会发生了。所以我们需要把价值流动过程可视化出来,我们就有机会做更多的事情。

屏幕快照 2019-05-24 上午11.08.10.png

可视化什么?就是价值流动过程,包括我们整个待开发的队列,工作项和各种各样问题和阻碍,甚至是人力资源分配都是可视化。

** 持续交付流水线**

流水线包括两部分,一部分是持续集成,另外一部分是持续部署。

持续集成有一些规则,比如说尽可能频繁集成,及时提交代码等等

持续部署有一些要求,让整个过程高效运作起来,从代码的集成,编译打包、测试,单元测试,功能测试和接口测试到最后部署等等都自动化起来,减少尽量人工干预。

屏幕快照 2019-05-24 上午11.11.56.png

** 持续改进**

我所经历过的高效创新团队里面,没有一个团队是一步成功的,都是经过常年不断的改进才实现快速高效的交付能力。回顾会是个好东西,就是定期开回顾会,认真落实大家的想法,落实一些改进的项。时间长了肯定有效果。

屏幕快照 2019-05-24 上午11.16.56.png

四、总结

最后想说,这整个过程我最有感触,我们想要团队不断提升,根本聚焦是对人的改变。我们发现不管是对敏捷而言,还是精益也好,本质就是思维的转变,人的思维转变,做事方式的转变。一旦人变了,做事方式和态度有所变化,做事就不一样了。