MVP(最小可行性产品)这一概念已经流行了一段时间。这个词是由Frank Robinson发明的,然后由Steve Blank以及《Lean Startup》的作者Eric Ries推广流行起来。然而MVP在软件开发中也成了有最多误解,最被滥用的概念之一。
什么是MVP?
Frank Robinson在2001年发明了这个词,他将MVP定义为:
unique product that maximizes the return on risk for the vendor and the customer.
在他的定义中,“Product”指的是可以真正用来售卖的产品。“Viable”是指最大化的收益。
Eric Ries 第一次使用这个词是在2009他的一篇博客当中。他描述到:
A Minimum Viable Product is that version of a new product which allows a team to collect the maximum amount of validated learning about customers with the least effort.
随后,他逐渐将其简化为:
An MVP is the smallest thing you can build that lets you quickly make it around the build/measure/learn loop.
在他的MVP定义中,“Product”指的是任何可以用来测试,验证假说的事物。“Viable”则是指可以从中学到些东西。
Jeff Patton在2014年他的著作《User Story Mapping》中,他将MVP描述如下:
The minimum number of feature release required for a customer to continuously utilize your product (reach the desired outcome). Each iteration being an experiment to determine whether the customer or its users lite the enhancements or not.
在他的描述中,“Product”是指功能的发布。“Viable”指的是期望的成果。
这或许也就解释了为什么我们对于MVP有着不同的理解。对于我来说,这些都是非常好的概念,非常棒的想法。最重要的不是去纠结MVP的概念到底是什么,而是去理解这个概念背后那些原则以及这个概念的所倡导的价值观。在2020年RSG的大会上,我介绍了Building With Learning这个模型,希望能借助这个模型帮助大家更好的理解MVP。
Building With Learning模型的三个维度
第一个维度:Learning
Learning这个维度指的是在当下这个时间点上,我们对于所要做的事情,想法等所知有多少。产品的可行性,客户真正的需求,客户满意度,技术难点,价格定位,开发周期和成本,行业竞争力等等。这个维度反映的是我们对于开发这样一个产品/功能,信心水平有多高,风险等级有多高,以及我们有多少的数据支撑我们这个想法。在这个维度上位置越低,意味着当前并没有太多的证据支撑,信心水平相对更低,风险也就更高。在这个维度上位置越高,意味着当前有充足的证据支撑这个想法,信心水平很高,相应的风险也很低。
第二个维度:Building
Building这个维度指的是那些我们计划做的实践活动具有哪些特性。各种类型的实践活动,采访,调研,用户观察,404测试,原型设计建造,A/B测试等等。这个维度反映的是对于我们所采用的这些实践活动,它们所要花费的时间有多少,实施的复杂度有多少,相应的成本有多高。在这个维度上越靠近原点,意味着所采用的实践活动,需要较少的时间完成,实施复杂度不高,相应的成本也很低。 在这个维度上越远离原点,意味着所采用的时间活动,需要较长的时间完成,实施复杂度很高,相应的成本也很高。
第三个维度:Target People
Target People这个维度指的是那些我们计划的实践活动的目标人群。所有各类实践活动,都要考虑一下对应的受众是谁。这个维度反映的是对于我们所采用的这些实践活动,它们所对应的受众人群的规模大小。在这个模型当中,实践活动圈的大小代表了目标人群规模的大小。圈越大,代表着这个实践活动的受众越多,圈越小,代表着这个实践活动的受众越小。这里需要我们注意到的是,同样的实践活动,目标人群规模越大,相应的完成它需要的时间也就越多,实施的复杂度也会越高,相应的成本也就越高。在模型当中的体现是,在Building的这个维度上,这个实践活动也就会越远离原点。这个维度往往是我们在制定MVP时,比较容易忽略的方面。
在Building With Learning 模型中,当需要定义一个MVP的时候,从这三个维度出发,基于目前所知,针对所选的目标人群,选择一个合适的实践活动。

Building With Learning 模型
在Building With Learning模型当中,除了利用三个维度来考量一个MVP,另外一个非常重要的方面是将模型进行了分区,以更好的帮助选择合适的MVP。

此模型中,划分了三个区域,中间的浅黄色的区域被称为 MVP ZONE,也就是说在这个区域里的实践活动才是比较理想的MVP的选择。这里需要注意的是,上图中MVP ZONE里提到了一些活动实践,这些只是些例子,并非只有这些活动实践才是合适的MVP候选,还有很多实践活动可以作为MVP。这个区域的意义不在于这个区域中有哪些具体的实践活动,而是说在这里的这些实践活动,都是基于当前的所知,有针对性的选择了一定的人群,考虑了这些实践的时间,复杂度以及成本,而做出的选择。
另外两块灰色的区域,对于落在这些区域中的实践活动则不是一个合适的MVP的候选。为什么这么说呢?我们先看一下位于上方的这块区域。这块区域相对应的Learning的维度,相对来说比较高,也就意味着我们目前的所知已经很多了,信心水平也很高,相对应的风险也十分可控。在Building的维度上比较靠近原点。这个时候再去选择一些主要用于收集信息,了解需求,或者是验证一些想法等,这些并非真正开发产品的活动实践,并非明智的选择,而是在浪费时间。 这个时候应该着手在实际产品开发的实践活动上,尽快的完成产品的交付。再来看看下面这块区域。这块区域相对应的Learning的维度,相对来说比较低,这意味着目前的所知十分有限,并没有很多的证据支撑想法,信心水平不高,相对应的风险也很大。 在Building的维度上比较远离原点,说明这个区域内的实践活动,相对的时间周期比较成,复杂度很高,投入巨大。这个时候去选择这些实践活动,往往冒着巨大的风险,很可能是在产品需求,技术选型,产品可行性并不明确的时候,花费了大量的时间,资金的投入在这类实践活动中,也不是明智的选择,很可能面临的是巨大的失败。
在了解了这三个区域的划分后,对于哪些实践活动是合适的MVP就不难理解了。 对于任何实践活动来说,并没有也不该有个标签说,哪些是MVP,哪些不是MVP。换句话说,任何实践活动都可能成为一个合适的MVP,而这取决于具体的环境,对应到此模型中,就是Learning维度,我们所知有多少以及此实践活动所要覆盖的目标人群(Target People)。要知道的是,同样的实践活动可能会落在三个区域中的任何一个中。
Building With Learning模型的应用
举个例子简单的看看如何应用这个模型。假设我们有了一个新的想法,无论是新的产品,解决方案,功能特性等等,很可能的情形是,一开始我们的所知十分有限,目标客户是否有这个需求,客户对这个新功能的期待是什么,这个时候我们需要的MVP是那些相对容易实施,周期短,花费少的实践活动,主要用来收集信息,了解需求等。在这些MVP完成之后,有了更多的证据支撑这个想法,相对应的在Learning的维度上有所提高,信心也提升了一些。这个时候对于这个新想法的所知还不足以支持我们开始实际的产品开发工作。可以选择一些花费稍多,周期稍长,复杂度稍高的一些实践活动,可以收集数据,测试并验证我们的一些想法。随着这些MVP的完成,在Learning的维度上进一步提升,对于这个新想法的所知,足够支撑开展一些实际的产品开发工作,这时可以选择一些产品或者功能原型的开发,基于这些原型进行A/B测试等等,这些实践活动相对花费时间较长,复杂度比较高,投入也比较大。 随后,则需要着手在实际产品开发的实践活动上,尽快的完成产品的交付。
所以对于这个模型,并没有告诉你哪些实践活动才是MVP,这不重要。这个模型想告诉大家的是,在制定MVP的时候,需要基于当前具体环境,当前的所知,设定的目标人群,选择合适的实践活动作为MVP。
小结
什么是MVP,并不是很重要。
任何实践活动都可以成为合适/不合适的MVP,取决于具体的环境,当下所知。
参考Building With Learning模型,考量三个维度来选择合适的MVP。
发布者:Cary Bao,转转请注明出处:https://tobeagile.cn/2020/09/21/building-with-learning-model/