知识卡片
架构是折中
内容
架构的难点不在于满足某一个需求,而在于多个利益相关者的目标天然冲突:功能、进度、成本、性能、可维护性和安全性常常互相拉扯。架构师的核心能力是让折中显性化,并让团队理解取舍代价。发散:没有记录取舍的“最佳方案”,往往只是暂时没人承担后果的方案。
参考来源
- 位置:《架构实战:软件架构设计的过程》第2章《架构、架构师和架构设计》2.1.4节“架构平衡利益相关者的需要”与2.3.6节“架构设计经常包括折中”(源文件:_chapter-text/ch02.txt)
- 结论依据:原文列举了不同利益相关者相互冲突的需求(功能与时间期限互斥等),并明确指出进行折中是架构设计流程的基本方面、协商是架构师的基本特性,支持“架构是折中”这一论点。
- 原始内容:或者减小功能范围来赶上进度,或者延长时间来满足所有的功能。同样地,不同的利益相关者可能提出相互冲突的需求,所以,必须再次达到一个适当的平衡。因此,进行折中是架构设计流程的一个基本方面,而协商是架构师的一个基本特性。