持续部署(continuous deployment)使企业能通过自动化的构建、测试和部署循环来快速交付高质量的软件。它使投资更容易得到回报,产品团队更早地得到用户反馈,也简化了部署流程。但从商业的角度看,持续部署也那么好吗?
Steve Blank 是斯坦福大学的咨询副教授,他在他最近的博文中提到,从消费者的角度来讲,持续部署可能意味着不满意。
虽然从工程角度来说,持续部署确实是一种更好的开发流程,但它对一家公司的商业模式和客户的期望都有意义深远的影响。
他对比了发布周期较长的瀑布交付流程(waterfall delivery process)和更频繁的持续交付流程。以前,公司如果使用瀑布模型,产品上市需要几个版本周期。公司计算年收入额的时间点,都是围绕瀑布模型的软件发布周期来设置的。跟瀑布式开发相反,敏捷开发模式在一个不断更新的基础版本上,增量和持续地进行交付,这也会影响公司年收入额的计算模式。公司可以通过云来交付产品的改进版本,这样用户就能不断地用上更好的产品。
Steve 举了 Adobe 的例子,他们现在把整个产品线迁移到了云端,称之为 Adobe Creative Cloud。用户不再需要为新产品付钱,而是支付每年的订阅费用。这种做法使公司的年收入更趋向于稳定,但是从消费者的角度来讲,却是不好的。
他描述了 Adobe 在运用持续部署过程中遇到的问题:
虽然持续部署让 Adobe 从高端用户身上不断获得稳定的年收入,但是他们也制造了两个问题。首先,不是所有客户都相信 Adobe 新的订阅式商业模式能给自己带来好处。如果客户停止支付每月的订阅费用,那他们不但会失去工作所依赖的 Adobe Creative Suite 软件(Photoshop、Illustrator 等),同时还可能无法访问已经完成的作品。
其次,Adobe 这种定位过高的策略无意中伤害了要求比较低的学生、小公司和轻度个人用户,把他们送到了优秀竞争对手的怀抱,比如用 Pixelmator、 Acorn、GIMP 替代 PhotoShop,用 ArtBoard 替代 Illustrator。
抛弃低价值客户、增加年收入和短期利润的结果就是,Adobe 培养了未来的竞争对手。
Steve 也提到了特斯拉的例子。特斯拉在不断地推出更好的车型。
在未经消费者许可的情况下,特斯拉单方面删除了用户已经付费的功能,对于有云端功能的商品来说,麻烦就此开始。其次,特斯拉取消了新车的年度发布机制(model years),他们对持续开发软件和硬件的激进推广,使现在的用户对他们的期望出奇地高。有些用户觉得他们理应获得所有刚刚投产的硬件新功能,即便这些新功能(比如更快地充电、全新的泊车传感器)在他们买车的时候还不存在——即便他们的车是后向不兼容的。
新车的年度发布机制,使用户的期盼有一个明确的时间边界。缺少了这种边界,就会使一些客户失望。
参考英文原文: Does Continuous Deployment Depict Customer Disatisfaction
评论