软件体系结构的定义有多种,常见如下:
- bridging the gap between requirements and implementations (David Garlan & Dewane Perry)
- SEI软件体系结构讨论群定义如下:一个程序/系统构件的结构,它们之间的相互关系, 以及在设计和交付的整个过程中的原则和指导方针。
- 一般来说,软件体系结构定义需要考虑到系统中的构件及其它们之间的相互作用
软件体系结构包括构件(Component)、连接件(Connector)和约束(Constrain)或配置(Configuration)三大要素。
构件
构件是指一个计算单元或者数据存储单元,可以是处理过程或数据元素。
构件是用于实现计算和状态的单元,可以工作在:客户端、服务器端、数据库、层等。
构件可简单可复杂.
连接件
连接件是体系结构的一个元素,它可以用于建模:构件之间的相互作用以及控制这些相互作用的规则.
配置
指构件和连接器组成的一个连接图,它用于描述软件体系结构的构成。