软件设计师_面向对象技术——UML(下午第三题)

关系

UML 中有4种关系:依赖、关联、泛化和实现。

依赖(Dependency)

依赖是两个事物间的语义关系,其中一个事物(独立事物)发生变化会影响另一个事物(依赖事物)的语义。在图形上,把一个依赖画成一条可能有方向的虚线,如图 7-6 所示。

image-20221020132714334

关联(Association)

关联是一种结构关系,它描述了一组链,链是对象之间的连接。聚集(Aggregation)是一种特殊类型的关联,它描述了整体和部分间的结构关系。关联和聚集的图形化表示如图 7-7 和图 7-8 所示。在关联上可以标注重复度(Multiplicity)和角色(Role)。

image-20221020132757869

泛化(Generalization)

泛化是一种特殊/一般关系,特殊元素(子元素)的对象可替代一般元素(父元素)的对象。用这种方法,子元素共享了父元素的结构和行为。在图形上,把一个泛化关系画成一条带有空心箭头的实线,它指向父元素,如图 7-9 所示。

image-20221020132828850

实现(Realization)

实现是类元之间的语义关系,其中一个类元指定了由另一个类元保证执行的契约。在两种情况下会使用实现关系:一种是在接口和实现它们的类或构件之间;另一种是在用例和实现它们的协作之间。在图形上,把一个实现关系画成一条带有空心箭头的虚线,如图 7-10 所示。

image-20221020132907665

这四种关系是UML模型中可以包含的基本关系事物。它们也有变体,例如,依赖的变体有精化、跟踪、包含和延伸。

UML中的图

**图(Diagram)**是一组元素的图形表示,大多数情况下把图画成顶点(代表事物)和弧(代表关系)的连通图。为了对系统进行可视化,可以从不同的角度画图,这样图是对系统的投影。UML 2.0 提供了 13 种图,分别是类图、对象图、用例图、序列图、通信图、状态图、活动图、构件图、组合结构图、部署图、包图、交互概览图和计时图。序列图、通信图、交互概览图和计时图均被称为交互图。

类图(Class Diagram)

类图(Class Diagram)展现了一组对象、接口、协作和它们之间的关系。在面向对象系统的建模中所建立的最常见的图就是类图。类图给出系统的静态设计视图。包含主动类的类图给出了系统的静态进程视图。
类图中通常包括下述内容(如图 7-11 所示)。
(1)类。
(2)接口。
(3)协作。
(4)依赖、泛化和关联关系。

image-20221020133404459

用例图(Use Case Diagram)

用例图(Use Case Diagram)展现了一组用例、参与者(Actor)以及它们之间的关系。用例图通常包括以下内容(如图 7-13 所示)。
(1)用例。
(2)参与者。
(3)用例之间的扩展关系(<>)和包含关系(<>),参与者和用例之间的关联关系,用例与用例以及参与者与参与者之间的泛化关系。

image-20221020133637419

包含关系

image-20221020134512261

扩展关系

image-20221020134723956

泛化关系

image-20221020135116146

21年下半年

image-20221020141226228

image-20221020141541961

image-20221020143415334

解析:U1:编写迷宫文件 U2:导入迷宫文件 U3:设置计时器

image-20221020141554000

image-20221020150653135

解析:用户与用户之间有三种关系:包含扩展泛化

每个机器人都设置有一个计时器,用于支持执行预先定义好的定时事件,也就是说用户要使用机器人,就要设置定时器,所以U3应该是“操作机器人”的子类应该是操作机器人“包含”设置定时器。包含关系是包含用例指向被包含用例。

建立迷宫,用户可以使用编辑器编写迷宫文件,将迷宫文件导入游戏系统建立用户自定义的迷宫。建立迷宫这个事件可以通过“编写迷宫文件”和“导入迷宫文件”来完成所以是泛化关系,“编写迷宫文件”与”导入迷宫文件“是子类,建立迷宫是父类。泛化关系子类指向父类。

答案:U1、U2和建立迷宫是泛化关系,建立迷宫用例泛化U1、U2用例
U3和操作机器人是包含关系,操作机器人用例包含U3用例。

image-20221020141602504

image-20221020161842839

答案:C1:机器人(Robos) C2:计时器(Timer) C3:小精灵(PacMan) C4:幽灵(Ghost) C3和C4可以互换
C5:传感器(Sensor) C6:前向传感器(FrontSensor) C7:近距离传感器(ProxiSensor) C6和C7可以互换
C8:迷宫(Maze)

  • 1
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
  软件设计师考试是全国计算机技术与软件专业技术资格(水平)考试的中级职称考试,是历年各级考试报名中*大的热点之一。本书汇集了2009上半年到2016下半年的所有试和解析,参加考试的考生,认真读懂本书的内容后,将会更加了解考的思路,对提升自己考试通过率的信心会有极大的帮助。 目录 第1章 2009上半年软件设计师上午试分析与解答 第2章 2009上半年软件设计师下午分析与解答 第3章 2009下半年软件设计师上午试分析与解答 第4章 2009下半年软件设计师下午分析与解答 第5章 2010上半年软件设计师上午试分析与解答 第6章 2010上半年软件设计师下午分析与解答 第7章 2010下半年软件设计师上午试分析与解答 第8章 2010下半年软件设计师下午分析与解答 第9章 2011上半年软件设计师上午试分析与解答 第10章 2011上半年软件设计师下午分析与解答 第11章 2011下半年软件设计师上午试分析与解答 第12章 2011下半年软件设计师下午分析与解答 第13章 2012上半年软件设计师上午试分析与解答 第14章 2012上半年软件设计师下午分析与解答 第15章 2012下半年软件设计师上午试分析与解答 第16章 2012下半年软件设计师下午分析与解答 第17章 2013上半年软件设计师上午试分析与解答 第18章 2013上半年软件设计师下午分析与解答 第19章 2013下半年软件设计师上午试分析与解答 第20章 2013下半年软件设计师下午分析与解答 第21章 2014上半年软件设计师上午试分析与解答 第22章 2014上半年软件设计师下午分析与解答 第23章 2014下半年软件设计师上午试分析与解答 第24章 2014下半年软件设计师下午分析与解答

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

要什么自行车儿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值