UML构件图PPT课件_第1页
UML构件图PPT课件_第2页
UML构件图PPT课件_第3页
UML构件图PPT课件_第4页
UML构件图PPT课件_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1构件图构件图component diagramcomponent diagramumluml及建模工具及建模工具2021-10-252第10章 构件图(component diagram)v10.1 10.1 基于构件的系统结构建模基于构件的系统结构建模v10.2 10.2 构件和构件图构件和构件图v10.3 10.3 构件图的表示方法构件图的表示方法v10.4 10.4 总结总结2021-10-25310.1 10.1 基于构件的系统结构建模基于构件的系统结构建模v在软件开发和设计时,如果正在开发的软件系统的在软件开发和设计时,如果正在开发的软件系统的某些功能可以直接用别人已经完成的并且具

2、有相同某些功能可以直接用别人已经完成的并且具有相同功能的软件模块来代替,这样可以大大节省时间功能的软件模块来代替,这样可以大大节省时间v为了使所开发的软件系统的某些功能模块在将来更为了使所开发的软件系统的某些功能模块在将来更容易更新和替换,而不得不考虑如何使所开发的功容易更新和替换,而不得不考虑如何使所开发的功能模块与系统的其他功能模块有最大程度的松耦合能模块与系统的其他功能模块有最大程度的松耦合机制机制v正是在所有上述想法的驱动下,软件工程领域出现正是在所有上述想法的驱动下,软件工程领域出现了一种软件开发技术,称为基于构件的开发了一种软件开发技术,称为基于构件的开发(component ba

3、sed development(component based development,cbd) cbd) v在该方法指导下,构件对用户来说,能够在该方法指导下,构件对用户来说,能够“即插即即插即用用”,即能从所提供的构件库中获得合适的构件并,即能从所提供的构件库中获得合适的构件并重用,对供给商来说,这种软件构件便于用户裁剪、重用,对供给商来说,这种软件构件便于用户裁剪、维护和重用维护和重用2021-10-25410.1 10.1 基于构件的系统结构建模基于构件的系统结构建模v为了实现基于构件软件开发的设计思想,我为了实现基于构件软件开发的设计思想,我们必须将系统划分为若干个可管理的子系统,们

4、必须将系统划分为若干个可管理的子系统,再把子系统中的类用接口进行封装,以便组再把子系统中的类用接口进行封装,以便组成构件内部高内聚成构件内部高内聚(high cohesion)(high cohesion)、构件之、构件之间松耦合间松耦合(loose coupling)(loose coupling)的结构的结构vumluml提供构件图来实现基于构件的系统结构提供构件图来实现基于构件的系统结构建模建模 2021-10-25510.2.1 10.2.1 构件构件v目前构件还没有统一的定义目前构件还没有统一的定义v根据根据donald belldonald bell在在uml basics: th

5、e uml basics: the component diagramcomponent diagram一文中所述,一文中所述,uml2.0uml2.0改变改变了传统构件概念的本质意思了传统构件概念的本质意思v在在uml2.0uml2.0中,构件被认为是在一个系统或子系统中,构件被认为是在一个系统或子系统中的独立的封装单位,构件通过一系列的接口对外中的独立的封装单位,构件通过一系列的接口对外界提供功能界提供功能v在在 uml 2.0uml 2.0中,构件被认为是独立的,是呈现事物中,构件被认为是独立的,是呈现事物的更大的设计单元,这些事物一般将使用可更换的的更大的设计单元,这些事物一般将使用可

6、更换的构件来实现构件来实现2021-10-25610.2.1 10.2.1 构件构件v我们更倾向于把构件定义为:我们更倾向于把构件定义为: 在软件系统中遵从并实现一组接口的物理的、可在软件系统中遵从并实现一组接口的物理的、可替换的软件模块。在这个构件定义中,我们强调替换的软件模块。在这个构件定义中,我们强调了构件的两个重点:接口和可替换了构件的两个重点:接口和可替换( (或称为重用或称为重用) )v构件的实施细节应被隐藏,它使用一系列的供接口构件的实施细节应被隐藏,它使用一系列的供接口 (provided interface) (provided interface) 提供它的功能,使用需接口

