在软件开发领域,我们提供软件系统服务为客户解决问题,带来价值,其中为客户所提供的业务功能是最为直观的价值。尤其在近段时期,互联网粗犷式发展,提倡早占山头早称王,追求让系统跑起来。而这这种风潮过度的关注当前直观为客户提供的功能价值,却往往忽视了架构带来的价值。
软件系统的价值
软件系统有两方面价值:
- 显式的功能价值:当下所为客户提供的功能所创造的价值;
- 隐式的架构架子:通过好的架构设计、整洁的代码让系统能更快更小代价的响应未来的功能变化;
两种模式的对比
对于先保证项目快速上线及保证系统架构质量的争论一直存在,我们看到图上对于两种模式的直观对比。忽视架构模式中早期用更快速更低成本的使系统先跑起来,但这实际是在用未来换取当下。
架构的目标是用更小的成本实现同样的功能,若前期忽略了架构的设计,后期会花成倍的经历来进行补救。对后期系统业务发展必然形成巨大的阻碍。
实际上越是追求快速响应的业务,越应该重视架构带来的价值。