云原生Spring实战
上QQ阅读APP看书,第一时间看更新

1.5.1 速度

对于当今企业来讲,能够更快地交付软件是一个重要的目标。尽可能快地将理念投入生产,从而缩短产品的上市时间是一个关键的竞争优势。能否在正确的时间将正确的理念投入生产,可能就决定了企业的成败。

客户希望得到越来越多的特性实现或缺陷修复,而且他们希望立即就要,根本不愿意等待六个月之后才能看到我们软件的下一个版本。他们的期望在不断地提高,我们需要有一种方法来跟上他们的节奏。归根到底,这一切都是为了给客户提供价值,并确保他们对结果感到满意。否则,我们的企业难以在激烈的竞争中生存下来。

更快、更频繁地交付不仅关乎竞争和客户的最后期限,它还能够缩短反馈周期。频繁和小规模的发布意味着我们能够更快地获取客户的反馈。更短的反馈周期反过来又会减少新特性相关的风险。与其花费几个月的时间实现完美的特性,还不如快速推出,从客户那里得到反馈,并对其进行调整以符合他们的期望。同时,较小的版本会包含更少的变更,因此发生故障的组件数量也会随之减少。

我们还需要灵活性,因为客户期望我们的软件能够不断演化。例如,它应该有足够强的灵活性以支持新类型的客户端。如今,日常生活中越来越多的物品都已经能够连接至互联网,比如各种移动和物联网(IoT)系统。我们希望能够对未来任何类型的扩展和客户端类型保持开放,从而能够以新的方式提供业务服务。

传统的软件开发方式并不支持这一目标。传统方式的典型特点是大规模的发布、微乎其微的灵活性以及漫长的发布周期。云原生方式与自动化任务、持续交付工作流和DevOps实践相结合,有助于实现业务更快速地发展,并缩短上市时间。