一、方法概述属性驱动架构设计方法是一种以质量属性为核心驱动力,通过显式处理系统的非功能性需求来推导软件架构的系统化方法。其核心思想是:架构设计应当优先满足系统的质量属性目标(如性能、安全性、可修改性、可用性等),这些属性决定了架构的形状和结构。ADD方法由卡内基梅隆大学软件工程研究所(SEI)的Len Bass、Paul Clements和Rick Kazman等人提出,是软件架构设计领域的里程碑式方法。该方法将架构设计视为一个递归的、属性驱动的分解过程:从整个系统开始,通过选择能够满足特定质量属性的架构模式,逐步将系统分解为更小的模块或子系统。ADD方法的核心假设:软件系统的功能需求描述了系统“做什么”,而质量属性则描述了系统“做得怎么样”——并且在架构层面,质量属性往往比功能需求对架构选择的影响更大。二、质量属性:架构设计的核心驱动力1. 质量属性的定义质量属性是系统可测量的、与运行相关的特性,它描述了系统在特定条件下对特定刺激的反应方式。一个完整的质量属性描述应包含以下6个要素(SEI的质量属性场景格式):要素描述示例(性能)刺激源谁或什么发起了刺激