从概念性架构到实际架构

软件架构的一般设计过程:先进行概念性架构的设计,把最关键的设计要素和交互机制确定,然后在考虑具体技术的应用,设计出实际架构。

什么是概念性架构?

概念性架构的特点:

通过主要的设计元素以及它们之间的关系来描述系统。

符合软件架构的特点:架构= 组件+ 交互。

往往是粗粒度的。

包括一些高层次的决策,对将来系统的扩展和维护非常重要。

重在说明关键的机制。

属于最初的架构设计成果。

软件概念性架构和敏捷开发中的隐喻很像,都是一种对软件系统非常宽泛的描述,是一种软件系统涉及到的人员,包括开发人员和客户,进行交流时的一种途径和方式。

概念性架构属于高度抽象情况下的产物,所以不会体现出某一特定系统的个性化,这也是同一类型的很多产品的概念性架构都趋同的原因。

概念性架构往往与具体技术的运用和具体平台的选择没有关系,而实际架构则非常关心这些问题。

从概念性架构到实际架构,概念性架构是不可能直接实现的,开发人员还需要关注以下几点:

1.       接口。概念性架构中没有接口的概念,只是抽象的组件和组件之间的交互。

2.       子系统。概念性架构中只有抽象的组件,这些组件没有接口之友职责,一般是处理组件、数据组件或者连接组件的一种。

3.       交互机制。实际架构中的交互机制是‘实在’的,例如通过接口、回调等,而概念性架构中的交互机制是‘概念化’的,例如‘A层使用B层的服务’,而所谓的‘使用’,并没有指明采取哪种方式。


参考文献
《软件架构设计》  温昱
原文地址:https://www.cnblogs.com/wing011203/p/1244748.html