宠文网

奔跑吧,程序员

宠文网 > 科普学习 > 奔跑吧,程序员

3.2MVP

书籍名:《奔跑吧,程序员》    作者:叶夫根尼.布里克曼
    《奔跑吧,程序员》章节:3.2MVP,宠文网网友提供全文无弹窗免费在线阅读。!



在创业时面临的第一个设计上的挑战,就是要实现产品最初的版本。即便你已经想出了出色的点子,也对真实的客户进行了验证,你也要耐住性子,把自己锁在房间里,花上一年时间去设计,才可能做出完美的产品。但是请记住,产品并不仅仅是一个点子,而是新的问题、新的想法和执行的不断循环。执行是昂贵的,所以你需要尽可能低成本、快速地向客户验证你遇到的每一个新问题和想法。最好的方法就是实现所谓的最简可行产品(minimum  viable  product),或者叫MVP。

MVP是一个经常会被误解的术语。“最简”(minimum)通常会被误读为“要尽你所能快速发布任何东西”;“可行”(viable)通常会被误解为“足够让产品起作用的功能”,这样会误导人们实现很多没有必要的功能,却忽略了实际上要紧的东西;而“产品”(product)则错误地暗示了MVP必须是一个产品,所以人们经常忽略对一些更简单、成本更低的点子实现MVP。

MVP这个术语是通过Eric  Ries的《精益创业》一书普及开来的,他在书中给出了一个恰当的定义:MVP是“新产品的某一个版本,团队可以利用它以最小的付出去最大程度上、验证性地了解客户”。MVP的关键就是从中学习,其目的就是找到成本最低的方式去验证对真实客户的假设。

MVP中的“最简”意味着所有对当前假设的验证没有直接帮助的东西都应该被排除。例如,当37signals最早推出他们的项目管理工具Basecamp时,他们的MVP并不具备要求客户支付的功能。他们所要验证的假设是客户会注册使用一个基于网页的、具有简单用户界面的项目管理工具。而支付系统对于这样的验证并没有帮助,所以只能从MVP中排除出去,后续再添加(如果客户在实际中开始注册的话)。换句话说,他们把时间花在找出既整洁又简单的MVP设计上,因为那是他们所要测试的基本假设。

MVP中的“可行”意味着MVP能够让客户接受它。MVP也许有bug,也许还缺少某些功能,也可能外观不怎么好看,甚至和最终实现的产品根本就不一样,但是它解决了客户所关心的问题。图3-35很好地展示了不可行的MVP和可行的MVP之间的差别。

图3-35:如何实现可行的MVP,图片由Henrik  Kniberg提供

最后,MVP中的“产品”实际上是“试验”。它可以是产品的工作原型或者更简单的东西,比如带有演示视频的登录页面——只要它可以验证你的假设就可以了(阅读3.2.1节了解更多信息)。

MVP的实现并不是一次性的行为。对某种东西而言,在找到可行的产品方案之前,极有可能需要实现多个MVP。但更为重要的是,MVP的构建不仅仅是在产品生命周期的早期所要做的一件事,它更多的是一种思考方式。不妨把它想成在玩纸牌游戏,每次都下一小点赌注,而不是一次就把房子全压上。不论你是在试验从未有人用过的新产品的点子,还是为已有大量用户的产品添加新的功能,都应该有使用MVP的习惯,我们可以把MVP的实现归纳为以下几点:

(1)找出风险最大、最重要的设想;

(2)把这种设想以一种可测试的假设描述出来;

(3)构建一个最小的实验(一个MVP)去测试你的假设;

(4)分析结果;

(5)用新发现去重复第一个步骤。

不管对一个点子有多么自信,一定要努力找到最小、成本最低的测试方法,而且要随时保持项目规模小、可改进。Standish集团通过对50  000多个IT项目进行研究,发现有3/4的小项目(少于100万美元)可以成功地完成,只有1/10的大项目(大于1000万美元)能够按时且在预算内完成,而超过1/3的大项目是彻底失败的。

通过深入研究,Standish集团明确指出,项目成功的秘密就是要坚决设立并实施对其规模和复杂度的限制。这两点是成功的最关键因素。

——The  Chaos  Manifesto  2013

接下来讲讲可以构建哪些类型的MVP。



3.2.1  MVP的类型


