什么是软件架构设计?- Grady


所有的架构都是设计,但并非所有的设计都是架构。架构代表了一组重要的设计决策,这些决策塑造了系统的形式和功能,其中重要的是通过更改成本来衡量的。
所有的架构都是设计,但并非所有的设计都是架构。架构代表了一组重要的设计决策,这些决策塑造了系统的形式和功能,其中重要的是通过变更成本来衡量的。
系统由具有不同关注点的不同利益相关者的无数设计决策形成,并且必须平衡对系统施加压力的力量。

这是的 4+1 视图模型,这是我在每个可以想象的领域的架构实践的重要组成部分。
寻找任何复杂问题的解决方案都是一个渐进和迭代的过程,具有间断的平衡期。

这是 Bran Selic 的可视化,代表发现(红色)、发明(白色)和实施(绿色)的重叠节奏,以及(在底部)持续集成、持续部署和持续架构。
一开始,软件密集型系统的架构是一种愿景陈述。最后,每个此类系统的架构都反映了沿途做出的数以亿计的大小、有意和无意的设计决策。

在这里,我们看到在系统实施期间做出的决策(绿色)以及一系列不断发展的重要设计决策,也就是其架构(红色)的不断涌现。注意架构重构的时期,这是不可避免的和可取的。