知识卡片
架构等于需求加架构特征
内容
软件架构的完整范畴由两部分组成:需求(业务问题域本身要解决什么)和架构特征(也叫非功能性需求、质量属性),如可伸缩性、性能、模块性。需求决定系统做什么,架构特征决定系统做得好不好、能否长期维持。架构特征的变化速率常常独立于需求,有时纯粹由公司内部技术决策驱动(比如更换数据库),这正是它们需要专门保护机制的原因。
参考来源
- 位置:《演进式架构(原书第2版)》第1章《演进软件架构》1.1节(源文件:_epub-src/EPUB/xhtml/chapter05_0001.xhtml)
- 结论依据:原文明确将架构范畴分为需求与架构特征两部分,并说明架构特征的变化速率可能独立于领域需求,直接支持卡片论点。
- 原始内容:"在考虑结构设计时,可以将它分为两个部分:业务域(或需求)和架构特征……架构特征的变化速率不同,有时还会受到领域解决方案以外的因素的影响。例如,公司内部的技术决策可能会驱动独立于领域解决方案的数据库变更。"