资源描述
软件体系结构总复习,第一章 序论,软件体系结构的定义 Software Architecture is the structure or structures of the system, Which comprise software elements, the externally visible properties of these Elements, and the relations among them 软件体系结构是系统的一个或多个结构,它包括:软件的组成元素(组件),这些(组件)元素的外部可见特性,以及这些元素(组件)之间的相互关系。,软件的组成元素到底是什么? 外部可见属性指什么? 相互关系都有哪些?,定义中并没有明确说明什么是elements:是一个对象?一个实现单元?一段进程?一个函数库?数据库?商业构件? 以上都有可能,还可能是其它一些事物 元素外部可见的属性是指元素对其它元素来说 提供的服务 需要的服务 共享资源的使用等 各元素间的交互关系也可能有多种 例如:细划分,同步,调用,包含,第二章 软件构架的结构和视图,结构是系统元素本身的集合 视图是结构的表示,将软件构架的结构分为三组: 模块结构 组件-连接器结构 分配结构,模块结构,分解结构 使用结构 分层结构 类或泛化,分解结构 使用结构 分层结构 类或泛化,组件-连接器结构,组件 连接 连接的本质 连接器 组件间的联系,分配结构,什么是分配结构 硬件、团队结构、文件系统都会与软件构架进行交互,所以必须考虑这一类结构。 通过将软件构架映射到硬件即可对系统性能进行分析;通过将软件构架映射到团队结构,项目管理活动才得以展开;通过将软件构架映射到文件结构,系统开发管理才得以进行。,软件系统的视图,第三章 软件体系结构模式,通用体系结构风格的分类 数据流风格:批处理序列、管道/过滤器风格 过程控制风格:开环,闭环 调用/返回风格:主程序/子程序、面向对象风格、层次结构 独立构件风格:进程通信、事件系统 虚拟机风格:解释器 仓库风格:数据库系统、黑板系统,数据流风格,Pipes and Filters 什么是管道过滤器风格? 过滤器组件的类型有哪些? 管道-过滤器风格的构件和连接件是什么? 这种风格的特点是什么?优缺点各是什么?,批处理风格 特点是什么? 和管道过滤器风格的比较,什么是开环控制和闭环控制? 分层风格一般适用于什么样的问题?它的解决方案?它的优点,缺点是什么?分层风格具体的实例可以是什么?,解释器风格,什么是解释器风格 组件构成 连接件 该风格的优点和缺点 该风格适用于什么情况,数据仓库和黑板模型,两种类型的构件: 一个中央数据单元,(系统当前的各种状态) 相对独立的组件的集合,这些组件对中央数据单元进行操作 连接件:控制 根据控制策略的不同,分为: 数据库(知识库):系统由输入数据流中的事务信息来驱动,即输入数据流中的事务指令可以触发系统相应进程的执行, 黑板:如果系统由中央数据结构的当前状态来驱动,则黑板模型。,黑板风格,Component: 中央数据单元 知识源 控制单元,面向对象风格,构件:对象 连接件:消息 优点 缺点,其他体系结构风格,C2风格 应用范围 构件中各个模块的作用 特点,第四章 质量属性,系统的三类质量属性 系统的质量属性 受构架影响的商业属性:例如:上市时间 与构架本身相关的一些质量属性:概念完整性,系统的质量属性,可用性 可修改性 性能 安全性 可测试性 易用性,质量属性场景,什么是质量属性场景?为什么要使用质量属性场景? 刻画质量属性的手段,6部分组成: 刺激源 刺激 环境 制品 响应 响应度量 以一种统一规范的方式来表达“质量属性”的需求。,可用性战术用于以下几方面: 错误检测( Fault Detection ) 错误恢复( Fault Recovery ) 错误预防( Fault Prevention),第五章 属性驱动设计(ADD),属性驱动的设计(ADD)的步骤,第六章 ATAM,ATAM的目的 好处 参与人员 步骤,第七章 软件产品线,产品线的概念 一个软件产品线是满足下列性质的一组软件产品: -共享一组相同的、可管理的特性的集合 -满足一类特定的市场需求,公共核心资产库(core assets base) COTS(Commercial Off-the-Shelf) 核心资产开发活动的输入和目标 产品开发活动中输入/输出关系 使用产品线的好处和代价,第八章 构架编档,什么是架构编档,简要叙述软件构架编档要包含的主要内容。,
展开阅读全文