体系结构PPT 第1章 软件体系结构概述.ppt
文本预览下载声明
软件体系结构的优势 实例 软件体系结构的优势 容易理解 它从一个高层设计的抽象层次来表征一个系统 简化了我们理解庞大系统的能力 重用 重用大的构件 重用一些集成构件的框架 特定领域的软件体系结构 设计模式 软件体系结构的优势 控制成本 系统维护者可以更好的理解变更带来的影响,因而可以更加精确的估算变更所需的成本 软件体系结构的优势 可分析性 对系统的一致性检查提供高层次的视图 研究系统是否与某种体系结构风格相符合 对符合特定风格的特定领域系统的体系结构分析 分析依赖于其中的构件 软件体系结构的优势 软件体系结构的优势 /developerworks/rational/library/feb06/eeles/ /architecture/ /wiki/Software_architecture / /~fielding/pubs/dissertation/software_arch.htm 参考资料 END 软件体系结构的意义 建模 软件体系结构的意义 建模 软件体系结构的意义 需求?实现 Architecture 教学内容 引言 软件体系结构的意义 软件体系结构的定义 软件体系结构的发展 软件体系结构的优势 软件体系结构的定义 定义 目前还没有一个标准的,普遍接受的定义 “ .. bridging the gap between requirements and implementations…” (David Garlan Dewane Perry) 软件体系结构的定义 定义 CODE implementation design architecture Architectural decisions are the most fundamental decisions; changing them will have significant ripple effects. 软件体系结构的定义 定义* SEI软件体系结构讨论群定义如下:一个程序/系统构件的结构,它们之间的相互关系, 以及在设计和交付的整个过程中的原则和指导方针。 一般来说,软件体系结构定义需要考虑到系统中的构件及其它们之间的相互作用。 软件体系结构的定义 定义 Kruchten指出,软件体系结构具有四个角度,它们从不同方面对系统进行描述,其中概念角度描述系统的主要构件及它们之间的关系;模块角度包含功能分解与层次结构;运行角度描述了一个系统的动态结构;代码角度描述了各种代码和库函数在开发环境中的组织。 软件体系结构的定义 定义 David Garlan和Dewne Perry于1995年在IEEE软件工程学报上采用如下的定义:软件体系结构是一个程序/系统各构件的结构、它们之间的相互关系以及进行设计的原则和随时间进化的指导方针。 软件体系结构的定义 定义 Barry Boehm和他的学生提出,一个软件体系结构包括一个软件和系统构件,互联及约束的集合;一个系统需求说明的集合;一个基本原理用以说明这一构件,互联和约束能够满足系统需求。 软件体系结构的定义 定义 1997年,Bass,Ctements和Kazman在《实用软件体系结构》一书中给出如下的定义:一个程序或计算机系统的软件体系结构包括一个或一组软件构件、软件构件的外部的可见特性及其相互关系。其中,“软件外部的可见特性”是指软件构件提供的服务、性能、特性、错误处理、共享资源使用等。 软件体系结构的定义 定义* Mary Shaw和David Garlan认为软件体系结构包括构成系统的设计元素的描述,设计元素的交互,设计元素组合的模式,以及在这些模式中的约束。 软件体系结构包括构件(Component)、连接件(Connector)和约束(Constraint)或配置(Configuration)三大要素。 软件体系结构的定义 定义 Mary Shaw和David Garlan Professor of Computer Science at Carnegie Mellon University Professor of Computer Science at Carnegie Mellon University 软件体系结构的定义 定义 软件体系结构的定义 定义* 国内普遍接受的定义:软件体系结构包括构件、连接件和约束,它是可预制和可重构的软件框架结构。 构件是可预制和可重用的软件部件,是组成体系结构的基本计算单元或数据存储单元 连接件也是可预制和可重用的软件部件,是构件之间的连接单元 构件和连接件之间的关系用约束来描述 软件体系结构 = 构件 + 连接件 + 约束 软件体系结构的定义 构件 构件是指一个计算单元或者数据存储单元,可以是一个处理过程或数据元素。 构件是用
显示全部