- 1、本文档共40页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
OOAD 第11章 构件及部署部分的设计 CUMT
面向对象分析与设计Object-Oriented Analysis and Design 张 磊 博士 副教授 zhanglei@cumt.edu.cn 1)对构件的源代码建模 n识别出一组相关源代码文件集合。 n考虑设置一个标记值,用它给出源代码文件的版本号、作者名或最后修改日期等信息。 n用依赖关系对这些文件之间的编译依赖关系建模。 2) 对构件的实现制品建模 决定构件由哪个(些)制品实现; 决定可执行制品之间的关系。 利用承载依赖对构件和实现体建模 11.2.1 概念与表示法 节点是在运行时存在并代表一项计算资源的物理元素,一般拥有存储空间和执行代码能力。通常把节点是一个可以在其上部署构件的处理器或设备。 用一个立方体表示一个节点。 备份服务器 11.2 部署图 一个节点上可以有一个或多个构件,一个构件也可以部署在一个或多个节点上。如左图所示,节点与它所部署的构件之间的关系可用依赖关系显式地加以表示。 sales pos.exe contacts.exe 尽管节点和构件经常在一起使用,但二者是有区别的: ?? (1)构件是参与系统执行的事物,节点是执行构件的事物。 ??? (2)构件代表逻辑元素的物理打包;在节点上表示构件的物理部署情况。 节点之间最常见的关系是关联关系,用来表示节点之间的物理连接。下图节点连接使用了以太网连接协议和串口连接协议。 kiosk console sever RAID farm 《10-T Ethernet》 《RS-232》 对单机式、嵌入式和分布式系统拓扑结构中的处理器和设备,都可以用部署图进行建模。 也可以利用关联关系表示节点间的间接连接,例如远程服务器之间的卫星通讯连接 若系统比较复杂,还可以用包组织结点 部署图通常包含节点、节点间的关联关系、以及构件和节点间的部署关系。在多数情况下,用于对系统运行于其上的硬件拓扑结构的建模。 1、对嵌入式系统建模 嵌入式系统是软件和硬件的协作体,其硬件与物理设备连接,软件包括控制设备(如马达、传动装置和显示器等)的软件和由传感器控制的软件等。 用部署图对组成嵌入式系统的处理器、设备以及构件在其上的分布情况建模。 11.2.2部署图 2、对分布式系统建模 将在不同地点、具有不同功能或拥有不同数据的多个节点用通讯网络连接起来的,在控制系统的统一管理控制下,协作完成信息处理任务的系统,就是通常所说的分布式系统。 这样的系统要求各节点之间用网络连接,系统中的构件要物理地分布在节点上。用部署图描述系统的网络拓扑结构以及构件在其上的分布情况。 区别:独立部署与类型作用 构件到构件的委托连接子:我认为应该之间有装配接口;构件到类的委托连接子,则无; 构件到构件的直接连接子:我认为应该之间有装配接口;一种说法是直接传递的消息,而接口仅为操作调用——在UML中操作调用就是消息。 这个头文件(signal.h)被其他两个文件(interp.cpp和signal.cpp)引用,这两个.cpp文件都是体文件。其中一个文件(interp.cpp)有一个到另一个头文件(irq.h)的编译依赖关系,而device.cpp又有一个到interp.cpp的编译依赖关系。有了这个制品图,跟踪变化的影响就容易多了。例如,源代码文件signal.h发生了变化将需要重新编译signal.cpp、interp.cpp以及device.cpp这3 个文件。该图也显示出,文件irq.h将不受影响。 课件制作人:谢希仁 《计算机网络》课件 制作人:谢希仁 第11章 构件及部署部分的设计 第11章 构件及其部署设计 当前的一种主流的做法是在面向对象的系统设计阶段的后期,考虑如何对系统的构件进行描述、构造和组织,以及构件如何在节点上进行分布。 1、构件 在《计算机百科全书》中,把构件定义为在构件软件系统中具有相对独立功能、可以明确辨识、接口由契约指定、语境有明显依赖关系、可独立部署且多由第三方提供的可组装软件实体。 按照UML2.0的定义,构件是系统中的可替换的模块化部分,它封装了自己的内容;构件利用提供接口和请求接口定义自身的行为;它起类型的作用。 11.1 构件图 11.1.1 概念与表示法 上述定义有如下几方面的含义: 1) 一个构件是系统的一个模块部分,而且是一个自包含的单元,它封装了其内部成分。 2)构件通过它的提供接口和请求接口展现行为。 3)构件是可替换的单元,在设计时和
文档评论(0)