《统一建模语言(UML)》第9章 组件图和部署图

合集下载

解析UML9种图的作用

解析UML9种图的作用

解析UML9种图的作⽤本⽂和⼤家重点讨论⼀下UML9种图的概念,UML中有五类图,共有9种图形,每种图形都有各⾃的特点,下⾯就让我们⼀起来看⼀下这些图形特点的详细介绍吧。

UML9种图简介1、⽤例图说明的是谁要使⽤系统以及使⽤该系统可以做些什么。

UML9种图中⼀个⽤例图包含了多个模型元素,如系统、参与者和⽤例,并且显⽰了这些元素之间的各种关系,如泛化、关联和依赖。

2、活动图UML9种图中活动图能够演⽰出系统中哪些地⽅存在功能,以及这些功能和系统中其他组件的功能如何共同满⾜前⾯使⽤⽤例图建模的商务需求。

3、状态图可以捕获对象、⼦系统和系统的⽣命周期。

它们可以告知⼀个对象可以拥有的状态,并且事件(如消息的接收,时间的流逝、错误、条件为真等)会怎样随着时间的推移来影响这些状态。

⼀个状态图应该连接到所有具有清晰的可标志状态和复杂⾏为的类;该图可以确定类的⾏为以及该⾏为如何根据当前的状态⽽变化,也可以展⽰哪些事件将会改变类的对象的状态。

4、顺序图也叫做序列图是⽤来显⽰参与者如何以⼀系列顺序的步骤与系统的对象交互的模型。

UML9种图中顺序图可以⽤来展⽰对象之间是如何进⾏交互的。

顺序图将显⽰的重点放在消息序列上,即消息是如何在对象之间被发送和接收的。

5、类图能够让我们在正确编写代码以前对系统有⼀个全⾯的认识。

UML9种图中类图是⼀种模型类型,确切的说,是⼀种静态模型类型。

⼀个类图根据系统中的类以及各个类之间的关系描述系统的静态视图。

6、对象图与类图极为相似,只是它描述的不是类之间的关系。

7、协作图可以看成类图和顺序图的交集,协作图建模对象或者⾓⾊,以及它们彼此的通信⽅式。

8、组件图UML9种图中组件图⽤来建模软件的组织以及其相互之间的关系。

这些图由组件标记符和组件之间的关系构成。

在组件图中,组件是软件的单个组成部分,它可以是⼀个⽂件、产品、可执⾏⽂件和脚本等。

9、部署图⽤来建模系统的物理部署。

例如计算机和设备,以及它们之间是如何连接的。

UML中的部署图详解

UML中的部署图详解

UML中的部署图详解UML(Unified Modeling Language)是一种用于软件开发的标准建模语言,它提供了一套丰富的图形符号和规范,帮助开发人员更好地理解和描述软件系统的结构和行为。

在UML中,部署图(Deployment Diagram)是一种用于描述系统的物理部署结构的图形表示方法。

本文将详细介绍部署图的定义、构成和使用。

部署图是一种静态图,它显示了系统中的物理节点(Node)以及节点之间的连接关系。

节点可以是硬件设备,例如服务器、路由器或者移动设备,也可以是软件执行环境,例如操作系统、中间件或者虚拟机。

通过部署图,开发人员可以清晰地了解系统的部署架构,以及各个节点之间的通信方式和数据流动。

在部署图中,节点通过连接器(Connector)进行连接,连接器可以是简单的线条,也可以是带有箭头和标签的线条。

连接器表示节点之间的通信路径,例如网络连接、数据传输或者消息传递。

通过连接器,开发人员可以明确节点之间的依赖关系和交互方式。

除了节点和连接器,部署图还可以包含其他元素,例如组件(Component)、接口(Interface)和部署规范(Deployment Specification)。

组件表示系统中的模块或者功能单元,接口定义了组件之间的通信接口,而部署规范定义了节点上部署的具体组件和配置信息。

通过这些元素的组合和使用,开发人员可以更加精确地描述系统的部署细节。

部署图的使用有助于开发人员更好地理解系统的物理架构,从而更好地进行系统设计和优化。

通过部署图,开发人员可以发现系统中的瓶颈和性能问题,优化系统的部署结构,提高系统的可用性和可扩展性。

此外,部署图还可以用于系统的维护和升级,通过对部署图的修改和更新,可以方便地进行系统的迁移和扩展。

在实际应用中,部署图通常与其他UML图形一起使用,例如用例图(Use Case Diagram)和类图(Class Diagram)。

用例图用于描述系统的功能需求和用户行为,类图用于描述系统的静态结构和对象之间的关系。

UML-11组件图与部署图

UML-11组件图与部署图
Home
组件
图11.2 组件与类的关系示例
11.1.1
组件
组件提供接口的实现,一个组件可以实现一个或多个接 口。 例:在图11.3中的组件“字典”实现两个接口:“拼写 检查”和“同义词”。
图11.3 组件与接口示例
Home
11.1.2
组件的种类
按照组件的作用可以把组件分为以下3种: 1.配置组件(Deployment Component) 配置组件是构成一个可执行的系统的必需的组件,如动态连接库 (DLL)、执行程序(EXE)等。 UML的组件可以表达典型的对象模型,如COM+、 CORBA、 JAVA Beans、Web页、数据库表等内容。 2.工作产品组件(Work Product Component) 工作产品组件是在软件开发阶段使用的组件,它们包括源程序文件、 数据文件等。 配置组件是根据工作产品组件建立的。 3.执行组件(Execution Component) 执行组件是执行系统的部件,如COM+的一个对象,它是一个动态 连接库(DLL)的实例。
图11.5 组件的开发期间的依赖
Home
11.1.3
调用依赖(Call Dependency)是指一个组 件调用或使用另一个组件 的服务,如图11.6所示。 客户组件调用或使用供应 者组件的服务,调用可以 直接进行,或通过接口进 行。供应者组件的元素可 以是组件的型或对象。 调用依赖可以发生在开发 期间的组件的型之间,用 组件图表示;调用依赖也 可以发生在运行期间的组 件的实例之间,可在部署 图中表示。
Home
组件
图11.1 简单组件与扩充组件示例
11.1.1
组件
组件在很多方面与对象类相似,如都有名字,都有实例,都能实现 接口,都存在着联系等。 组件的实例代表运行期间的可执行软件模块。例如,图11.1中的组 件“mymailer:Mailer”就是组件“Mailer”的一个实例,它存在于 运行期间。组件的实例只用于部署图中。 组件的性质的表示法与类相同。组件所包含的模型元素的可视性同 样有“公共”、“保护”、“私用”等。 但是组件和类有实质性的区别。 组件代表物理事物,而类代表事物的逻辑抽象,因此组件可以用于 部署图的节点中,而类不能。 一般组件只有操作,外界只能通过接口接触它们,而类可以直接有 属性和操作。

跟我学统一建模语言UML——与Web应用系统部署相关的UML图

跟我学统一建模语言UML——与Web应用系统部署相关的UML图

1.1跟我学统一建模语言UML——与Web应用系统部署相关的UML图1.1.1UML中的部署视图1、UML中的部署视图(Deployment View)(1)网络拓朴结构对于系统工程师而言,他们最关心的是软件系统的网络拓朴结构——有多少台服务器主机,有多少台客户端计算机,它们之间的关系如何,开发出的软件系统该如何部署到这些平台上去。

(2)UML部署相关的视图1)UML部署图描述了一个运行时的硬件结点,以及在这些结点上运行的软件组件的静态视图。

2)部署图显示了系统的硬件,安装在硬件上的软件,以及用于连接异构的机器之间的中间件3)部署图主要是由节点和节点之间的联系所组成,通过配置图可以了解系统在实际运行环境中的配置。

2、UML配置图的主要作用UML部署框图显示网络的物理布局和各种组件的位置,项目管理员、用户、建筑师和部署人员通过UML部署框图可以了解软件系统的物理布局和各种组件的最终位置。

此外,项目管理员也可以据此与用户沟通,部署人员可以用来制定软件系统的最终部署计划。

3、UML配置图中的各种节点(1)UML配置图中的节点节点(Node)代表一个物理设备以及其上运行的软件系统,如一台Unix主机、一个PC终端、一台打印机、一个传感器等。

节点有两种类型:处理器(Processor)和设备(Device)。

1)处理器是能够执行软件构件的节点,如主机;2)设备是不能执行软件构件的节点,如显示器、打印机。

3)节点的图标为三维立方体表示,节点名放在立方体内部(如果有实例,则在名字下面有一条下划线)。

(2)节点之间的通信节点之间的连线表示系统之间进行交互的通信路径,这种通信关联用一条直线表示,表明在节点之间存在某类通信路径,它们通过该通信路径交换对象或者发送消息。

通信类型则放在连接旁边的"《》"之间,表示所用的通信协议或网络类型。

(3)节点实例中的组件1)可以将可执行的组件的实例包含在节点实例的符号中,表示它们处在同一个节点的实例上,并且在同一节点的实例上运行;2)可以通过虚线相关性箭头将不同组件连接在一起,这意味着一个组件使用另一个组件中的服务(依赖关系,这和其他UML图上使用的符号是一样的)。

《UML(统一建模语言)》-John

《UML(统一建模语言)》-John
义为基础用例的增量扩展。 • 基础用例提供扩展点以添加新的行为。 • 扩展用例提供插入片段以插入到基础用例的扩展 点上。
泛化关系
• 父用例也可以被特别列举为一个或多个子用例。 • 子用例表示父用例的特殊形式。 • 子用例从父用例处继承行为和属性,还可以添加 行为或覆盖、改变继承的行为。
2.2.2 生命线
• 对象的生命线:
2.2.3 消息
• 消息定义的是对象之间某种形式的通信,它可以激发某 个操作、唤起信号或导致目标对象的创建或撤销。
• 消息是两个对象之间的单路通信,从发送方到接收方的 控制信息流。
• 消息可以用于在对象间传递参数。 • 消息可以是信号,也可以是调用。 • 在UML中,消息使用箭头来表示,箭头的类型表示了消
• 一个用例定义一组用例实例
• 简洁:参与者使用系统达到目标
-15-
识别用例
• 识别用例最好的方法就是从分析系统的参与者开始,考 虑每个参与者是如何使用系统的。
• 如何识别用例。
要点:有意义的目标
设定查询条件
会员
选择零件
会员
检索零件
-17-
要点:结果值由系统生成
出纳员
吃饭
系统需要处理的,由系统生成
• 参与者间的泛化关系示 例:
用例
• 外部可见的系统功能单元。 • 在不揭示系统内部构造的前提下定义连贯的行为。 • 不是需求或功能的规格说明,但是也展示和体现其所描
述的过程中的需求情况。
用例
• 用例的名称: ① 简单名 ② 路径名
识别用例
• 关键词:价值 • 定义
• 用例实例是系统执行的一系列动作,这些动作将生成特定参与者 可观测的结果值
• ArgoUML

ch12_UML组件图与部署图

ch12_UML组件图与部署图

12.2.2 部署图的要素
1.节点
节点(node) 是运行时代表计算资源的物理元素。节点通常 有内存及处理能力,它可以是物理设备及运行在该设备上的软 件系统. 节点分为处理机(processor)和设备(device)两类。
• 处理机:能执行软件、具有计算能力的节点,如主机、服务 器、客户机等; • 设备:没有计算能力的节点,如打印机、传感器、终端等。
3.添加组件、类和对象 接下来需要确定组件和其他内容,如类和对象。 需求列表显示下列组件可以用于图中: • 控制扫描仪的代码(名为ScanEngine组件) • 定制的Web服务器软件(名为WebSeverSoft组件) • 专用的数据访问组件(名为DataAccess组件) • 专用的浏览器软件(名为Browser组件) • 产品查询插件(名为ProductLookupAddIn组件) 另外,前面还提到了产品数据库,但是它不必像前面的几个项 目那样也建模为软件组件。我们要把产品数据库建模为一个类 实例ProductDB。
组件图的特性
• 组件图和部署图统称为实现图,是对OO 系统的物理方面建模的图。
• 组件图显示一组组件以及它们之间的相互 关系。
• 组件图可以显示软组件之间的依赖关系, 可以用来显示编译、链接或执行时组件之 间的依赖关系。
12.1.3 组件图的作用
1. 对源代码文件之间的相互关系建模
12.1.3 组件图的作用
组件和类之间的不同点:
1、类是逻辑抽象,组件是物理抽象,即 组件可以位于节点(node)上。
2、组件是对其它逻辑元素,如类,协作 (collaboration)的物理实现。即,组件 是软件系统的一个物理单元。 3、类可以有属性和操作;组件通常只有 操作,而且这些操作只能通过组件的 接口才能使用。

《统一建模语言 UML》复习资料汇总带答案

《统一建模语言 UML》复习资料汇总带答案

《统一建模语言 UML 》复习资料汇总带答案一、填空题1.状态图中 3 个常用的动作是 入口动作 、 出口动作和 do 动作。

2.顺序图中,消息用 水平箭头线 表示;时间用 垂直虚线 表示。

3. 用例图两个最核心的元素是 参与者 与用例。

5. 在 UML 的表示中顺序图将交互关系表示为一张二维图,其中纵向是 时间轴 ,时间沿竖线向下延伸。

横向代表了在协作中各独立对象的角色 。

6. 状态机图 图描述从状态到状态的控制流程,常用来对系统的动态特征进行建模。

7. 在 UML 中,状态机由对象的各个状态和连接这些状态的 转换 组成,是展示状态与状态转换的图。

8、在某个信息系统中,存在如下的业务陈述:①一个客户提交 0 个或多个订单;②一个订单由一个且仅由一个客户提交。

系统中存在两个类:“客户”类和“订单”类。

对应每个“订单”类的实例,存在 1 个“客户”类的实例;对应每个“客户”类的实例,存在 0 个或多 个“订单”类的实例。

9、UML 提供一系列的图支持面向对象的分析与设计,其中 类图 给出系统的静态设计视图;用例图 对系统的行为进行组织和建模是非常重要的;序列图 和 协作图 都是描述系统动态视图的交互图,前者描述了以时间顺序组织的对象之间的交互活动,后者强调收发消息的对象的组织结构。

供选择的答案:状态图、用例图、状态图、序列图、部署图、协作图、类图 10 活动图中分叉节点和 结合节点图符是用来描述多进程的并发处理行为。

11.实现的符号和继承的符号有相似之处,两者的唯一差别是实现关系用 虚线 表示,继承关系用 实线 表示。

12.状态图和类图、顺序图不同之处在于,后两种图能够对 多个对象 建立模型,而状态图只是对 1 个对象 建立模型。

13、在学校中,一个学生可以选修多门课程,一门课程可以由多个学生选修,那么学生和课程之间是 关联关系; 14.多重性指的是,某个类有 多个 个对象可以和另一个类的 1 个 对象关联。

统一建模语言UML中的各种视图

统一建模语言UML中的各种视图
组件图(描述了实现系统 的元素的组织) 配置图(描述了环境元素 的配置,并把实现系统的 元素映射到配置上)
(6)4种动态图 序列图(按时间顺序描述系统元素间的交互) 协作图(按照时间和空间顺序描述系统元素间的交互和它 们之间的关系) 状态图(描述了系统元素的状态条件和响应) 活动图(描述了系统元素的活动)
பைடு நூலகம்
5、在UML中是如何描述软件系统的模型 (1)其一:采用三种内容
三种内容、四种 关系和九种图
事物(Things):结构事物、行为事物、组织事物和辅助 事物
关系(Relationships):关联、依赖、聚合和组合、泛化 和实现 图(Diagrams):静态图和动态图
(2)其二:UML中提供四种关系的表示
3、UML中的“4+1视图”模型 为了能够从多个不同的角度对系统架构的结果进行全面的 描述,UML提供有“4+1 View”模型。 (1)“4+1 View”模型 “ 4+1 View” 指的是:用例视图、逻辑视图、进程视 图、实施视图、部署视图。 这几种视图能够从不同 的角度实现对系统进行 完整的描述。 (2)在Rose中所支持的各 种视图 4、RUP中的架构视图 (1)在RUP 中将“4+1 View”
图可以反映或者强调系统的某个特定方面的信息 这样将能够从不同的视图来观察系统,可以使人们在某段 时间内集中注意系统的某一个方面。
(2)所有视图 结合在一起 (通过它们各 自的图)就描 述了系统的完 整画面
因为我们需要从不 2、为什么要采用多个不同的视图来描述系统 同的角度来了解系 (1)软件系统是由许多视图共同描述的 统和所提供的功能
(7)在不同架构视图中的应用
(8)几种主要的图形的UML图示
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

例如,编写文档和相关帮助的人员不直接参与系统的分析和设计,然而他们 对系统的理解直接影响到系统文档的质量,而组件图是帮助他们理解系统 的有力工具。
9.1.1 组件图元素

构成组件图的元素包括:
组件(component) 接口(interface) 关系(relationship)
还可以包括包(package)和子系统(subsystem) 它们有助于将系统中的模型元素组织成更大的组块。

Processor

Device
9.2 部署图
2.组件(Component)
节点和组件的关系:
组件是参与系统执行的事物,而节点是执行组件的事物。 组件表示逻辑元素的物理模块,而节点表示组件的物理部署。

9.2 部署图
3.关系(relationship)
部署图中也可以包括依赖、泛化、关联及实现关系。部署图中的依赖关系谢谢观看Fra bibliotek任务解决
小结


组件图是对面向对象系统的物理方面建模时使 用的两种图之一,用于描述软件组件以及组件 之间的组织和依赖关系,构成组件图的元素包 括组件(component)、接口(interface)和关系 (relationship)。 部署图是用于描述系统硬件的物理拓扑结构以 及在此结构上运行的软件的图形,部署图可以 显示计算节点的拓扑结构、通信路径、节点上 运行的软件、软件包含的逻辑单元(对象、类 等)。构成部署图的元素主要是节点(node)、 组件(component)和关系(relationship)。
9.1.1 组件图
1.组件(Component)
组件是定义了良好接口且提供实现的一个物理部件 是指类的物理实现,表示将类、接口等逻辑元素打包而形
成的物理模块。 它具有很广泛的定义,以下的一些内容都可以被认为是组 件:程序源代码、子系统、动态链接库等。 组件的图形表示法是把组件画成嵌套了两个小矩形标签的 大矩形。 title.java
业务对象BO组件图
9.2 部署图(Deployment Diagram)
部署图用于描述系统硬件的物理拓扑结构以及在此结构上 运行的软件。 部署图可以显示计算节点的拓扑结构、通信路径、节点上 运行的软件、软件包含的逻辑单元(对象、类等)。 构成部署图的元素主要是

节点(node) 组件(component) 关系(relationship)。
9.1.1 组件图
2.接口(Interface)
接口是一组用于描述类或组件的某个服务的操作, 它是一个被命名的操作的集合,与类不同,它不描述任何结构(因此不包
含任何属性),也不描述任何实现(因此不包括任何实现操作的方法)。
9.1.1 组件图
组件的接口可以分为两种类型:
导出接口(expert
9.1.1 组件图

组件可以分为以下三种类型:
部署组件(Deployment
Component) 如dll文件、exe文件等. 工作产品组件(Work Product Component) 源代码文件、数据文件等,用来产生部署组件 执行组件(Execution Component) 系统执行后产生的组件。如ejb、com+对象、corba对象等
C++的.cpp文件
5)数据库
Database Database
9.1.2 关系

依赖关系
一个组件如果使用另外一个组件的操作,则可以在该组件和另外一个组件
的接口间建立依赖关系
9.1.2 关系

依赖关系
两个组件中的类如果存在泛化关系,则组件间可以加依赖
9.1.2 关系

依赖关系
两个组件中的类如果存在使用关系,则组件间可以加依赖
绘制系统部署图,可以参照以下步骤进行: (1) 对系统中的节点建模; (2) 对节点间的关系建模; (3) 对节点中的组件建模,这些组件来自组件图; (4) 对组件间的关系建模; (5) 对建模的结果进行精化和细化。
实例
图书管理系统目前开发的是一个单机版系统,其中所有的 运算均在一台机器上完成,但是由于打印报表的需要,系 统还应配备一台打印机。因此得出系统中存在2个节点: 一台主机,其类型是Processor。 一台打印机,其类型是Device。
9.2 部署图
1.节点(node)
节点是在运行时并代表计算资源的物理元素,一般至少
拥有一些内存,而且通常具有处理能力。 两种类型的节点: 处理器(Processor):能够执行软件组件、具有计 算能力的节点。 设备(Device):没有计算能力的节点,通常是通 过其接口为外界提供某种服务,例如打印机、扫描仪 等都是设备。
interface):即为其他组件提供 服务的接口,一个组件可以有多个导出接口。 interface):在组件中所用到的 其他组件所提供的接口,称为导入接口,一个组件 可以使用多个导入接口。
导入接口(import
9.1.1 组件图
3.关系(relationship)
关系是事物之间的联系,在面向对象的建模中,最重要的关系是依赖、泛
9.1.1 组件图

组件在许多方面都与类相同:

二者都有名称; 都可以实现一组接口; 都可以参与依赖、泛化和关联关系; 都可以被嵌套; 都可以有实例; 都可以参与交互。

组件和类之间也有一些显著的差别:


类表示逻辑抽象,而组件表示存在于计算机中的物理抽象。 组件表示的是物理模块而不是逻辑模块,与类处于不同的抽象级 别。 类可以直接拥有属性和操作;而一般情况下,组件仅拥有只能通 过其接口访问的操作。
《统一建模语言(UML)》
第9章 组件图和部署图
9.1 组件图(Component Diagram)

组件图是对面向对象系统的物理方面建模时使用的两种图 之一(另一种图是部署图),用于描述软件组件以及组件 之间的组织和依赖关系。
9.1 组件图

组件图有利于:
帮助客户理解最终的系统结构。 使开发工作有一个明确的目标。 复用软件组件。 帮助开发组的其他人员理解系统。
化、关联和实现,但组件图中使用最多的是依赖和实现关系。 组件图中的依赖关系使用虚线箭头表示 ,如图所示。
9.1.1 组件图

实现关系使用实线表示。实现关系多用于组件和接口之间。 组件可以实现接口。
9.1.1 组件图
4.补充图标
建模工具里都为不同类型的组件定义了特定的图标,这既便于系统设计师
在建模时使用,也便于其他人员理解。 在Rational Rose中: 1)主程序(main program)
9.1.1 组件图
2)包(package)
3)子程序规范(subprogram specification)和子程序体(subprogram body)
9.1.1 组件图
4)包规范(package specification) 和包体(package body) 即C++的.h文件
9.1.3 组件图建模

使用组件图建模的步骤可按照下列步骤进行:
(1)对系统中的组件建模; (2)定义相关组件提供的接口; (3)对它们间的关系建模; (4)对建模的结果进行精化和细化。
实例

在图书馆管理系统中,通过分析可以发现 类图中的类应分为4个部分:
1.用户接口模块(UI),主要负责系统和用户的交互, 包括Frame类,Dialog类等。 2.业务对象模块(BO),主要负责处理系统中的业务计 算,如借书,还书等功能的具体操作。 3.数据存储模块(DB),主要负责处理对数据的存储。 4.通用工具模块(UTIL),包括系统中通用函数。
使用虚线箭头表示。它通常用在部署图中的组件和组件之间。
9.2 部署图
4.图标

处理器(Processor),表示具有运算能力的节点。
Process or

设备(Device),表示没有运算能力的节点 。
Device

通讯路径(Connection),表示节点之间的通讯关系。
9.2 部署图
5.使用部署图对系统建模
相关文档
最新文档