MVP并不一定是实际的产品,它只需要能够在客户使用的时候验证你的假设就可以了。以下是最常见的MVP类型。

展示页面

有一种比较容易实现、成本低、效果又出众的MVP,那就是做个简单网页,描述产品情况并在用户感兴趣的时候让他们提交某些信息,比如让用户提供email地址以便获得更多信息,或者让用户进行预订。总的思路就是向用户描述产品最理想的景象,看看它对用户有多大吸引力,哪怕产品尚不存在。如果你以最理想化的方式向用户描述了你的点子都无法说服一小部分人在你的邮件列表上注册,也许就需要再重新想想。例如,社交媒体管理应用Buffer开始时就用一个页面展示了有关产品的理念和价格细节,并提供了注册邮件获取更多信息的功能,如图3-36所示。他们获得了足够多的注册量,更重要的是,他们在价格选项上也获得了足够点击,令他们足以信心满满地去实现真正的产品。

图3-36:Buffer的MVP

与可用产品相比,展示页面上的文本和图片的更新速度更快,所以这也是探索设计、广告词和市场的最有效方式之一。我们可以对不同的表达方式进行试验,可以尝试针对不同的消费群体做工作,也可以尝试不同的价格策略,不断地重复,直到找到最有效的结果(阅读第4章了解如何评估每一次试验的表现情况)。我们也可以把自己的展示页面放在AWS或GitHub  Pages上,或者使用各种专为实现展示页面而定制的工具,比如LaunchRock、Optimizely、Lander或者LeadPages。

介绍视频

在Drew  Houston开始构建DropBox之前,他想确认自己不会花多年心血却做出无人问津的产品。但即便实现一个用户可以在自己电脑上试用的简单原型,也要花很长的时间,因为想要存储所有的数据,就需要搭建起一个可靠的、高性能的在线服务系统。Houston选择的替代方法是建构一个简单得多的MVP:一个具有注册表单,还带有4分钟讲解视频的展示页面,如图3-37所示。

图3-37:DropBox介绍视频

这段视频是介绍产品实际用途的一种很有效的方式,它不仅能描述产品的功能,还有一些为懂技术的观看者制作的复活节彩蛋(例如引用了《XKCD》漫画和《上班一条虫》中的内容)。Houston把视频放在Hacker  News和Digg网站上,在短短24小时内,展示页面就有数十万的访问量和7万人注册。这给了Houston很大的信心——实现真正的产品是值得的。还有像PowToon、GoAnimate和Gamtasia这样的工具,可以免费或以很少的预算制作出介绍视频。

众筹

Kickstarter或Indiegogo这样的众筹网站有点像带有介绍视频的展示页面,只不过对项目感兴趣的客户会给你钱支持你的项目,而不是只填写email地址。换句话说,这是一种让客户在你实现产品之前就掏钱购买产品的方式,也是最好的一种验证方法。最成功的Kickstarter众筹活动之一就是Pebble手表,该项目差不多只用一个原型就从68  000名赞助人手中筹集到了1000万美元,如图3-38所示。

图3-38:Pebble在实现产品之前就在Kickstarter上筹集到了1000万美元

绿野仙踪

所谓MVP的绿野仙踪童话,就是呈现给用户一个看似真实的产品,但幕后却由创始人手动实现所有的一切。例如,在Nick  Swinmurn测试Zappos的点子(在网上卖鞋)时,他到当地的鞋店,将他们现有的鞋都拍了照片,然后把照片挂到网站上,让网站看起来就像一个真正的在线鞋店,如图3-39所示。

图3-39:利用Internet  Archive找到的1999年的网站截图

当用户在网上下订单的时候,Swinmurn到当地的鞋店把鞋子买下,发给客户。Swinmurn验证“人们乐意在互联网上买鞋”设想的这种方法既不需要大量存货,也不需要拥有自动订单系统以及储存、配送鞋子的工厂。人们并不会关注你在幕后是怎么运作的。

拼凑式MVP

拼凑式的MVP类似于绿野仙踪式的MVP,只是拼凑式的MVP会尽可能以低成本的方式、用已有的事物自动实现人工实现的那部分。例如,为了制作Groupon的MVP,Andrew  Mason把定制的皮肤加在一个WordPress  Blog(见图3-40)上,用File  Maker去生成优惠券的PDF,再用Apple  Mail发送出去。

图3-40:利用Internet  Archive找到的2009年的groupon网页截图

读者可以访问http://hello-startup/resources/mvp,上面提供了构建MVP的一些工具列表。无论最终要实现哪种类型的MVP,关键是确保自己实现的是简化但仍然可用的东西,而最好的方法就是关注自己产品的差异性。



3.2.2  关注差异性


在一个名为“You  and  Your  Research”(你和你的研究)的演讲中(该演讲经常被俗称为“你和你的职业”,因为它的建议不仅可以用到研究中,也可以用在几乎所有职业上),贝尔实验室的著名数学家Richard  Hamming讲述了他在午餐时和一些化学研究员坐在一起发生的事。

一开始,我问道:“在你们的领域中,什么是最重要的问题?”差不多一周之后,我又问:“你们正在研究的最重要的问题是什么?”又过了更长的时间,有一天我过去又说:“如果你们正在做的事情不重要,而且你们觉得它也不会变得重要,为什么你们要在贝尔实验室里研究它?”从此以后,我就成为不受欢迎的人了,吃饭的时候只好找其他人坐在一起。

——Richard  Hamming,You  and  Your  Research

Richard  Hamming在贝尔实验室完成了一些重要的工作,因为他专门找出一些重要的问题,而不是挑感觉舒服的问题。尽管他提问的方式可能会让人不舒服,但这种方式是我们应该在生活中应用的。什么是自己所在领域中最重要的事情?自己正在做的事情又是什么?为什么它们会不一致呢?

同样的道理也可以用在制作MVP上。对你的产品而言,什么是重要的问题?你在MVP中实际实现的又是什么?为什么会不一致?产品最重要的一点就是差异性:让产品和其他替代品区分开来的特性。人们通常把差异性称为“竞争优势”,但这个词听起来就像其他优势一样,不管超过多少,只要具备就足够了。事实并非如此,你的差异性必须比竞争者多得多才行。你要寻求的不是10%的改进,而是10倍的改进。做不到这点,大多数客户就觉得不值得花工夫换成你的产品。

因此,很重要的一点就是要问自己:我的产品有哪两三个地方是做得特别出色的?只要你找出了这样几个核心特性,就可以以此做出你的MVP,先忽略其他东西。例如,当Google开始推出Gmail的时候,它的差异性就是提供1GB的存储空间(那个时期其他大多数email提供商只会给你4MB)以及灵活的用户界面(拥有对话视图、强大的搜索功能,使用Ajax技术即时显示最新的email,不需要非得刷新页面才能看得到)。而其他几乎所有的特性,比如“富文本”的编辑器和地址本,都是最简单的实现或者就没有——但这些都无关紧要,因为它提供的差异性如此引入注目,使得其他所有的email服务看起来都变得黯淡无光。

另一个很好的例子就是最早的iPhone。Apple以提供完整、优美、端到端的解决方案而著称,但从很多方面来看,最早的iPhone就是一个MVP。它没有应用商店、GPS、3G、前摄像头,没有后摄像头闪光灯、游戏、即时消息、复制和粘贴、多任务、无线同步、Exchange邮件、彩信、蓝牙立体声、语音拨号、音频录制或视频录制。尽管这样,iPhone仍然领先其他智能手机好几年,因为Apple持续不断地把注意力放在如何把少数几件事情做得异常出色上:它在多指触碰用户界面、硬件设计、音乐及上网体验上至少比其他手机好上10倍,让顾客爱上了它。

让客户爱上你的产品,而不只是喜欢它,这是一个巨大的优势。让一个已经有少量用户爱上的产品变得有更多的用户爱上,比起让大量的用户从喜欢一个产品变成爱上一个产品,前者要容易得多。让一个用户从“喜欢”到“爱”,你要让他们大为心动才行。你需要让他们能大叫一声由衷地赞叹,想想最后一次有东西让你发出赞叹的感觉,很可能是有人超出你的预期,让你高兴不已,也可能是一些超乎寻常的东西。因为做出不同一般的东西本身就要花大量的时间,所以,如果你想让用户能够爱上你,比起让许多事情都差强人意,你应该让少数事情无与伦比。

