- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
UML 用例图
UML 用例图
用例图主要用来图示化系统的主事件流程,它主要用来描述客户的需求,即用户希望系统具备的完成一定功能的动作,通俗地理解用例就是软件的功能模块。展示了一个外部用户能够观察到的系统功能模型图。
用例图中涉及的关系:
1》泛化(Inheritance)
就是通常理解的继承关系,子用例和父用例相似,但表现出更特别的行为;
子用例将继承父用例的所有结构、行为和关系。子用例可以使用父用例的一段行为,也可以重载它。父用例通常是抽象的。
2》包含(Include)
2》包含(Include)
包含关系用来把一个较复杂用例所表示的功能分解成较小的步骤。
3》扩展(Extend)
扩展关系是指用例功能的延伸,相当于为基础用例提供一个附加功能。
包含(include)、扩展(extend)、泛化(Inheritance) 的区别:
条件性:泛化中的子用例和 include 中的被包含的用例会无条件发生,而
extend 中的延伸用例的发生是有条件的;
直接性:泛化中的子用例和 extend 中的延伸用例为参与者提供直接服务, 而 include 中被包含的用例为参与者提供间接服务。
对 extend 而言,延伸用例并不包含基础用例的内容,基础用例也不包含延伸用例的内容。
对 Inheritance 而言,子用例包含基础用例的所有内容及其和其他用例或参与者之间的关系;
UML 类图
类名:如果是抽象类,则采用斜体(继承用实线)
1》接口的表示:
一个类和一个接口不同:一个类可以有它形态的真实实例,然而一个接口必须至少有一个类来实现它。在 UML 2 中,一个接口被认为是类建模元素的特殊化。因此,接口就象类那样绘制,但是长方形的顶部区域也有文本“interface”。
2》
2》 UML 支持的可见性类型的标志
标志
可见性类型
+
Public
#
-
~
proteted
private package
3》
3》多重值和它们的表示
可能的多重值描述
可能的多重值描述
表示
0..1
1
0..*
* 1..*
3
0..5
5..15
含义
0 个或 1 个只能 1 个0 个或多个
个或多个
个或多个只能 3 个0 到 5 个
5 到 15 个
4》类图之间的关系有:泛化(继承),依赖,关联,聚合/组合。
4》类图之间的关系有:泛化(继承),依赖,关联,聚合/组合。
1.聚合/组合
聚合是一种特别类型的关联,用于描述“总体到局部”的关系。在基本的聚合关系中, 部分类 的生命周期独立于 整体类 的生命周期。
举例来说,我们可以想象,车 是一个整体实体,而 车轮 轮胎是整辆车的一部分。轮胎可以在安置到车时的前几个星期被制造,并放置于仓库中。在这个实例中,Wheel 类实例清楚地独立地 Car 类实例而存在。然而,有些情况下, 部分 类的生命周期并 不 独立于 整体 类的生命周期 -- 这称为合成聚合。举例来说,考虑公司与部门的关系。 公司和部门 都建模成类,在公司存在之前,部门不能存在。这里 Department 类的实例依赖于 pany 类的实例而存在。
·基本聚合(聚合)
有聚合关系的关联指出,某个类是另外某个类的一部分。在一个聚合关系中,子类实例可以比父 类存在更长的时间。为了表现一个聚合关系,你画一条从父类到部分类的实线,并在父类的关联 末端画一个未填充棱形。
图中清楚的表明了类 Car 对象包含了另一类 Wheel 的 4 个实例,这两者在概念上是密不可分的, 其中的一个类是另一个类的构成成分。菱形表示“包含”,箭头表示被包含的对象,数字 4 表示包含的数目。
·组合聚合 (组合)
组合聚合关系是聚合关系的另一种形式,但是子类实例的生命周期依赖于父类实例的生命周期。
注意:组合关系如聚合关系一样绘制,不过这次菱形是被填充的。
2.依赖
依赖可以说是要完成 C5 里的所有功能,一定要有 C6 的方法协助才行3.关联
可以分为单向关联,双向关联
双向关联:
C1-C2:指双方都知道对方的存在,都可以调用对方的公共属性和方法。单向关联:
UML 序列图序列图的主要目的是定义事件序列,产生一些希望的输出。重点不是消息本身,而是消息产生的顺序;不过,大多数序列图会表示一个系统的对象之间传递的什么消息,以及它们发生的顺序。1》生命线:生命线名称可带下划线。当使用下划线时,意味着序列图中的生命线代表一个类的特定实例。序列图的实例名称有下划线,而角色名称没有。2》 注释3》约束
UML 序列图
序列图的主要目的是定义事件序列,产生一些希望的输出。重点不是消息本身,而是消息产生的顺序;不过,大多数序列图会表示一个系统的对象之间传递的什么消息,以及它们发生的顺序。
1》生命线:
生命线名称可带下划线。当使用下划线时,意味着序列
文档评论(0)