持续交付2.0:业务引领的DevOps精要(增订本)
上QQ阅读APP看书,第一时间看更新

当很多企业设计开发新产品时,项目早期会采用“概念验证”或“产品原型法”,收集潜在用户的反馈,以降低产品方向产生错误的风险。一旦接受了这些概念验证与产品原型后,企业就会启动一个历时较长的产品完整功能开发过程。而相对于最终产品,这些概念验证与产品原型本身就是不完整的,因此总会有一些差异。

现在的市场变化很快,当花大量时间将产品功能全部开发完成后,产品常会因为潜在用户对原型的理解偏差,或者用户需求发生了变化,导致当初的设计不再适应市场需求。事实上,这反映了产品或服务开发过程中常见的风险假设。一是用户假设,即我们提供的产品服务是针对某类潜在用户人群的需求的假设;二是问题假设,即目标用户群之所以有这种需求,是因为他们的确存在某些痛点(或问题)需要解决的假设;三是解决方案假设,即我们提供的解决方案可以解决这些痛点或问题,而且比其他现存的解决方案都有效且高效。

这3类假设中,任何一个假设不成立,都会导致我们事倍功半,甚至前功尽弃。因此,探索环的目标就是要持续识别和定义这些有价值的假设,选择并验证其中风险最高或最易验证的价值假设,并借助价值验证环得到数据反馈,以便深入理解用户需求,把握业务前进方向。

例如,持续交付工具GoCD(一款面向软件研发过程管理的产品)在其启动之初,目标客户就被定义为那些希望以敏捷开发方式交付软件,并希望提升软件交付速度与质量的中小软件企业或团队,直到现在也没有变化。产品希望解决的主要问题仍旧是这些客户在开发软件过程中的集成与发布管理问题。然而,在2007年项目启动时曾经规划的近两百个功能特性中,到目前为止,几乎有一半的规划特性被废弃了。因为这些功能特性并不是解决中小软件企业的软件集成与发布管理问题的最佳解决方案。这也说明,在2007年时,该产品解决方案中的很多假设是不成立的。

该产品研发过程中实际上一直秉承“持续交付2.0”的理念,通过将大特性分解成多个小功能,持续快速发布(团队每周使用自己的最新版本,并且每两周对外部客户发布一次),获得真实用户反馈,从而调整产品功能策略,为产品成功打下了基础。

因此,在探索环中,我们就是要从业务问题出发,与团队一起,共同找出这3类假设,通过分析评估,确认最大的风险点,并制订相关的衡量指标,找出相应的最小可行的验证方案。然后再借助验证环的高速运转,尽早获得反馈,并根据衡量指标来验证这些风险点。