《第8章 组件图和部署图优秀PPT.ppt》由会员分享,可在线阅读,更多相关《第8章 组件图和部署图优秀PPT.ppt(17页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第第8 8章章 组件图和部署图组件图和部署图现在学习的是第1页,共17页8.18.1组件图组件图 组件图是面向对象系统的物理方面建模时使用的图,是表示组件类型的组织以及各种组件之间依赖关系的图。组件图通过对组件间依赖关系的描述来估计对系统组件的修改给系统可能带来的影响。组件图用于描述系统中软件的构成,但没有描述系统中与硬件有关的构成情况。现在学习的是第2页,共17页8.1.1 组件图概述l组件图是对面向对象系统的物理方面建模时使用的两种图之一(另一种图是部署图),用于描述软件组件以及组件之间的组织和依赖关系。软件组件是软件系统的一个物理单元。作为一个或多个类的软件实现,组件驻留在计算机中。组件
2、提供和其他组件之间的接口。在UML 1.x 中,数据文件、表格、可执行文件、文档和动态链接库等都被定义为组件。实际上,建模者习惯把这些东西划分为部署组件(deployment component)、工作产品组件(work product component)和执行组件(execution component)。UML 2.0 则统称它们为工件(artifact),也就是系统使用或产生的一段信息。组件定义了一个系统的功能。就好像一个组件是一个或多个类的实现一样,工件(如果它是可执行的话)是一个组件的实现。组件图有利于:l帮助客户理解最终的系统结构。l使开发工作有一个明确的目标。l帮助开发组的其他
3、人员理解系统。l复用软件组件。现在学习的是第3页,共17页8.1.2 8.1.2 组件(组件(ComponentComponent)l1.组件的基本概念和图形表示l组件是系统中遵从一组接口且提供实现的一个物理部件,通常指开发和运行时类的物理实现。组件常用于对可分配的物理单元建模,这些物理单元包含模型元素,并具有身份标识和明确定义的接口,它具有很广泛的定义,以下的一些内容都可以被认为是组件:程序源代码、子系统、动态链接库等。组件的图形表示法是把组件画成带有两个标签的矩形。每一个组件都必须有一个唯一的名称(name)。l组件图的主图标是一个左侧附有两个小矩形的大矩形框。组件的名字位于组件图标的中央
4、,名字本身是一个文本字符串。如图所示。现在学习的是第4页,共17页8.1.2 组件(Component)l2.组件的类型l组件可以分为以下三种类型:l(1)实施组件(Deployment Component):实施组件是构成一个可执行系统必要和充分的组件,如动态链接库(DLL)、二进制可执行体(EXE)、ActiveX控件和JavaBean组件等l(2)工作产品组件(Work Product Component):这类组件主要是开发过程的产物,包括创建实施组件的源代码文件及数据文件,这些组件并不是直接地参加可执行系统,而开发过程中的工作产品,用于产生可执行系统。l(3)执行组件(Executi
5、on Component):这类组件是作为一个正在执行的系统的结果而被创建的,如由DLL实例化形成的COM对象。现在学习的是第5页,共17页8.1.2 组件(Component)l3.组件与类的异同l一般来说组件在许多方面都与类相同:二者都有名称;都可以实现一组接口;都可以参与依赖、泛化和关联关系;都可以被嵌套;都可以有实例;都可以参与交互。但是组件和类之间也有一些显著的差别:l(1)类表示逻辑抽象,而组件表示存在于计算机中的物理抽象。简言之,组件是可以存在于可实际的运行的计算机上的,而类不可以。l(2)组件表示的是物理模块而不是逻辑模块,与类处于不同的抽象级别。组件是一组其他逻辑元素的物理实
6、现(如类及其协作关系),而类仅仅只是逻辑上的概念。l(3)类可以直接拥有属性和操作;而一般情况下,组件仅拥有只能通过其接口访问的操作。这表明虽然组件和类都可以实现一个接口,但是组件的服务一般只能通过其接口来访问。现在学习的是第6页,共17页8.1.3 接口(Interface)l接口是一组用于描述类或组件的一个服务的操作,它是一个被命名的操作的集合,与类不同,它不描述任何结构(因此不包含任何属性),也不描述任何实现(因此不包括任何实现操作的方法)。每个接口都有一个唯一的名称。l组件的接口可以分为两种类型。l(1)导出接口(expert interface):即为其他组件提供服务的接口,一个组件
7、可以有多个导出接口。l(2)导入接口(import interface):在组件中所用到的其他组件所提供的接口,称为导入接口,一个组件可以使用多个导入接口。现在学习的是第7页,共17页8.1.4 关系(relationship)l关系是事物之间的联系,在面向对象的建模中,最重要的关系是依赖、泛化、关联和实现,但组件图中使用最多的是依赖和实现关系。l依赖关系是指组件依赖外部提供的服务(由组件到接口)。组件图中的依赖关系使用虚线箭头表示。如图所示。l实现关系是指组件向外提供的服务。实现关系使用实线表示。实现关系多用于组件和接口之间。组件可以实现接口。如图所示。现在学习的是第8页,共17页8.1.5
8、 使用组件图对系统建模及应用 l1.组件图建模及绘图的步骤l使用组件图建模的步骤可按照下列步骤进行:l对系统中的组件建模;l定义相关组件提供的接口;l对它们间的关系建模;l对建模的结果进行精化和细化。现在学习的是第9页,共17页8.2 部署图 部署图是面向对象系统的物理方面建模时使用的图,用于描述系统硬件的物理拓扑结构以及在此结构上运行的软件。部署图可以显示计算节点的拓扑结构、通信路径、节点上运行的软件、软件包含的逻辑单元(对象、类等)。部署图是描述任何基于计算机的应用系统(特别是基于Internet和Web的分布式计算系统)的物理配置的有力工具。现在学习的是第10页,共17页8.2.1 部署
9、图概述部署图(deployment diagram)它用于静态建模,是表示运行时过程节点(node)结构、组件实例及其对象结构的图。展示了第9章组件图中所提到的组件如何在系统硬件上部署,以及各个硬件部件如何相互连接。UML部署图显示了基于计算机系统的物理体系结构。它可以描述计算机,展示它们之间的连接,以及驻留在每台机器中的软件。每台计算机用一个立方体来表示,立方体之间的连线表示这些计算机之间的通信关系。l部署图可以显示计算节点的拓扑结构、通信路径、节点上运行的软件、软件包含的逻辑单元(对象、类等)。部署图是描述任何基于计算机的应用系统(特别是基于Internet和Web的分布式计算系统)的物理
10、配置的有力工具。l构成部署图的元素主要是节点(node)、组件(component)和关系(relationship)。现在学习的是第11页,共17页8.2.2 节点(node)l节点是存在于运行时并代表一项计算资源的物理元素,一般至少拥有一些内存,而且通常具有处理能力。它一般用于对执行处理或计算的资源建模,通常具有如下两方面内容:能力(如基本内存、计算能力和二级存储器)和位置(在所有必需的地方均可得到)。在建模过程中,可以把节点分成两种类型:l在UML1.x中,节点被划分为两种类型:处理器(processor)和设备(device)。处理器(Processor)是能够执行软件组件、具有计算能
11、力的节点。设备(Device)是不能执行软件组件的外围硬件,没有计算能力的节点,通常是通过其接口为外界提供某种服务,例如打印机、扫描仪等都是设备。尽管这种区分并没有在UML1.x 中形式化,但是它很有用。l在UML2.0中用立方体来表示一个节点(与UML1.x 例图一样)。UML2.0正式地把一个设备定义为一个执行工件(artifact)的节点。为节点起一个名字,并添加关键字来指明节点类型,尽管一般不需要这样做。现在学习的是第12页,共17页8.2.3组件(Component)部署图中还可以包含组件,这里所指的组件组件图中的基本元素,它是系统可替换的物理部件。l节点和组件的关系可以归纳为以下两
12、点:l组件是参与系统执行的事物,而节点是执行组件的事物。简单的说就是组件是被节点执行的事物,如假设节点是一台服务器,则组件就是其上运行的软件。l组件表示逻辑元素的物理模块,而节点表示组件的物理部署。这表明一个组件是逻辑单元(如类)的物理实现,而一个节点则是组件被部署的地点。一个类可以被一个或多个组件实现,而一个组件也可以部署在一个或多个节点上。现在学习的是第13页,共17页8.2.4关系(relationship)l部署图中也可以包括依赖、泛化、关联及实现关系。l部署图中的依赖关系使用虚线箭头表示。它通常用在部署图中的组件和组件之间,组件依赖外部提供的服务(由组件到接口)。下图示意了依赖关系。
13、l实现关系是节点内组件向外提供服务,其表示符号是一条实线。关联关系是体现节点间通信关联,其表示符号也是一条实线。现在学习的是第14页,共17页8.2.5 部署图的系统建模及应用部署图用于对系统的静态部署视图建模。这种视图主要用来解决构成物理系统的各组成部分的分布、提交和安装。有些开发的系统不需要部署图,比如开发的软件是将运行在一台机器上而且只和该机器上已由宿主操作系统管理的标准设备(如键盘)相互作用,就不必要设计部署图。如果软件交互设备是物理地分布在多个处理器上的,则使用部署图有助于思考系统中软件到硬件的映射。现在学习的是第15页,共17页8.3小结l组件图用于静态建模,是表示组件类型的组织以
14、及各种组件之间依赖关系的图。组件图通过对组件间依赖关系的描述来估计对系统组件的修改给系统可能带来的影响。部署图是用来为面向对象系统的物理实现建模的图。部署图描述了节点和运行在其上的组件的配置,它用来模拟系统的静态部署实现。l本章介绍了组件的定义以构成组件的要素,对组件、组件关系进行了详细的讲解。对使用组件图建模适用领域进行了说明,并对最为常见的两种场景即可执行程序结构建模、源代码建模进行了举例说明。还介绍了部署图语义和功能,通过实例讲解了部署图的应用。现在学习的是第16页,共17页习题l1()是系统中遵从一组接口且提供实现的一个物理部件,通常指开发和运行时类的物理实现lA部署图 B类lC接口
15、D组件l2组件图用于对系统的静态实现视图建模,这种视图主要支持系统部件的配置管理,通常可以分为四种方式来完成,下面哪种不是其中之一()。lA对源代码建模lB对事物建模lC对物理数据库建模lD对可适应的系统建模l3()是可复用的,提供明确接口完成特定功能的程序代码块。lA模块 B函数lC用例 D软件构件l4组件图展现了一组组件之间的组件和依赖。它专注于系统的()实现图。lA动态 B静态lC基础 D实体l5()是用于把元素组织成组的通用机制。lA包 B类lC接口 D组件l6()是一组用于描述类或组件的一个服务的操作。lA包 B节点lC接口 D组件l7()是被节点执行的事物。lA包 B组件lC接口 D节点现在学习的是第17页,共17页