那么,我们怎么知道要把关注点放在哪些特性上呢?有一种方法,就是在做出产品之前,先写一篇宣布产品发布的博客,看看文章中有哪两到三个关键特性是你会重点宣传的,你会在插图中展示哪些特性,博客的标题会是什么。好的博客文章都是简短的,所以这样的训练可以帮助我们梳理出哪些特性真正能让产品充满诱惑力。这样的特性就是MVP必不可少的,其余的一切都是可选的。事实上,其余的一切不仅仅是可选的,大多数时候,甚至对产品是有害的。每一个额外的特性都会带来显著的成本(阅读3.1.2节了解更多信息),所以,除非该特性对取悦客户或者验证假设是绝对不可或缺的,否则就不应该放到MVP中。

只要找出产品的差异性,并且以此制作MVP,我们就可以利用它去验证假设。而最为重要的验证,就是让顾客去购买我们的MVP。



3.2.3  购买MVP


我们要对MVP确定一个目标,即便在很早的阶段,也要让客户购买你的解决方案。注意,这里强调了“购买”一词。许多人会告诉你他们“喜欢”一个点子,甚至也许想得到它。但是,喜欢某种东西和承诺会购买某种东西是大不相同的。购买一种新产品不仅仅要花费金钱,还要花费时间——他需要花时间去说服家人(如果是消费产品的话)或者同事(如果是企业产品的话),让他们相信产品是值得的;而且,还要花时间去安装和部署,花时间培训自己和别人去使用它,将来还得花时间去维护和更新。即便你的产品对某些用户是免费的(例如靠广告支持的网站或者免费增值服务),他还是要付出自己的时间,而时间因素也会让他们考虑一番。所以,不管你考虑采用什么样的定价策略,目标就是要让客户牢牢承诺会购买你的产品。

之前介绍的每一种MVP,即便是最简化的类型,也为客户提供了购买的机会。显然,这就是众筹MVP的意义所在。但是,我们还可以在展示页面类的MVP上提供预订表单,也可以用绿野仙踪式的MVP去收费,哪怕不得不接受现金支付。我们也可以不断调整价格,直到找到最佳价格,但别把它免费提供给别人。事实上,调整价格就是一种很好的方法,可以了解客户对待产品的认真程度。

我问(我的客户)“如果产品是免费的,有多少人会真的购买或使用”的目的就是把价格因素抛开,看看产品本身是否能够让客户心动。如果做到了,我会接着问几个问题:“好了,这个产品不是免费的。事实上,假设我要收取你们100万美元,你们还会购买吗?”虽然这种对话听起来有点儿像开玩笑,但我一直在用这种方法。为什么呢?因为超过一半的时候,客户会像这样说:“Steve,你怕是疯了吧。这个产品不会值25万美元以上。”其实,我只不过想让客户告诉我,你们愿意支付多少钱而已。

——Steve  Blank,《四步创业法》

什么样的客户会承诺购买并不存在的产品呢?或者这么问,即便是可用的原型,什么样的客户乐意用你全新的创业产品去开展业务,而不顾各种bug、性能问题、缺失的功能,而且你还有可能在几个月之后就歇业了?在《创新的扩散》一书中,Everett  Rogers把客户分成了5种类型。

(1)创新者愿意承担新技术的风险,因为技术本身就是他们生活中的主要兴趣,不管功能如何,他们总是留心寻找最新的发明。

(2)早期采用者也愿意承担新技术的风险,不仅仅因为他们对技术感兴趣,还因为他们很容易联想到该技术将会给生活带来什么样的好处。

(3)早期的大多数客户是迫切需要解决具体问题的。他们能够想象到新技术是怎样成为解决方案的,但又知道许多新的技术革新最终都会失败,所以在自己购买新技术之前,他们更愿意等待,看看该技术是否能解决他人的问题。

(4)后期的大多数客户也有需要解决的具体问题,但他们不喜欢使用新技术去解决问题。他们更愿意等到一项技术成熟,自身已经成为标准,并且已经具备了很好的支持体系才会购买。

(5)滞后者会尽可能避免使用新技术。他们是最后采纳新发明的人,而且通常都是在别无选择的情况下才会采纳。

每种类型客户的数量在大体上遵循钟形曲线分布,如图3-41所示。

图3-41:创新的扩散

要想成就一家成功的公司,通常来说,我们必须把产品销售给早期和后期的大多数客户。但只有说服创新者和早期采用者购买我们的产品,公司才能达到这一阶段。也就是说,创新是沿着图3-41中的钟形曲线从左到右扩散的,只有在前一阶段取得成功,才能够跳入新的阶段中。而且每种类型客户的要求是不同的,所以,理解目标客户的类型就至关重要了。否则,将产生错误的产品、错误的营销策略和错误的销售方法。

