📜  OOAD-UML结构图

📅  最后修改于: 2020-12-14 04:10:57             🧑  作者: Mango


UML结构图的分类如下:类图,对象图,组件图和部署图。

类图

类图为系统的静态视图建模。它由系统的类,接口和协作组成;以及它们之间的关系。

系统的类图

让我们考虑一个简化的银行系统。

银行有很多分行。在每个区域中,一个分支机构被指定为区域总部,负责监督该区域中的其他分支机构。每个分支机构可以有多个帐户和贷款。帐户可以是储蓄帐户或活期帐户。客户可以同时开立储蓄账户和活期账户。但是,客户不得拥有多个储蓄帐户或活期帐户。客户也可以从银行获得贷款。

下图显示了相应的类图。

银行系统类图

系统中的类

银行,分行,帐户,储蓄帐户,活期帐户,贷款和客户。

人际关系

  • 银行“拥有”许多分支机构-组成,一对多

  • 一个具有区域总部职能的分支机构监督其他分支机构-一元协会,一对多

  • 分支机构“拥有”多个帐户-汇总,一对多

从“帐户”类继承了两个类,即“储蓄帐户”和“活期帐户”。

  • 客户可以一对一拥有一个往来帐户-关联

  • 客户可以一对一拥有一个储蓄帐户-关联

  • 分支机构“拥有”一笔贷款-汇总,一对多

  • 客户可以接受许多贷款一对多关联

对象图

对象图在某个时间点对一组对象及其链接建模。它在类图中显示了事物的实例。对象图是交互图的静态部分。

示例-下图显示了银行系统类图一部分的对象图。

银行系统的对象图

组件图

组件图显示了一组组件之间的组织和依赖性。

组件图包括-

  • 组件
  • 介面
  • 人际关系
  • 软件包和子系统(可选)

组件图用于-

  • 通过正向和反向工程构建系统。

  • 在使用面向对象的编程语言开发系统时,对源代码文件的配置管理进行建模。

  • 在建模数据库中表示模式。

  • 动态系统的建模行为。

下图显示了用于对使用C++开发的系统源代码进行建模的组件图。它显示了四个源代码文件,即myheader.h,otherheader.h,priority.cpp和other.cpp。显示了myheader.h的两个版本,从最新版本到其祖先。文件priority.cpp对other.cpp具有编译依赖性。文件other.cpp对otherheader.h具有编译依赖性。

组件图

部署图

部署图着重于运行时处理节点及其上存在的组件的配置。它们通常由节点和依赖性或节点之间的关联组成。

部署图用于-

  • 嵌入式系统中的设备模型,通常由软件密集型硬件集合组成。

  • 代表客户端/服务器系统的拓扑。

  • 模拟完全分布式的系统。

下图显示了遵循客户端/服务器体系结构的计算机系统的拓扑。该图图示了被构造为服务器的节点,该节点包含处理器。该图表明系统上已部署了四个或更多服务器。客户端节点连接到服务器,其中每个节点代表一个终端设备,例如工作站,便携式计算机,扫描仪或打印机。节点用图标表示,这些图标清楚地描述了现实世界中的等效对象。

部署图