1、第第11章章 构件图构件图11.1 基本概念基本概念11.2 构件图的概念构件图的概念11.3 构件的表示构件的表示11.4 构件间的关系构件间的关系11.5 构件图分类构件图分类11.6 构件图应用构件图应用11.1 基本概念基本概念一、构件一、构件(1)构件()构件(Component)是定义了良好)是定义了良好接口的物理实现单元,是系统中可替换接口的物理实现单元,是系统中可替换的物理部件。的物理部件。(2)构件的表示:)构件的表示:Component(P141)11.1基本概念基本概念一、构件一、构件(3)构件的)构件的5要素要素n接口声明接口声明n接口实现接口实现n构件标准构件标准n封
2、装方法封装方法n部署方法部署方法(P138)11.1基本概念基本概念二、构件的类型二、构件的类型 在对软件系统建模过程中,存在在对软件系统建模过程中,存在3种类型种类型的构件:的构件:(1)配置构件配置构件(2)工作产品构件工作产品构件(3)执行构件执行构件(P139)11.1基本概念基本概念三、构件和类的区别三、构件和类的区别共同点:共同点:二者都有名称;二者都有名称;都可以实现一组接口;都可以实现一组接口;都可以参与依赖、关联、泛化关系;都可以参与依赖、关联、泛化关系;可以被嵌套;可以被嵌套;可以有实例;可以有实例;可以参与交互。可以参与交互。11.1基本概念基本概念三、构件和类的区别三、
3、构件和类的区别区别:区别:类是逻辑抽象,构件是物理抽象,构件类是逻辑抽象,构件是物理抽象,构件可以位于节点上;可以位于节点上;处于不同抽象级别。构件是对其他逻辑处于不同抽象级别。构件是对其他逻辑元素,如类、协作(元素,如类、协作(collaboration)的)的物理实现。物理实现。类可以有属性和操作,构件通常只有操类可以有属性和操作,构件通常只有操作,而且这些操作只能通过构件的接口作,而且这些操作只能通过构件的接口才能使用。才能使用。11.2 构件图的概念构件图的概念 构件图构件图(Component Diagram)描述)描述了软件的各种构件和它们之间的依赖关了软件的各种构件和它们之间的依
4、赖关系。系。构件图中包含构件图中包含3种元素:种元素:(1)构件)构件 (2)接口)接口 (3)依赖关系)依赖关系虚线箭头虚线箭头11.2 构件图的概念构件图的概念find.exedbacsnatengindex.htmlfind.html11.2 构件图的概念构件图的概念构件图的用途:构件图的用途:n使系统人员和开发人员能够从整体上了使系统人员和开发人员能够从整体上了解系统的所有物理部件;解系统的所有物理部件;n构件图显示了被开发系统所包含的构件构件图显示了被开发系统所包含的构件之间的依赖关系。之间的依赖关系。n从宏观的角度上,构件图把软件看作多从宏观的角度上,构件图把软件看作多个独立构件组
5、装而成的集合,每个构件个独立构件组装而成的集合,每个构件可以被实现相同接口的其它构件替换。可以被实现相同接口的其它构件替换。11.2 构件图的概念构件图的概念构件图的用途:构件图的用途:n从软件架构的角度来描述一个系统的主要从软件架构的角度来描述一个系统的主要功能,如系统分成几个子系统,每个子系功能,如系统分成几个子系统,每个子系统包括哪些类、包和构件,它们之间的关统包括哪些类、包和构件,它们之间的关系以及它们分配到哪些节点上等;系以及它们分配到哪些节点上等;n使用构件图可以清楚地看出系统的结构和使用构件图可以清楚地看出系统的结构和功能。方便项目组的成员制定工作目标和功能。方便项目组的成员制定
6、工作目标和了解工作情况。了解工作情况。11.3 构件的表示构件的表示n构件包含两个部分:接口和接口实现部分。构件包含两个部分:接口和接口实现部分。(1)由类元所实现的接口称为由类元所实现的接口称为供给接口供给接口。(2)当一个类元的操作需要一个或者多个当一个类元的操作需要一个或者多个接口时,这些接口称为接口时,这些接口称为需求接口需求接口。n表示构件图标的方法有两种表示构件图标的方法有两种:(1)在构件图标中在构件图标中没有标识接口没有标识接口(2)在构件图标中)在构件图标中标识了接口标识了接口11.3 构件的表示构件的表示(1)在构件图标中没有标识接口在构件图标中没有标识接口图图11-2 没
7、有标识接口的构件的图形的三种表示法没有标识接口的构件的图形的三种表示法11.3 构件的表示构件的表示(2)在构件图标中标识接口在构件图标中标识接口图图11-3 标识接口的构件标识接口的构件3种表示方法种表示方法11.4 构件间的关系构件间的关系n构件间的关系是依赖关系。构件间的关系是依赖关系。n提供服务的构件称为提供者,使用服务的提供服务的构件称为提供者,使用服务的构件称为客户。构件称为客户。图图11-4 构件间的依赖关系构件间的依赖关系11.5 构件图的分类构件图的分类 构件图可以分为两种:简单构件图和构件图可以分为两种:简单构件图和嵌套构件图。嵌套构件图。n简单构件图简单构件图n嵌套构件图
8、嵌套构件图11.5 构件图的分类构件图的分类n简单构件图简单构件图图图11-5 简单构件图简单构件图11.5 构件图的分类构件图的分类n嵌套构件图嵌套构件图图图11-6 嵌套构件图嵌套构件图11.6 构件图的应用构件图的应用 构件图描述了软件的组成和具体结构,构件图描述了软件的组成和具体结构,表示了系统的静态部分。能够帮助开发人员表示了系统的静态部分。能够帮助开发人员从总体上认识系统。常采用构件图来描述可从总体上认识系统。常采用构件图来描述可执行程序的结构、源代码、物理数据库组成执行程序的结构、源代码、物理数据库组成和结构。和结构。n对可执行程序建模对可执行程序建模n对源代码进行建模对源代码进
9、行建模11.6 构件图的应用构件图的应用n对可执行程序建模对可执行程序建模 通过构件图,可以清晰地表示出各个可执行通过构件图,可以清晰地表示出各个可执行文件、链接库、数据库、帮助文件和资源文件等其文件、链接库、数据库、帮助文件和资源文件等其它可运行的物理构件之间的关系。在对可执行程序它可运行的物理构件之间的关系。在对可执行程序的结构进行建模时,通常应遵从以下原则:的结构进行建模时,通常应遵从以下原则:(1)首先标识要建模的构件。)首先标识要建模的构件。(2)理解和标识每个构件的类型、接口和作用。)理解和标识每个构件的类型、接口和作用。(3)标识构件间的关系。)标识构件间的关系。11.6 构件图
10、的应用构件图的应用n对可执行程序建模对可执行程序建模图图11-7 对可执行程序的结构建模对可执行程序的结构建模11.6 构件图的应用构件图的应用n对源代码进行建模对源代码进行建模 通过构件图可以清晰地表示出软件的所有源文件之间通过构件图可以清晰地表示出软件的所有源文件之间的关系,开发者能更好地理解各个源代码文件之间的依赖的关系,开发者能更好地理解各个源代码文件之间的依赖关系。在对源程序进行建模时,通常应遵从以下原则:关系。在对源程序进行建模时,通常应遵从以下原则:(1)表示出要重点描述的每个源代码文件,并把每个源代)表示出要重点描述的每个源代码文件,并把每个源代码文件标识为构件。码文件标识为构
11、件。(2)如果系统较大,可以利用包来对构件进行分组。)如果系统较大,可以利用包来对构件进行分组。(3)用编译依赖关系来描述构件间的关系。)用编译依赖关系来描述构件间的关系。(4)在构件图中,采用约束来表示源代码的版本号、作者)在构件图中,采用约束来表示源代码的版本号、作者和最后的修改日期等信息。和最后的修改日期等信息。11.6 构件图的应用构件图的应用n对源代码进行建模对源代码进行建模图图11-8 对源代码建模对源代码建模11.7 ROSE中构件图的工具支持中构件图的工具支持n正向工程正向工程 根据模型产生源代码。根据模型产生源代码。n逆向工程逆向工程 根据代码得到类图或构件图。根据代码得到类图或构件图。小结小结n介绍了构件概念以及构件的五要素介绍了构件概念以及构件的五要素n讲解了构件图的作用和表示方法;讲解了构件图的作用和表示方法;n介绍了简单构件图和嵌套构件图介绍了简单构件图和嵌套构件图;n对构件图的适用领域进行了说明。对构件图的适用领域进行了说明。
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。