UML系统分析与设计教程(第2版) 课件 第7、8章 类图、对象图和包图;交互作用图_第1页
UML系统分析与设计教程(第2版) 课件 第7、8章 类图、对象图和包图;交互作用图_第2页
UML系统分析与设计教程(第2版) 课件 第7、8章 类图、对象图和包图;交互作用图_第3页
UML系统分析与设计教程(第2版) 课件 第7、8章 类图、对象图和包图;交互作用图_第4页
UML系统分析与设计教程(第2版) 课件 第7、8章 类图、对象图和包图;交互作用图_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

UML系统分析与设计SystemAnalysis&Design冀振燕北京交通大学

第七章类图、对象图和包图类图对象图包图UML系统分析与设计第2版ZhenyanJi2类图类图是面向对象系统建模最常用的图,类图描述了类、接口、协作以及它们之间的关系。类图用来为系统的静态设计视建模。类图的组成部分包括:类。接口。协作。依赖、类属、实现或关联关系。UML系统分析与设计第2版ZhenyanJi3类图UML系统分析与设计第2版ZhenyanJi4类图按照SteveCook和JohnDianiels的观点,类图分为3个层次,即概念层、说明层、实现层。1.概念层概念层(Conceptual)类图描述了问题域中的概念。类可以从问题域的概念中得出,但两者并没有直接的映射关系。2.说明层说明层(Specification)类图描述了软件的接口部分,而没有描述软件的实现部分。UML系统分析与设计第2版ZhenyanJi5类图3.实现层只有在实现层(Implementation)才真正有类的概念,并且揭示了软件的实现部分。实现层的类图可能是大多数人最常用的类图,但很多时候,说明层的类图更利于开发者之间的相互交流和理解。UML系统分析与设计第2版ZhenyanJi6类图类图描述了系统的静态设计视,该视主要体现系统的功能需求,即系统应该提供给用户的服务。在为系统的静态设计视建模时,类图可以用来完成如下内容:1.为系统的词汇表建模模拟系统的词汇表涉及确定哪些抽象是系统的一部分,哪些抽象不在系统的边界内。可以用类图定义这些抽象和它们的责任(Responsibility)。UML系统分析与设计第2版ZhenyanJi7类图2.为简单的协作建模为协作建模时,应完成的内容如下。确定要被模拟的部分系统功能和行为,这些功能和行为是由类、接口等元素交互作用产生的。确定参与这个协作的类、接口和其他的协作,并确定这些元素间的关系。根据协作的脚本,找出遗漏的模型部分和简单的语义错误。确定对象的属性和操作。UML系统分析与设计第2版ZhenyanJi8类图模拟协作UML系统分析与设计第2版ZhenyanJi9类图3.为逻辑的数据库模式建模为数据库模式建模时,应完成如下内容。确定模型中的一些类,并根据这些类的状态的存在超过了程序的生命周期来确定。创建一个类图,在这个类图中含有上述类,并将这些类标记为持久类。扩充这些类的结构信息,如属性、类的阶元等。如果必要,创建中间抽象以简化数据库的逻辑结构。考虑类的行为,扩充用于数据访问和维护数据完整性的操作。如果可能,用工具将逻辑设计转变为物理设计。UML系统分析与设计第2版ZhenyanJi10类图数据库的逻辑结构UML系统分析与设计第2版ZhenyanJi11对象图对象图(ObjectDiagrams)描述了某一瞬间对象集及对象间的关系。为处在时域空间某一点的系统建模,描绘了系统的对象、对象的状态及对象间的关系。对象图主要用来为对象结构建模。对象图中通常含有:对象。连接。UML系统分析与设计第2版ZhenyanJi12对象图对象图通常用于为对象结构建模,它可视化地描述了系统中特定实例的存在以及实例间的关系。为对象结构建模时,完成如下内容。确定想要建模的系统部分的功能或行为。识别参加协作的类、接口以及其他元素,并确定元素间的关系。考虑贯穿这个协作的一个脚本,并画出在脚本的某一时间点参与这个协作的对象。如果必要,给出每个对象的状态和属性值,并给出对象间的连接,这些连接是关联关系的实例。UML系统分析与设计第2版ZhenyanJi13对象图UML系统分析与设计第2版ZhenyanJi14包图包图(PackageDiagram)描述了包及包间的关系。包用来对建模元素进行分组,简化UML图从而使得UML图更易于理解。尽管包图可对任何类型的UML分类器进行分组,但一般更多用于对类或用例进行分类。分类结果如下:(见下页)UML系统分析与设计第2版ZhenyanJi15包图类包图在用包对类进行分组时,有3个经验法则可以遵循。将具有继承关系的类分到一个包里。将具有组合关系的类分到一个包里。将协作较多的类分到一个包里。类之间的协作多可以从顺序图或通信图中看出。UML系统分析与设计第2版ZhenyanJi16包图UML系统分析与设计第2版ZhenyanJi17类包图包图用例包图在用包对用例进行分组时,可以遵循1个经验法则,即将有包含关系(衍型<<include>>)或扩充关系(衍型<<extend>>)的用例放在一个包里。在考虑是否应该用包对图中的建模元素进行分组时,可以遵循的经验法则是:一个图应该有5到9个建模单元(如类或用例)。因为,当图中的建模单元超过9个时,图就会变得难以理解。包应该是内聚的,即包中的元素应该是相关的。UML系统分析与设计第2版ZhenyanJi18小结本章介绍了类图、对象图和包图的语义和功能,还介绍了类图的3个层次,即概念层、说明层、实现层。另外,本章举例说明了如何用类图为系统的词汇表、简单的协作、逻辑的数据库模式建模;如何用对象图为对象结构建模;如何用包图对建模单元分组。UML系统分析与设计第2版ZhenyanJi19UML系统分析与设计SystemAnalysis&Design