7、提供它的功能,使用需接口 (required interfaces) (required interfaces) 接收其他构件提供的功能接收其他构件提供的功能v通过使用接口,可以避免在系统中各个构件之间发通过使用接口,可以避免在系统中各个构件之间发生直接依赖关系,有利于新构件的替换生直接依赖关系,有利于新构件的替换2021-10-25710.2.2 10.2.2 构件图构件图v构件图构件图(component diagram)(component diagram)为系统中的构件建模,为系统中的构件建模,它展示了构件间相互依赖的网络结构它展示了构件间相互依赖的网络结构v构件图是构件图是umlum

8、l中最重要的建模图示语言之一中最重要的建模图示语言之一v它可以建立系统中的类、类的内部结构它可以建立系统中的类、类的内部结构( (类的属性和类的属性和操作操作) )以及类与类相互之间的各种静态关系模型以及类与类相互之间的各种静态关系模型v构件建模的目标是把系统中的类分布到更大的内聚构件建模的目标是把系统中的类分布到更大的内聚的构件中,是显示系统构件间的结构关系的构件中,是显示系统构件间的结构关系v构件图的变迁:构件图的变迁: uml1.xuml1.x(roserose支持)支持) uml2.xuml2.x(roserose不支持,不支持,rsarsa支持)支持)2021-10-25810.2.

9、2 10.2.2 构件图构件图v构件图由构件、接口、关系、端口和连接器构件图由构件、接口、关系、端口和连接器组成,它的表达方式为:组成,它的表达方式为:构件图构件图 = = 构件构件 + + 接口接口 + + 关系关系 + + 端口端口+ + 连接器连接器component diagram = component diagram = components + interface + relationship components + interface + relationship + port + connector + port + connector2021-10-25910.3 10.

10、3 构件图的表示方法构件图的表示方法v10.3.1 10.3.1 构件构件v10.3.2 10.3.2 供接口和需接口供接口和需接口v10.3.3 10.3.3 构件间的关系构件间的关系v10.3.4 10.3.4 实现构件的类实现构件的类v10.3.5 10.3.5 外部接口外部接口端口端口v10.3.6 10.3.6 连接器连接器v10.3.7 10.3.7 显示构件的内部结构显示构件的内部结构2021-10-251010.3.1 10.3.1 构件构件vumluml提供许多中表示组件图的方式,基本组提供许多中表示组件图的方式,基本组件是一个可替换的软件包件是一个可替换的软件包 compo

11、nent productmanagement图10-1 构件的uml符号 2021-10-251110.3.2 供接口和需接口v构件中有非常多的功能,假如有一个类使要构件中有非常多的功能,假如有一个类使要用构件中的某个类的具体的某个方法,但当用构件中的某个类的具体的某个方法,但当构件中这个具体的方法发生变化时(比如方构件中这个具体的方法发生变化时(比如方法名字的变化或方法内容的变化),那么该法名字的变化或方法内容的变化),那么该类就不能应用构件中的相应内容了类就不能应用构件中的相应内容了v应用接口,可以隐藏具体的实现细节,这样,应用接口,可以隐藏具体的实现细节,这样,构件中的内容可以任意变化,

12、而接口却是相构件中的内容可以任意变化,而接口却是相对固定的对固定的2021-10-251210.3.2 供接口和需接口v构件向外部展现两种接口:构件向外部展现两种接口: 供接口供接口 需接口需接口v供接口表示构件为客户提供的功能,它告知供接口表示构件为客户提供的功能,它告知用户构件如何被使用。构件至少要有一个供用户构件如何被使用。构件至少要有一个供接口接口v需接口表示为了使构件工作,构件必须要从需接口表示为了使构件工作,构件必须要从其他服务中所获得的功能。需接口表示该接其他服务中所获得的功能。需接口表示该接口是构件的成员变量或构件中类的成员变量口是构件的成员变量或构件中类的成员变量2021-1

13、0-251310.3.2 供接口和需接口v供接口用棒棒糖式的图形表示,由一个封闭供接口用棒棒糖式的图形表示,由一个封闭的圆形与一条直线组成;需接口用插座式的的圆形与一条直线组成;需接口用插座式的图形表示,由一个半圆与一条直线组成图形表示,由一个半圆与一条直线组成 orderproductsessioniretailorderibatchorderisalesmanicustomerimanualorder图10-2 预定产品构件 2021-10-251410.3.3 10.3.3 构件间的关系构件间的关系v如果一个构件有一个需接口,则表示它需要如果一个构件有一个需接口,则表示它需要另一个构件或

