书中的核心主张认为,方法体系是软件未来发展的重大趋势之一。而ADMEMS (Architecture Design Method has been Extended to Method System)正是贯穿本书的一套架构设计的方法体系。
ADMEMS方法体系将软件架构的过程分为三个阶段和一个贯穿环节,进而覆盖“需求进,架构出”的架构设计的完整工作内容。基中Pre-Architecture阶段,意在全面理解需求,从而把握需求特点,进而确定架构设计驱动力。而Conceptual Architecture阶段所关注的是如何通过关键功能、关键质量及业务需求和约束来塑造概念架构。Refined Architecture阶段,则主要通过5视图方法进行细化架构的设计。而非功能需求不可能“速战速决”,因此,对于非功能需求的关注会贯穿架构设计的整个过程。下面针对这三个阶段和一个贯穿环节分别谈一下个人的一些理解。
Pre-Architecture,是架构设计的最前期阶段,其工作目标包括:理解需求、建议需求大局观、确认架构设计方向等。其对于整个架构设计的意义在于,着眼于全局把握需求、降低架构失败的风险、尽早地开始架构设计、明确架构设计的驱动力。需要注意的是,不同需求影响架构的不同原理,关键需求决定架构,而其他需求用来来验证架构。ADMEMS将Pre-Architecture阶段分为四个步骤,即需求结构化、分析约束影响、确定关键质量、确定关键功能。
“ADMEMS矩阵”是Pre-Architecture阶段的核心方法。 “ADMEMS矩阵”又称为“需求层次-需求方面矩阵”,帮助架构师告别需求列表的陈旧方式,顺利过渡到二维需求观,借此避免遗漏需求、并进一步理清需求间关系和发现衍生需求。
Conceptual Architecture,即概念架构。概念架构不是理想架构,同样概念架构也不是概念视图&#