- 2
- 0
- 约6.23千字
- 约 60页
- 2019-10-15 发布于湖北
- 举报
第二章 什么是软件构架 任课老师:黄武 提纲 最早软件构架的提出 构架的概念 构架模式、参考模型和参考构架 构架为何如此重要 构架结构和视图 1. 最早的软件构架 最早在软件开发领域,构架(Architecture)这个词用来指适用于多个系统的计算机系统的描述 1969年,Fred Brooks和Ken Inverson把构架描述为“程序员所看到的….计算机的概念结构”。之前,Blaauw最先提出构架一词,他认为“构架说明了做什么,而系统实现说明了怎么做” 从这些描述中我们可以看到,构架实际上是同类系统的抽象 1.1 Parnas提出的关于构架的原则 70年代,David Parnas对软件构架的许多基本原则进行了深入研究,包括: 信息隐藏原则[Parnas 72] 关于只允许通过接口使用元素的原则[72] 强调对软件系统中的不同结构进行考察,不得混淆这些结构[74] 在基于组件开发的系统中错误处理和检验的原则[72,76] 1.1 Parnas提出的关于构架的原则 将每个程序都看作是某个程序族中的一员[Parnas76] 认识到系统的结构影响到系统的质量[76] 引入使用结构,该原则控制各元素之间的连接,以增强系统的可扩展性[79] Parnas等人的工作为软件构架理论的建立创造了基础 2 软件构架的概念 下面是一个水下声学模拟系统的简单线框图描述,这个图是系统的构架吗?我们从中得到了什么?又有哪些我们所关心的问题我们并不能从中知晓 2.1 构架的引入 我们无法从上面的图形获取的信息 这些元素本身的实质是什么? 这些元素在系统中的作用又是什么? 图中的连线代表什么意义? 各个元素在图中的分布意义是什么,或者说他们的层次关系是什么? 我们都无法从该线框图上了解,因此,这不是一个完整的构架 2.2 构架的各种定义 构架的定义大体上可以分为两大类: 决策派的定义 一组决策的集合 组成派的定义 元素 + 元素的关系 2.2.1 决策派定义的代表 Booch、Rumbaugh和Jacobson的定义 构架是一系列重要决策的集合,这些决策与以下内容相关:软件的组织、构成系统的结构元素及其接口的选择,这些元素在相互协作中明确表现的行为,这些结构元素和行为元素进一步组合所构成的更大规模的子系统,以及如何组织这些元素 Woods的定义 软件构架是一系列设计决策,如果作了不正确的决策,你的项目可能最终会被取消 2.2.2 组成派定义的代表 Garlan和Shaw的定义 构架包括组件(Component)、连接器(Connector)和约束(Constrain)三大要素 Boehmn的定义 软件构架包括系统组件、连接件和约束的集合,反映不同涉众需求的集合和原理的集合 IEEE620.12-1990定义 构架是以组件、组件之间的关系、组件与环境之间的关系为内容的某一系统的基本组织结构,以及指导上述内容设计与演化的原理 2.2.3 本书的定义 某个软件或计算机系统的软件构架是该系统的一个或多个结构,他们由软件元素,这些元素之间的外部可见属性和这些元素之间的关系组成 这个概念阐述了以下几方面的意义 2.2.4 构架概念的展开 构架定义了软件元素 构架中包含了关于各个元素如何彼此相关的信息,但省略了各个元素中与交互无关的信息,因此不考虑元素的细节,对系统进行了抽象 系统可能而且确实由多个结构组成,但其中的任何一个结构都不等同于构架 构架中的不同结构有不同的侧重点,有些考虑功能的分解,有些考虑元素在运行时的交互关系等等 2.2.4.1 构架的逻辑结构 2.2.4.2 构架的物理结构 2.2.4 构架概念的展开 具有软件的每个计算机系统都有一个软件构架 每个系统都具有元素及其之间的交互,因此都具有构架,但是,并不是所有的人都能够知道这个构架的存在 某个元素的行为可以从其它元素的角度观察到或区分开,则这个元素的行为就是构架的内容 构架的定义中并没有包含对构架的评价 3. 构架模式、参考模型和 参考构架 在粗略的线框骨架和包含完整信息的系统构架之间,还有很多中间阶段。每个阶段都是执行一组构架决策的结果 三个模型 构架模式 参考模型 参考构架 3.1 构架模式 构架模式是对元素、元素之间关系以及一组对其使用方式的限制的描述 我们可以把构架模式看作是对构架的一组制约条件——即对各元素类型及其交互模式的限制条件,而这些制约条件确定了一组或一系列能满足他们要求的构架 构架模式最重要的作用是它们展示了已知的质量属性 3.1.1 客户服务器-构架模式 电子商务网站 3.1.2 客户服务器-构架模式 门户网站 3.1.3 客户服务器-构架模式 搜索引擎网站 3.2 参考模型 参考模型是一种考虑数据流的功能划
原创力文档

文档评论(0)