早期采用者的购买……就是很有效的变革推动。早期采用者希望成为他们行业中首先实现变革的,不论是降低产品的成本,还是快速占领市场、提供完善的客户服务,或者形成其他一些可比较的商业优势,凭此在竞争中取得领先地位。他们希望在旧方法和新方法之间有彻底的分割,他们已经准备好与根深蒂固的抵抗力量做斗争并捍卫这一过程。作为第一个吃螃蟹的人,他们也做好了心理准备,去忍受必然出现的bug以及任何刚投向市场的革新所带来的各种小毛病。

——Geoffrey  Moore、Regis  Mckenna,《跨越鸿沟》

在创业早期仍在验证问题和解决方案的时候,我们的目标就是找到合适的早期采用者。他们是在我们的解决方案远未准备好之前就会承诺购买的客户,因为他们相信的是我们提出的愿景而不是具体的产品。Steve  Blank把这样的客户称为早期传教士,并提供了一份实用指南,帮助我们找出这样的人。

·  他们有问题或需要。

·  他们明白自己遇到了问题。

·  他们正在积极地寻找解决方案,并且设定了找到方案的时间表。

·  问题让他们非常痛苦,所以他们已经拼凑出了临时的解决办法。

·  他们已经承诺购买,或者可以在短时间内获得或申请到预算去购买。

——Steve  Blank,《四步创业法》

如果你发现了一个已经自己鼓捣出临时解决方案的客户,这也许就是最好的信号了,因为你已经发现了真正的问题,已经提前迈出了一步。每个行业都有早期传教士,尽管这样的人通常都不会很多。也就是说,在早期还没有产品和客户的时候,即便能够得到一个客户都是个巨大的胜利。在我们获得数千或数百万的客户之前,要先得到一个客户,才能一而十、十而百……为此,我们可能不得不做一些无法规模化的事情。



3.2.4  创业须从无法规模化的事情做起


Y  Combinator最经常给创业公司提供的一条建议就是:创业须从无法规模化的事情做起。也就是说,在创业的早期,我们也许不得不亲自动手做很多事情,比如招聘人员、招募用户以及提供客户服务。这些事情会让人感觉效率低下,特别是对程序员来说,他们总是会叫嚷:“但这些都是无法规模化的事情!”可是,这些体力劳动通常是让公司这一机器转动的唯一途径。而且只有在公司发展起来之后,我们才能去考虑规模化的事情。例如,Airbnb的创始人在纽约挨家挨户地招募早期用户,甚至帮他们给公寓照相;Homejoy(一家帮助客户寻找家居清洁服务的公司)的创始人最初会去到客户的家里,自己进行全部清洁工作;Pinterest的创始人会去咖啡店里亲自让陌生人使用他们的产品,也会去Apple的体验商店把所有的浏览器首页都设置为Pinterest;Wufoo(一家帮助用户创建在线表单的创业公司)的员工过去经常会把手写的感谢信送到每一个客户手中。

也许影响创始人意识到能够在多大程度上关心用户的最大障碍,就是他们自己从来没有体验过这样的关心。他们对待客户服务的标准是依据他们自己作为客户的那些公司的标准来设定的,而那些通常都是些大公司。蒂姆·库克不会在你买了笔记本电脑之后给你寄一张手写的卡片——他做不到,但你可以。这就是小公司的好处:你可以提供大公司实现不了的服务。

一旦意识到现有的一些习惯做法并没有超出用户的预期体验,不妨好好想想,我们可以用多少手段去取悦用户,这是很有意思的。

——Paul  Graham,Y  Combinator联合创始人,硅谷创业教父,《黑客与画家》作者

当你还是一家小型创业公司,仍然还在验证自己的点子时,做一些无法规模化的事情去获得早期的客户是你可以承担的方式。如果点子可行,后续可以通过自动化的方式,让这一过程变得更具扩展性;但如果点子不可行(大多数点子都是这样的结果),那么你也节省了大量的时间,因为你不需要为了错误的事情而做一大堆自动化工作。另外,这种方式可以让你直接接触业务的烦琐细节,你会成为领域的专家,而这一点在前面已经说过,它对于想出伟大的点子是至关重要的。