在uml中大部分模型描述了逻辑和设计方面的信息:
用例图知道期望
类图可以知道问题域的词汇(类、对象)
状态图、交互图和活动图可以知道类图中的词汇是如何写作完成行为的(逻辑结构)
实现图是用来描述实现方面的信息它从系统的层次来描述:硬件的组成和布局;软件系统划分和功能实现。这两个方面分别是通过部署图和组件图来实现的:
构件图:用来显示一组构件之间的组织与依赖关系。主要是从软件架构的角度来描述一个系统的主要功能,如 子系统、类、包、构件等。使用构件最重要的是复用。
部署图:用来描述系统硬件的物理拓扑结构以及在此结构上执行的软件。
我们可以对比类来理解构件:
类 | 构件 |
逻辑抽象 | 物理抽象 |
可直接拥有属性和操作 | 一般,只拥有只能通过其接口访问的操作 |
综上所述,构件的特点如下:
构件是物理的
构件是可替换的
构件是系统的一部分
构件遵从一组接口并提供对一组接口的实现
对比于构件图来理解部署图会容易一些,简而言之就是一个针对于系统软件架构一个针对于系统硬件架构。详细对比如下:
构件图:构件和组成中有四种关系描述了源代码的关系和可执行程序的关系以及构件和接口的关系,但是没 有描述和硬件的关系。
部署图:在组成中只有依赖和关联两种关系。描述的是和硬件映射之间的关系和拓扑结构。
虽然做了很多对比,但是由于本人比较菜,所以对实现图的掌握还是不太好,以下是针对机房收费系统画的两幅交互图,肯定有很对不完善的地方,敬请大鸟们批评指出:
原文:http://blog.csdn.net/u010892841/article/details/24932737