架构1、核心概念

架构是系统运行时的高层抽象。数组

架构是系统设计的一部分。它突出了某些细节,并经过抽象省略掉另一些细节。因此,架构是设计的一个子集。关注实现系统组件的开发者可能不会特别关心全部组件如何装配在一块儿,而是关注少数组件的设计和开发,包括他们必须遵照的架构约束和能够应用的规则。开发者和架构师面对的是系统设计的不一样方面。架构

一、架构原则与特性架构设计

原则或特性        可以......设计


 

功能多样性        ...提供“足够好”的机制,利用简洁的表达来处理各类问题接口

概念完整性        ...提供单一的、最优的、无冗余的方式来表示一组相似问题的解决方案进程

修改独立性        ...保持他的元素的独立性,这样就可以让须要的修改最少,从而适应变化开发

自动传播           ...经过在模块间传播数据或行为,保持一致性和正确性基础

可构建性           ...指导软件进行一致、正确的构建软件

增加适应性        ...考虑到可能的增加权限

熵增抵抗性        ...经过适应、限制和隔离变化的影响来保持有序


 

二、架构结构


 

结构           结构可以


 

模块           ...将设计或实现决定隐藏在一个稳定的接口以后

依赖关系           ...按照一个模块使用另外一个模块的功能的方式来组织模块

进程           ...封装并隔离一个模块的运行时状态

数据访问         ...隔离数据。设置数据访问权限


三、架构设计的方法

Roy Thomas Fielding 在他的博士论文里介绍了两个架构设计的方法。

  1. 根据已存在的一组架构风格作为基础进行修改调整。以获得知足目标架构约束的一种架构风格(也能够是具体的架构)
  2. 分析目标架构的各类约束条件,根据约束条件选择模式,经过模式组合造成一种知足全部(或者大部分)约束条件的目标架构。(具体模式和约束条件的对应关系,以及论证能够参见论文)

另外还有 RUP 的 4+1 的视图方法。或者《软件架构设计》上说的五视图方法。

相关文章
相关标签/搜索