炼金术(1): 识别项目开发中的ProtoType、Demo、MVP
软件开发是很分裂的,只有不断使用原则和规律,才能带来质量。
只要不是玩具性质的项目,项目应该可以大概划分为0-1,1-10,10-100,100-1000四个种重要阶段。其中,0-1是原型验证性的;1-10是Demo展示性的;而10-100是项目的最小功能集,可以让产品初步达到可以第一次发布的阶段;最后100-1000则需要对项目做持续的迭代,完善项目的完整功能,达成完整发布。
项目立项的时候,可以为一个项目做出原型(ProtoType)。项目原型是内部用的,使用的开发工具也可以是内部的。原型的核心目的是验证项目的核心能力,以及这个核心能力是有价值的,值得我们为之发起一个团队项目去设计、实现、测试、发布产品。原型对应的是项目的0-1阶段。
项目立项之后,可以为一个项目做出Demo。项目Demo是对外的,Demo要至少能看能用能展示核心功能。Demo的核心目的是展示项目的核心功能,让外部看到产品能提供的一些关键和核心能力,作为项目可以达成目标的初步证明。Demo对应的是项目的1-10阶段。
Demo阶段过后,需要立即对项目整体功能做功能规约,找出项目完整功能的最小子集,也就是所谓的MVP(Minimum Viable Product),如下图中,从项目的大金字塔中切出一个产品真正的MVP部分,也就是如下的阴影部分。并且在这个基础上控制需求、人力、时间、金钱等成本优先做好这些阴影部分,以达到第1个产品可用功能发布。MVP发布是一个核心功能完备的可用的产品,它不是Demo、更不是ProtoType。在MVP阶段,如果需求、人力、时间、金钱没有做好严格控制,就会导致MVP膨胀,从而大概率就会延期,并且无法形成项目的良性的短周期设计-开发-测试-发布-反馈循环。

识别项目开发中的ProtoType、Demo、MVP,对于项目初期控制是有用的,这三者应该被识别出来。
参考资料:
[1] Demos, Prototypes, and MVPs
--end--
炼金术(1): 识别项目开发中的ProtoType、Demo、MVP的更多相关文章
- 团队项目开发中,常见的版本控制有svn,git
团队项目开发中,常见的版本控制有svn,git
- 项目开发中的一些注意事项以及技巧总结 基于Repository模式设计项目架构—你可以参考的项目架构设计 Asp.Net Core中使用RSA加密 EF Core中的多对多映射如何实现? asp.net core下的如何给网站做安全设置 获取服务端https证书 Js异常捕获
项目开发中的一些注意事项以及技巧总结 1.jquery采用ajax向后端请求时,MVC框架并不能返回View的数据,也就是一般我们使用View().PartialView()等,只能返回json以 ...
- Angular 项目开发中父子组件传参
在项目开发中经常会遇到 组件之间传参的问题.今天总结下在使用angular的项目中父子组件传参的问题: 1.父组件向子组件传参: 然后在父组件中 然后在父组件的html中 然后就可以在子组件中使用了 ...
- 《Maven在Java项目开发中的应用》论文笔记(十七)
标题:Maven在Java项目开发中的应用 一.基本信息 时间:2019 来源:山西农业大学 关键词:Maven:Java Web:仓库:开发人员:极限编程; 二.研究内容 1.Maven 基本原理概 ...
- 项目开发中的git简单使用
原文地址: https://www.zhuyilong.fun/tech/the-blog-git.html 示例远程仓库地址: https://github.com/zhu-longge/gitWo ...
- MyBatis 项目开发中是基于 XML 还是注解?
只要你对 MyBatis 有所认识和了解,想必知道 MyBatis 有两种 SQL 语句映射模式,一种是基于注解,一种是基于XML. 基于 XML <mapper namespace=" ...
- Java项目开发中实现分页的三种方式一篇包会
前言 Java项目开发中经常要用到分页功能,现在普遍使用SpringBoot进行快速开发,而数据层主要整合SpringDataJPA和MyBatis两种框架,这两种框架都提供了相应的分页工具,使用 ...
- 项目开发中Maven的单向依赖-2022新项目
一.业务场景 工作多年,在真实的项目开发中经常会遇到将一个项目拆分成多个工程的情况,比如将一个真实的项目拆分成controller层,service层, dao层,common公共服务层等等.这样拆分 ...
- iOS项目开发中的知识点与问题收集整理①(Part 一)
前言部分 注:本文并非绝对原创 大部分内容摘自 http://blog.csdn.net/hengshujiyi/article/details/20943045 文中有些方法可能已过时并不适用于现在 ...
随机推荐
- DockerToolbox安装docker - Windows 10
Wiindows安装docker 在转换成linux模式的时候不能使用,只能退而求其次安装Docker ToolBox在windows10中使用docker. 一.前言 由于本机使用的是win10家庭 ...
- Codeforces A. Serval and Bus
inputstandard inputoutputstandard outputIt is raining heavily. But this is the first day for Serval, ...
- The entity type XXX is not part of the model for the current context.
今天遇到了一个奇葩问题,虽然解决了,但还是一脸懵,先附赠一下别人的解决方案:https://www.cnblogs.com/zwjaaron/archive/2012/06/08/2541430.ht ...
- 对C#单例模式的理解
2018年11月6日 小雨 一.单例模式的定义 确保一个类只有一个实例,并提供一个全局访问点来访问这个唯一的实例,是一种对象创建型模式,有如下3个要点: 只能有一个实例 必须是自行创建这个 ...
- 【做题笔记】P1090 合并果子
题目大意:给定 \(n\) 个数,每次可以任意选两个数 \(a_i,a_j\) 相加,把相加的结果作为一个新数继续执行此操作,直到只剩一个数为止.现要求使最后得出的这个数最小. 一个显然的贪心策略:每 ...
- jmeter的使用---控制器
1.如果(If)控制器.Switch Controller if控制语句,判断字段是否存在,或者符合,执行不同的逻辑 2.简单控制器 一次进件流程,需要不同模块的数据,例如登陆,提交个人信息,信用认证 ...
- VIM学习(转)
原文:http://www.cnblogs.com/nerxious/archive/2012/12/21/2827303.html 断断续续的使用VIM也一年了,会的始终都是那么几个命令,效率极低 ...
- Linux系统运维工程师入门绝招放送
运维是干嘛的?安装服务器系统?重装系统再装系统?背锅的? 我就稀里糊涂的,这样报着必死的决心,考下RHCE认证,走上了Linux运维的道路,成为了一名linux运维工程师.有些心得跟大家分享下,避免小 ...
- WiFi密码破解(wpa/wpa2)
参考一篇很好的贴子:https://www.cnblogs.com/daoyi/p/Kali-Linux-shi-yongAircrack-po-jiewifi-mi-ma-wpawp.html #前 ...
- mtrace 简介
内存泄露问题一般会再长时间运行的程序中暴露出来.而且一般很难定位和查找. linux 提供mtrace/muntrace来检测程序是否有内存泄露.一般来说要检测哪一段代码是否有内存泄露,就可以用这一对 ...