1.4.2 软件架构设计

154 阅读1分钟

软件架构为软件系统提供了一个结构、行为和属性的高级抽象,由构件的描述、构件的相互作用(连接件)、指导构建集成的模式以及这些模式的约束组成。

解决好软件的复用,质量和维护问题,是研究软件架构的根本目的

1. 软件架构风格

Garlan和Shaw对通用软件架构风格进行了分类,他们将软件架构分为:

  1. 数据流风格:
  2. 调用/返回风格:
  3. 独立构件风格:
  4. 虚拟机风格:
  5. 仓库风格:

2.软件架构评估

三类主要的评估方式,分别是基于

  1. 调查问卷(或检查表)的方式。
  2. 基于场景的方式。
  3. 基于度量的方式。

基于场景的方式。最为常用,主要包括

  1. 架构权衡分析法(ATAM)
  2. 软件架构分析法(SAAM)
  3. 成本效益分析法(CBAM)

在架构评估中,一般采用刺激、环境和响应三方面来对场景进行描述。