导航

不可能的三角(三元悖论)

Posted on 2022-12-09 11:18  蝈蝈俊  阅读(262)  评论(0编辑  收藏  举报

软件工程里的时间,成本和质量,三者最多能做到两个,有时候是一个,更多时候一个都做不到。


“又要马儿跑得快,又要马儿不吃草”这样的好事在世上是不存在的。

在业务的不同阶段,我们会有对应取舍。

初创期,快速试错

业务快速扩张期

业务快速扩张,量大了后,保障质量、稳定变得重要了

这里的质量问题,包括下面:

  • 服务稳定性问题:容量、链路容错、变更故障、机房及地域故障...
  • 研发质量:功能性质量...
  • 人的问题:惰性、缺乏意识...

稳定期

经过快速扩张,业务进入稳定期,业务量已经很大了, 这时候成本问题突出了。

成本包括:

  • 人员成本:沟通成本(两批萨团队)、人员工资...
  • 运维成本:网站运维成本、历史包袱带来的变更成本...

总结

在技术没有出现革命性的创新时,需要按照业务所处的阶段痛点做中庸和取舍。