一、从第十一章中:细化架构的故事中总结摘录出以下一部分:
架构设计仅仅进行到概念架构层面,对支持团队的并行开发而言是远远不够的;对于多视图方法,要有意识地调整、扩充、改进经典方法以符合实践的真正需要。
从概念架构到细化架构,先设计概念架构,构思关键问题的解决策略;再进行细化架构的设计,以保证为开发提供足够的指导和限制。
二、从第十二章中:什么是Refined Architecture中总结摘录出以下一部分:
架构设计是一门解决复杂问题的实践艺术,于是,以分而治之为思想核心的多视图方法必不可少。
而多视图方法有两个方面的实际意义:利于思考(因为分而治之的思维方式);便于交流(因为在一定程度上分离了涉众关注点)。
一种优秀的多视图方法,应该能够比较完善地覆盖架构设计的各项工作内容,且将每项工作内容明确地、有理有据地、一目了然地划归到不同架构视图中去。
三、从第十三章中:逻辑架构中总结摘录出以下一部分:
一线架构师最缺的不是理论, 也不是技术,而是位于理论和技术之间的“实践策略”和“实践套路”。就划分子系统这个架构师必做的工作而言,其实践策略可归纳为3种:分层的细化;分区的引入;机制的提取。
逻辑架构设计的10条经验要点:划分子系统:分层的细化;目划分子系统:分区的引入;划分子系统:机制的提取;接口的定义:协作决定接口;选用序列图:杜绝协作圉;包-接口图: 从结构到行为的桥;灰盒包圈:描述关键子系统;循序渐进的螺旋思维;设计模式:包内结构;设计模式:包间协作。
设计模式用于逻辑架构设计中主要的两种方式:明确子系统内的结构;明确包间的协作关系。
四、从第十四章中:物理架构、运行架构、开发架构中总结摘录以下一部分:
物理架构必须关注如何配置硬件和网络来满足软件系统的可靠性、可伸缩性、持续可用性、性能、安全性等方面的要求。物理架构设计主要有3项任务:硬件选择与物理拓扑;软件到硬件的影射关系;方案的优化。
很多系统为了应对复杂的业务逻辑或复杂的互操作逻辑(含硬件交互),或者为了优化关键资源使用效率,而必须借助多条控制流并行或并发执行时,就须要设计运行架构。其中运行架构设计的工作看似多而杂,但其实只要把握“控制流图”,就能够提纲挈领地开展其他相关设计。
总之,概念架构与5视图方法的区别及联系可以用两句话概括:概念架构从少数视角、重点视角进行概念级设计;细化架构从多个视角、全面视角进行充分设计。
五、从第十五章中:数据架构的难点:数据分布中总结摘录以下一部分:
越是大系统,数据分布越关键。因此,一线架构师迫切须要建立数据分布策略的大局观。根绝系统数据产生、使用、管理等方面的不同特点,常采用不同的数据分布式存储与处理手段可以归纳为一下6中策略:独立、集中、分区、复制、子集、重组。