MVP、原型、概念验证,傻傻分不清楚?
MVP、原型以及概念验证这三者的概念虽然没有密切的联系,但也有不少人会分不清这三者的区别,在这篇文章中,我们会帮大家区分一下这三个概念。
首先是MVP,MVP是Minimum Viable Product的缩写,即最小可行性产品。 MVP通过发布一个产品的早期版本,来获取用户对该产品的反馈,从而开发出更能满足用户需求的产品。简单来讲,MVP提供了测试市场以及客户需求的机会,从而避免产品开发方向出现偏差;MVP帮助公司在产品的早期阶段就能够通过交付价值来吸引一部分客户,获得收入;同样,MVP也能够帮助产品提前进入市场,凭借前期优势建立品牌影响力。
Airbnb就是一个很典型的MVP例子。起初,Airbnb公司创始人认为公寓出租这一想法虽然很好,但还是要先确保这个想法能够赚钱。于是为了验证这一点,他们出租了自己的公寓,开发了一个基本的网站来展示这套公寓。在这个最早的MVP投向市场后,他们发现这个想法是可行的,公寓很快就被租用了。之后,Airbnb公司开始在这个MVP的基础上进一步完善他们的软件,并扩大自身的业务。
接着是原型, 原型是一种帮助研发人员、测试人员等产品实现侧的团队成员更清楚地理解产品设计的交付物。原型能通过可视化产品设计方案以及底层逻辑,来清晰地表达产品需求。产品原型并不是一份设计图,而是一个更加简单、方便修改、能够看到功能性与逻辑性的产品设计方案。
最后是概念验证,概念验证(PoC)是Proof of Concept的缩写,是 为了证明某种方法或想法的可行性而进行的一种实现或原理上的论证,旨在验证某些概念或理论具有实用潜力。和MVP相比,概念验证通常也比较小,可能包含完整的功能,也可能并不包含完整的功能,具体需要根据需要而变动。
为了让大家更直观地感受到这三者之间的区别,给大家一个表格以供参考:
接下来,我们会就如何构建一个MVP入手,带大家来了解如何更好地验证想法。首先我们要明确, MVP并不完美,它不会拥有产品的所有功能,只是一个能够验证最初创意的简单、新颖的产品。
如何构建和验证MVP?
1、进行市场调研
在开始构建产品MVP之前,我们需要研究一下市场中已有的同类产品,了解它们有哪些功能,以及客户为什么使用它们。
2、评估想法的商业性
从客户细分(你要把产品或服务卖给谁)、价值主张(为客户提供的利益的集合或组合)、渠道通路(一家企业如何同它的客户群体达成沟通并建立联系,以向对方传递自身的价值主张)、客户关系(一家企业针对某一个客户群体所建立的客户关系类型)、收入来源(企业从每一个客户群体获得的现金收益)、核心资源(保证一个商业模式顺利运行所需的最重要的资产)、关键业务(保障其商业模式正常运作所需的最重要的事情)、重要伙伴(保证一个商业模式顺利运行所需的供应商和合作伙伴网络)、成本结构(运营一个商业模式所发生的全部成本)等九大部分出发,来绘制产品的商业模式画布。
3、决定功能的优先级
基于我们之前进行的市场调研结果以及商业模式画布,定义MVP必须具备的功能。这些将是“必须具备的”功能,能够为客户提供价值。
4、开始构建MVP
根据确定的优先级开发MVP,在构建的时候要遵循一个原则:够好即可。
5、验证
准备好MVP后,我们可以将MVP投放到市场,并收集市场反馈,以便在后期的产品方向上做出调整和改进。
6、完善
MVP只是迭代开发的第一步。在确定了整体的大方向后,我们可以结合敏捷项目管理,制定进一步的迭代开发计划,通过不断地交付给客户可用的产品增量,来继续满足客户的需求,带来收入并获得竞争优势。
当公司对产品方向或产品的发展前景比较迷茫时,可以通过MVP,用小成本来快速地获取市场最真实的反馈 ,从而收获更大的利益。
MVP、原型、概念验证,傻傻分不清楚?的更多相关文章
- MVP MVC MVVM 傻傻分不清
最近MVC (Model-View-Controller) 和MVVM (Model-View-ViewModel) 在微软圈成为显学,ASP.NET MVC 和WPF 的Prism (MVVM Fr ...
- [转帖]十分钟快速理解DPI和PPI,不再傻傻分不清!
十分钟快速理解DPI和PPI,不再傻傻分不清! https://baijiahao.baidu.com/s?id=1605834796518990333&wfr=spider&for= ...
- 【华为敏捷/DevOps实践】7. 敏捷,DevOps,傻傻不分清楚【华为云技术分享】
文:姚冬(华为云DevCloud首席技术布道师,资深DevOps与精益/敏捷专家,金融解决方案技术Leader,中国DevOpsDays社区核心组织者) 前言 敏捷是什么?DevOps是什么?两者有什 ...
- 傻傻分不清之 Cookie、Session、Token、JWT
傻傻分不清之 Cookie.Session.Token.JWT 什么是认证(Authentication) 通俗地讲就是验证当前用户的身份,证明“你是你自己”(比如:你每天上下班打卡,都需要通过指纹打 ...
- URI与URL傻傻分不清楚?
前言 总所周知,缓存是解决Http1.1协议传输性能的问题中最主要的手段. 缓存既可以存在于浏览器上,也可以存在于服务器中. 而影响缓存的Http头部有很多,其中Cache-Control是比较重要的 ...
- 【jvm】08-垃圾回收器那么多傻傻分不清?
[jvm]08-垃圾回收器那么多傻傻分不清? 欢迎关注b站账号/公众号[六边形战士夏宁],一个要把各项指标拉满的男人.该文章已在github目录收录. 屏幕前的大帅比和大漂亮如果有帮助到你的话请顺手点 ...
- JDBC、ORM、JPA、Spring Data JPA,傻傻分不清楚?一文带你厘清个中曲直,给你个选择SpringDataJPA的理由!
序言 Spring Data JPA作为Spring Data中对于关系型数据库支持的一种框架技术,属于ORM的一种,通过得当的使用,可以大大简化开发过程中对于数据操作的复杂度. 本文档隶属于< ...
- JS魔法堂:属性、特性,傻傻分不清楚
一.前言 或许你和我一样都曾经被下面的代码所困扰 var el = document.getElementById('dummy'); el.hello = "test"; con ...
- Java:接口和抽象类,傻傻分不清楚?
01. 来看网络上对接口的一番解释: 接口(英文:Interface),在 Java 编程语言中是一个抽象类型,是抽象方法的集合.一个类通过继承接口的方式,从而来继承接口的抽象方法. 兄弟们,你们怎么 ...
- OCA,OCP,OCM傻傻分不清?
可能大家知道OCA.OCP.OCM的关系是一个比一个难考,一个比一个含金量高,但是你知道具体的考试科目.考试方式.就业形势区别吗?不知道的话这篇通俗易懂的文章会让你一目了然. 区别一:含金量 ■OCA ...
随机推荐
- HDU3001 Travelling (状压DP)
题目没有起点限制,且每个节点至少访问1次,最多访问2次,所以用三进制数表示节点的状态(选取情况). 因为三进制数的每一位是0或1或2,所以预处理z状态S的第j位的数是有必要的. 边界条件:dp[tri ...
- 使用Java实现haskell-style的list
作为一个haskell这门函数式编程语言的爱好者,我特别喜欢它的list操作和推导功能.与传统面向对象或者过程语言不同的是,函数式语言通常喜欢把它们分为head.tail或者init.last等两部分 ...
- 【NOI2016】 循环之美 题解
Solution 由数论基础知识 答案即为$$\sum_{i = 1}^n\sum_{j = 1}^m[i \perp j][j \perp k]$$ 莫反套路可化为$$\sum_{d = 1}\mu ...
- 微服务架构学习与思考(11):开源 API 网关02-以 Java 为基础的 API 网关详细介绍
微服务架构学习与思考(11):开源 API 网关02-以 Java 为基础的 API 网关详细介绍 上一篇关于网关的文章: 微服务架构学习与思考(10):微服务网关和开源 API 网关01-以 Ngi ...
- golang中的选项模式
索引 https://waterflow.link/articles/1663835071801 当我在使用go-zero时,我看到了好多像下面这样的代码: ... type ( // RunOpti ...
- 从0搭建vue3组件库: 如何完整搭建一个前端脚手架?
相信大家在前端开发中都使用过很多前端脚手架,如vue-cli,create-vite,create-vue等:本篇文章将会为大家详细介绍这些前端脚手架是如何实现的,并且从零实现一个create-kit ...
- java中HashMap的设计精妙在哪?
摘要:本文结合图解和问题,教你一次性搞定HashMap 本文分享自华为云社区<java中HashMap的设计精妙在哪?用图解和几个问题教你一次性搞定HashMap>,作者:breakDaw ...
- 在 .NET 7上使用 WASM 和 WASI
WebAssembly(WASM)和WebAssembly System Interface(WASI)为开发人员开辟了新的世界..NET 开发人员在 Blazor WebAssembly 发布时熟悉 ...
- 【题解】CF631B Print Check
题面传送门 解决思路: 首先考虑到,一个点最终的情况只有三种可能:不被染色,被行染色,被列染色. 若一个点同时被行.列染色多次,显示出的是最后一次被染色的结果.所以我们可以使用结构体,对每一行.每一列 ...
- C#程序自启动
在窗体加载事件里面加入下述代码: //设置开机自启动 RegistryKey registryKey = Registry.CurrentUser.OpenSubKey ("SOFTWARE ...