迭代就是更新升级?它的价值远不止如此
文/王世民,深圳尔雅总裁|YouCore创始人
01、什么是迭代?
如果你想去热门景点旅游,做一个旅游规划最高效的方式是什么?
我的建议是看旅游攻略。
攻略里对各种景点、路线、住宿的介绍井井有条,好的旅游攻略你看完后甚至有一种身临其境的感觉。
因此,在旅游目的地明确、天数固定、预算清楚的情况下,完全可以参考攻略,采用预定义过程控制的方式,提前规划好日程和旅游路线。
但假如,有人请你帮忙安排一次旅游,他的需求是只要好玩又实惠就行,具体玩几天视玩得开不开心而定。
在这种一切都不确定的情况下,你是不是就没办法采用预定义过程控制的方式,提前做好日程安排和旅游路线了?
你只能先挑选几个可能的旅游目的地给对方选择,然后再在旅游过程中,根据他的反馈及时调整在每个景点的旅游时长,并相应调整下一步的旅游目的地和路线。
迭代就是在这种高度不确定的情况下,不得不采用的另一种解决问题的方法。
因为在高度不确定的情况下,我们既无现成方法可循,也无过往经验可依,只能在一步步的实践中逐渐深化认知,摸索出指导未来的规律(咱们“摸着石头过河”的改革开放之路,就是这么迭代出来的)。
02、迭代的三大价值
当然,迭代也并不是那种我们不愿意用,而是被逼得没法,不得不用的方式。
迭代相较于预定义过程控制的方式,有着自己的三大独特价值。
价值一:降低难度
迭代可以有效降低一件事的难度,因为它将起步要做的内容减少到了一个最低的必要程度。
以写一篇文章为例。
按预定义过程控制的方式来写,你在动笔前,要搭建好文章的框架,找好所需的素材,想好必要的故事,这对一个刚写文章的新手而言,是一个很有挑战的要求。
但如果按迭代的方式来写,第一轮你无需在意例子是否贴切、文章是否有文采,只要将你能想到的都先写下来即可。
第二轮再在第一轮的基础上做例子的调整。
第三轮再在第二轮的基础上做文章遣词造句的润色。
按这种迭代的方式写文章的话,是不是难度就大大减低了呢?
价值二:减小风险
相较于降低难度,迭代更大的一个价值是可以减小风险。
一般要采用迭代方法的工作,都是不确定性很高的工作,比如研发一款20年后的主力武器,开拓一个新市场,做一个新发明等。
这类工作,没有现成的方法参考,而且可能过程中还有很多不可预见的变化发生。
采用预定义过程控制的方式,在一开始就投入好几个月做规划,制定出未来好几年的计划,然后一步步按计划来做,做到后来你会发现,实际要做的跟你规划的迥然不同。
但到这时,大量的时间和成本都已经被浪费掉了,工作要么大大延期和超支,要么干脆只能推倒重来。
美国加利福利亚州2008年规划的高铁项目就是一个典型的例子,从一开始的60亿美元预算猛增到770亿美元,预计通车时间从2033年推迟到不知道哪一年。
迭代的方式就可以有效避免这些风险,因为迭代的第一轮只是最小必要程度的投入,因此会大大减少时间延期和成本超支的风险。
价值三:确保质量
除了可以降低难度、减小风险,迭代最大的价值是可以确保最后成果的质量。
预定义过程控制的方式需要在一开始就明确好最终交付的成果,规定好每一步的工作。
以给客户做企业管理软件为例,传统的实施方法要求客户在一开始就明确好自己的业务需求,然后在SOW(工作说明书)里白纸黑字写清楚我们只做这些双方约定好的内容。
但企业的管理是复杂的,外部的经营环境也是在不断变化的,几乎没有人能够在一开始就预测好所有的需求。
因此,在传统的实施方法下,几乎100%的项目,在实施过程中都会发生顾问公司和客户相互扯皮的现象。
顾问公司坚持要按SOW的约定来做,如果要改就要加钱,因为你现在不要的这些功能,我已经投入很多工作量了;客户坚持要免费按新的需求来做,因为SOW里约定的交付成果不是我要的。
在这种扯皮之下,最终的交付成果往往是双方妥协的一个结果——勉强能用,但距离客户的真正所需还有挺大差距。
这种情况下,客户不满意,顾问公司也亏损(因为不得不承担部分返工的成本)。
但如果采用迭代的方式,就可以确保最终输出的成果是双方都满意的了。
因为迭代的每一轮都是以最短的时间、最小的投入,输出一个阶段成果,双方都能快速确认这是否是当前所需,即使有预见不到的变化也没问题,下一轮调整就可以了。
既然迭代有这三大价值(降低难度、减小风险、确保质量),那具体该如何做呢?
根据迭代的对象不同,迭代主要有两种方式:
迭代方式一:由粗到细
迭代方式二:由小到大
03、迭代方式一:由粗到细
由粗到细的迭代方式,适用于交付对象只能一次性给出,不能局部使用的情况。
比如,写一个方案、画一个蓝图、盖一座房子。
它的迭代方式类似于一幅画像的制作。如下图所示:
图1:从粗到细的迭代方式示例
这种迭代方式主要分为三个步骤:
步骤一:勾勒整体框架
先勾勒出一个粗线条的整体框架,是由粗到细迭代方式的基础。
这有助于在不确定的情况下,以最小的时间和投入,先形成初步的思路或达成初步的共识。
比如,家里想做一个装修,自己也不知道要做成什么样的,只知道要显得有品位一点。
在这种模糊的需求下,设计师就可以先勾勒一份粗线条的整体设计图,再跟你一起在这份整体设计图做讨论,形成最初的思路。
步骤二:实现核心部分
粗线条的整体框架出来后,第二步就是要实现这个整体框架中的核心部分了。
优先实现核心部分的目的有两个:
①这是最关键的部分,核心部分确定了后,后续的迭代工作就有起点了,不然需求依然是模糊的。
②其它部分是依赖或配合核心部分的,如果核心部分未确定,其它部分工作先做的话,很容易因为核心部分的调整,要全部返工重做。
还以家里装修为例。
设计师跟你初步确定整体设计图后,就可以先将主要区域(比如客厅)做渲染图,让你看下配色和搭配是否符合你的预期。
如果不符合的话,就再修改,在这个修改过程中,还可能反过来对第一步的整体设计图再做调整(甚至可以推倒重来)。
主要区域的配色和搭配符合你要求后,这份装修设计图的最核心部分就算确定了,后面即使有调整,也都是小修小补的内容了。
正常情况下,前两个步骤只占到整体工作量的20%,但却完成了80%的功能。
步骤三:一轮一轮细化
整体框架和核心部分都完成后,接下来要做的工作就是一轮又一轮地细化了,将最终成品打磨得越来越精细。
这个一轮又一轮打磨的过程,虽然功能只占20%,但至少会占到80%的工作量。
继续以装修设计图为例。
主要区域的配色和搭配确定了后,虽然以后的工作已经不会影响到整体装修风格了,但你们会因为选用什么灯具、艺术画应该挂哪个位置,反复修改调整,耗费不少时间。
最终,经过一轮又一轮的修改,设计师会完成家里所有区域的渲染图,并且这个设计图会很符合你的预期。
以上就是从粗到细迭代的三个步骤,对于任何需要一次性完整输出的成果(如,写文章、编方案、做设计等),在需求不明确或你思路不清晰的情况下,都可以采用这种迭代的做法,从整体到局部,到模糊到清晰,逐步精细化。
这既能解决你因为畏难迟迟不愿动手的问题,又能让你输出一个高质量的成果。
04、迭代方式二:由小到大
第二种迭代的方式是由小到大。这种迭代的方式适用于交付对象可以部分功能先使用的情况。
比如,微信的开发、今日头条APP的开发等。
这种迭代方式类似于一个螺旋圈,由一个核心不断往外扩展。
图2:从小到大的迭代方式
这种迭代方式主要也分为三个步骤:
步骤一:快速出最小可行的成品
在最短的时间内,出一个最小可行的产品,是从小到大迭代的核心。
在不确定的情况下,这种做法有两个核心价值:
①可以快速响应市场变化,第一时间抓住商机。
②以最少的时间和成本实现试错,避免重大方向失误。
像微信,在2011年1月21日推出的时候,只有最简单的文字消息和图片功能。
图3:微信1.0版本功能(图片来自互联网,若有侵权请联系删除)
但就是通过这个最基本的手机社交功能,微信在第一时间抓住了移动互联社交的商机,并且明确了这个赛道值得投入。
步骤二:快速验证调整
最小可行性产品的推出,是为了验证方向是否正确,以及采集更多真实用户的使用需求的。
因此,在最小可行性产品推出后,要以最快的速度来测试用户反应,看看这个方向是否满足了用户的最核心诉求,同时采集用户需求,明确产品下一步迭代的核心功能。
还以微信为例。
2011年1月21日,微信推出了1.0版本,截至2011年5月10日,微信已经连续推出了1.1、1.2、2.0版本,四个月的时间完成了四次体验版的更新。
到微信2.0版本,就在快速验证调整的基础上,推出了里程碑功能:语音对讲。
图4:微信2.0版本新增功能(图片来自互联网,若有侵权请联系删除)
这个功能就充分抓住了用户非常核心的一个诉求:语音通话,从而大规模地收割了传统移动通信运营商的海量用户。
我自己就是被这个功能吸引从而使用微信的。
步骤三:持续功能叠加
经过前两个步骤,产品就已经被确定值得往下做了。在这个基础上,产品就可以像螺旋圈一样,根据用户需求的优先级别,不断地叠加越来越多的新功能了。
像现在的微信,就不只是一个单纯的移动社交app了,而是一个超多功能的入口。
以上就是由小到大迭代的三个步骤,这种迭代方式特别适用于产品的开发,已成为移动互联网时代下产品的标准开发模式了。
05、小结
在确定的情况下,预定义过程控制的方式是一种最高效的解决问题的方式。
但在高度不确定的情况下(比如需求不清晰,外部环境变幻莫测,不可预见的变化多),相较于预定义过程控制的方式,迭代则是一种更有效的解决问题的方式。
它既可以帮你更简单地开始一项高难度的工作,又可以帮你降低各种延时超支的风险,更重要的是它能帮你找到正确的方向,输出更高质量的成果。
在需求不明确或你思路不清晰的情况下,你都可以尝试下迭代的工作方式:
1、如果你要交付的对象是需要一次性完整输出的成果,就可以采用从粗到细的迭代方式。
2、如果你要交付对象的部分功能可以先使用,就可以采用从小到大的迭代方式。