附加题:部署图
重要概念:
1. 部署图
部署图表示的是,如何将具体的软件制品(例如可执行文件)分配到计算节点(具有处理服务的某种事物)上。部署图表示了软件元素在物理架构上的部署,以及物理元素之间的通信(通常通过网络进行)。
2. 部署图中最基本的元素是节点。有两种节点:
a.设备节点——具有处理和存储能力,可执行软件的物理(电子数字式)计算资源,例如典型的计算机或移动电源。
•设备(《device》):没有处理能力的节点,至少是不关心其处理能力的节点。例如打印机、IC卡读写器,如果我们的系统不考虑它们内部的芯片,就可建模为设备
b.执行环境节点——在外部节点(如计算机)中运行的软件计算资源,其自身可以容纳和执行其他可执行软件元素。
•处理器(《process》):具有处理能力的节点,即可以执行构件
如,操作系统(OS)是容纳和执行操作程序的软件。
虚拟机(VM)容纳和执行程序。
数据库引擎(如PostgreSQL)接受SQL语句并执行之,并且容纳和执行内部存储过程(用Java或其它专有语言编写)
web浏览器容纳和执行JavaScript、Java Applets、Flash和其他可执行的元素。
工作流引擎。
Servlet容器或EJB容器。
节点属性和操作:可以为一个节点提供处理器速度、内存容量、网卡数量等属性,可以为其提供启动、关机等操作
3. 通信路径:
节点之间的一般连接表示一种通信路径,上面可以标记协议。他们通常表示网络连接。为了更好地表示两个节点之间的关系,我们可以通过“约束”来对连接进行描述。约束表示为{}。
4. 节点命名
实例名称格式:Node Instance : node
与结点的区别在于名称有下划线和结点类型前面有冒号,冒号前面可以有示例名称也可以没有示例名称
通常在UML中,具体实例的名称带有下划线,如果没有下划线则代表类,而不是实例。注意,该规则对于交互图中的实例具有例外,以生命线框图表示实例,其名称没有下划线。通常,在任何情况下,我们可以看到部署图中对象实例名称带下划线。但是UML规范中规定,部署图中的下划线可以忽略。
5. 物件(Artifact)
物件是软件开发过程中的产物,包括过程模型(比如用例图、设计图等等)、源代码、可执行程序、设计文档、测试报告、需求原型、用户手册等等。物件表示如下,带有关键字«artifact»和文档图标,或者表示为《artifact》+name。
6. 节点和构件的联系与区别:
节点的概念和构件有许多相同之处,例如二者有多名称,都可以参与依赖、泛化和关联关系,都可以被嵌套,都可以有实例,都可以参与交互。
但它们之间也存在明显的区别:构件是参与系统执行的事物,而节点是执行构件的事物;构件表示逻辑元素的物理打包,而节点表示构件的物理部署
绘制要点:
具体方法:
注意事项:
1.节点:分类题目中已告知
根据图中所给的信息,将部署图对应画出来就可以了。
2.操作系统等信息在节点中表示为{OS=XXXX}
3.数据库与其他的通信协议为JDBC。
试题答案: