软件架构概念分为两大流派:组成派和决策派
组成派 : 软件系统的架构将系统描述为计算组件及组件之间的交互 。
有以下两个显著的特点:
a.以软件本身为描述对象
b.分析了软件的组成,即软件由不同计算任务的组件组成,这些组件通过交互完成更高层次的计算。
决策派 :
软件系统架构需要决策以下几点
- 软件系统的组织
- 选择组成系统的结构元素和它们之间的接口,以及当这些元素相互协作时所体现的行为
- 如何组织这些元素,使它们逐渐成为更大系统的子系统。
- 用于指导这个系统组织的架构风格:这些元素以及它们的接口、协作和组合。
软件架构不仅仅注重软件本身的结构和行为,还注重其他特性,例如:使用,功能性,性能,弹性,重用,可理解性,经济和技术的限制,以及美学等。
有以下两个显著的特点:
a.以人的决策为描述对象
b.归纳了架构的类型,指出架构决策不仅仅关注软件系统的组织、元素、子系统和架构风格等几类决策,还包括很多非需求性决策。