软件体系结构概念和几种不同的定义
软件体系结构的概念:
(1)软件体系结构是具有一定形式的结构化元素,即构件的集合,包括处理构件,数据构件和连接构件。
(2)软件体系结构是软件设计过程中的一份层次,这一层次超越计算过程中的算法设计和数据结构设计。
(3)软件体系结构有四个角度,它们从不同角度对系统进行描述:
概念角度描述系统的主要构件及它们之间的关系
模块角度包含功能分解与层次结构
运行角度描述了一个系统的动态结构
代码角度描述了各种代码和库函数在开发环境中的组织
(4)软件体系结构是一个抽象的系统规范,主要包括用其行为来描述的功能构件和构件之间的相互连接,接口和关系。
(5)软件体系结构是一个程序/系统各构件的结构,它们之间的相互关系以及进行设计的原则和随时间演化的指导方针。
(6)一个软件体系结构包括一个软件和系统构件,互联及集合;一个系统说明的集合;一个基本原理用以说明这一构件,互联和约束能够满足系统需求。
(7)一个程序或计算机系统的软件体系结构包括一个或一组软件构件,软件构件外部的可见特性及其相互关系。
教材说的是:
软件体系结构为软件系统提供了一个结构,行为和属性的高级抽象,有构成系统的元素描述,这些元素的相互作用,指导元素集成的模式以及这些模式的约束组成。