第八章交互作用图顺序图通信图语义等价交互作用图的应用UML系统分析与设计第2版ZhenyanJi21交互作用图交互作用图描述了对象间的交互作用,由对象、对象间的关系组成,并包含在对象间传递的消息。顺序图顺序图强调消息的时间顺序。通信图通信图强调发送和接收消息的对象的组织结构。交互作用图的主要组成元素如下:对象。连接。消息。注释和约束。UML系统分析与设计第2版ZhenyanJi22顺序图顺序图(SequenceDiagram)存在两个轴,水平轴表示不同的对象;垂直轴表示时间。顺序图中的对象用一个带有垂直虚线的矩形框表示,并标有对象名和类名。垂直虚线是对象的生命线,用于表示在某段时间内对象是存在的。对象间的通信通过在对象的生命线间画消息来表示。与通信图相区别,顺序图具有两个特点:有对象生命线有控制中心UML系统分析与设计第2版ZhenyanJi23顺序图顺序图UML系统分析与设计第2版ZhenyanJi24顺序图常用的控制有下述类型:可选执行(OptionalExecution)标记为“opt”。当护卫条件(BooleanExpression)为真时,可选执行部分才被执行。护卫条件是一个布尔表达式(BooleanExpression),一般将它放在可选执行部分中的任何一个生命线顶部的方括号中,以表示引用对象的属性。条件执行(ConditionalExecution)标记为“alt”。条件执行部分由水平虚线分割为多个子区域,每个子区域都有一个护卫条件,代表一个条件分支。UML系统分析与设计第2版ZhenyanJi25顺序图并行执行(ParallelExecution)标记为“par”。并行执行部分也由水平虚线分割为多个子区域,每个子区域代表一个并行分支。并行执行部分的所有并行分支是并发执行的,这些并行分支之间没有交互作用,即这些并行分支是互相独立的。循环执行(Loop/IterativeExecution)标记为“loop”。在每次循环之前,若护卫条件为真,循环执行部分就被重复执行;若为假时,循环执行部分被跳过,不再执行。UML系统分析与设计第2版ZhenyanJi26顺序图顺序图的结构控制UML系统分析与设计第2版ZhenyanJi27通信图通信图(CommunicationDiagram)强调了参与交互作用的对象的组织。通信图描述了两个方面:第一个方面是对交互作用的对象的静态结构的描述,包括相关的对象的关系、属性和操作第二个方面是为完成工作在对象间交换的消息的时间顺序的描述。与顺序图区分,通信图有两个特点:有路径有序列号UML系统分析与设计第2版ZhenyanJi28通信图通信图UML系统分析与设计第2版ZhenyanJi29语义等价顺序图和通信图在语义上是等价的,因此顺序图和通信图可以彼此转换而不会丢失信息,但这并不意味着两种图都显式地可视化了同样的信息。例如,通信图描述了对象怎样互相连接,但相应的顺序图则没有显式地描述这个信息;而顺序图可以显式地描述对象生命周期的结束,但相应的通信图则没有描述这个信息。UML系统分析与设计第2版ZhenyanJi30交互作用图的应用在用交互作用图为系统的动态方面建模时,上下文可以是整个系统、子系统、操作等,还可以是用例的一个脚本。使用交互作用图为系统的动态方面建模时,通常有以下两种方式。(1)按时间顺序为控制流建模。(2)按组织结构为控制流建模。UML系统分析与设计第2版ZhenyanJi31交互作用图的应用在按时间顺序为控制流建模时,需完成以下内容。确定交互作用的上下文。上下文可以是系统、子系统、操作、类、用例或协作的一个脚本。确定哪些对象参与了交互作用,并将这些对象从左到右放在顺序图中,其中重要的对象放在图左边。确定每个对象的生命线。对于那些在交互作用过程中被创建或被破坏的对象,要用合适的消息衍型显式地标出对象的产生或破坏。从发起交互作用的消息开始,将消息按发生的时间顺序从上到下逐一地标出。如果需要规定时间或空间约束,可以为消息附加适当的时间或空间约束。如果想更正式地描述一个控制流,可以为流中的每个消息添加前置条件和后置条件。UML系统分析与设计第2版ZhenyanJi32交互作用图的应用在按组织结构为控制流建模时,需完成如下内容。确定交互作用的上下文。上下文可以是系统、子系统、操作、类、用例或协作的一个脚本。确定哪些对象参与了交互作用,并将这些对象放在通信图中,其中重要的对象放在图的中间。确定每个对象的初始特性。确定对象间的连接。从发起交互作用的消息开始,将消息放在正确的连接上,并确定消息的正确序列号。如果需要规定时间或空间约束,可以为消息附加适当的时间或空间约束。如果想更正式地

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论