14、者类来为它提供服务另一个构件或者类来为它提供服务v为了表达构件与其他构件间的关系,供接口为了表达构件与其他构件间的关系,供接口与需接口之间用一个表示依赖的箭头(即虚与需接口之间用一个表示依赖的箭头(即虚线加一个开箭头)连接起来,该箭头从需接线加一个开箭头)连接起来,该箭头从需接口引出,指向服务供应者提供的供接口口引出,指向服务供应者提供的供接口 2021-10-2515ordersystemproductaccessorcustomerlookupcustomerrepositoryinventorysystemcustomerlookupproductaccessor图10-3 构件间的协同

15、工作 10.3.3 10.3.3 构件间的关系构件间的关系2021-10-251610.3.3 10.3.3 构件间的关系构件间的关系v用一个装配连接器用一个装配连接器(assembly connectors)(assembly connectors)来表示构件之间的关系来表示构件之间的关系 blogdatasource conversionmanagementfeedproviderdisplayconverterdatasource图10-4 用装配连接器表示构件间的协同工作 uml1.x表示法2021-10-251710.3.3 10.3.3 构件间的关系构件间的关系v更简单的,你可以忽

16、略构件间的供接口和需更简单的,你可以忽略构件间的供接口和需接口,而直接在构件间画上依赖关系接口,而直接在构件间画上依赖关系 blogdatasourceconversionmanagement图10-5 直接用依赖表示构件间的关系2021-10-251810.3.4 10.3.4 实现构件的类实现构件的类v构件需要包含和使用一些类来实施它的功能,构件需要包含和使用一些类来实施它的功能,这些类实现了这个构件这些类实现了这个构件v可以在构件中画出这些类和类间的关系可以在构件中画出这些类和类间的关系 loggerblogdatasourcedatasourceblogentry图10-6 实现构件的

17、类 2021-10-251910.3.5 10.3.5 外部接口外部接口端口端口v组合构件的外部接口用一个尾部加一个小方组合构件的外部接口用一个尾部加一个小方块的正常的接口组成,这个小矩形框被称为块的正常的接口组成,这个小矩形框被称为端口端口(port)(port)v端口是端口是uml2.0uml2.0引入的一个概念,端口提供引入的一个概念,端口提供一种方法,显示建模构件所提供或要求的接一种方法,显示建模构件所提供或要求的接口如何与它里面的部分相关联口如何与它里面的部分相关联 2021-10-2520datasourceconversionmanagementreportingfeedprov

18、iderdisplayconverterformattingdata端口端口图10-8 表示端口 10.3.5 10.3.5 外部接口外部接口端口端口2021-10-252110.3.6 10.3.6 连接器连接器v为了展现功能的实现,连接器为了展现功能的实现,连接器(connectors)(connectors)将一个组件将一个组件提供提供的接口与另一个组件的接口与另一个组件必需的必需的接口绑定到一起接口绑定到一起vuml 2.0 uml 2.0 提供了两种类型的连接器:提供了两种类型的连接器: 代理连接器代理连接器(delegation connectors)(delegation con

19、nectors):连:连接外部接口的端口和内部接口接外部接口的端口和内部接口 组装连接器组装连接器(assembly connectors)(assembly connectors):组装:组装连接器表示构件之间的关系,它连接构件连接器表示构件之间的关系,它连接构件内部的类,将一个构件的供接口和一个构内部的类,将一个构件的供接口和一个构件的需接口捆绑在一起件的需接口捆绑在一起 2021-10-252210.3.7 10.3.7 显示构件的内部结构显示构件的内部结构v一个构件的内部可能包括多个其他的构件,一个构件的内部可能包括多个其他的构件,这样的构件称为复合构件这样的构件称为复合构件(compound (compound component)component),复合构件中的构件称为子构,复合构件中的构件称为子构件件(subcomponent)(subcomponent)v图图10-910-9显示了显示了ppspps项目中一个称为项目中一个称为produceplanningproduceplanning的复合构件及其内部结

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论