UML建模
静态建模:类图、对象图。
动态建模:状态图、顺序图、协作图、活动图。
顺序图(也称序列图)是一种交互图(Interaction Diagram,用于描述执行系统功能的各个角色之间相互传递消息的顺序关系,显示跨越多个对象的系统控制流程),强调的是时间和消息的次序,用来说明系统的动态情况,顺序图由参与者、对象、对象生命线和消息组成。一个顺序图显示了一系列的对象(通常是类的实例,也可以代表其他事物的实例,例如协作、组件和节点)和在这些对象之间发送和接收的消息。
状态图是UML中的状态机视图。状态机由对象的各个状态和连接这些状态的转换组成。每个状态对一个对象在其生命期中满足某种条件的一个时间段建模,当一个事件发生时,它会触发状态间的转换,导致对象从一种状态转化到另一新的状态。与转换相关的活动执行时,转换也同时发生。
状态图用于描述对象可以拥有的状态以及引起状态相互转移的事件和条件,它揭示了对象的生命周期,是针对类的一种建模工具。状态是对象前一次操作的结果,事件是引起状态向另一状态转化的活动。所有对象都有状态,但通常只对具有复杂行为的类建立状态图。状态图强调的是事件驱动的对象的动作,这在对反应式系统的建模是相当重要的。
两个类的状态图之间可以相互发送消息,一个状态还可以有嵌套的子状态,各子状态之间的关系可以为与/或关系。
活动图用于描述系统、用例、程序模块中的逻辑流程的先后执行次序、并行次序,是对人类组织的现实世界中的工作流程的建模,有助于理解系统高层活动的执行行为。
活动图中的主要概念是"活动",而"活动"的具体含义又取决于作图目的和抽象层次:
(1)当活动图用于描述系统行为时,主要侧重于系统多个用例活动之间相互制约的执行顺序,同时,识别出系统中存在的可以并行进行的用例,此时,活动表示系统要完成的任务;
(2)当活动图用于描述用例时,用于描述用例中的操作执行次序和操作完成的结果,显示多个对象的操作是如何相互结合起来共同完成用例的一个脚本,揭示出操作之间的并行性,为编码实现提供开发并行程序的便利,此时,活动表示类中的方法,即操作。允许将某个组织或执行者要完成的若干操作聚集在泳道中,以明确责任。
活动图用于低层次程序模块的作用类似于流程图,但活动图还可以描述并行操作,而流程图则只能描述串行操作。
协作图
与顺序图一样,协作图也是一种交互图,用于描述对象之间的协作关系,其模型元素与序列图的基本相同,但它侧重于描述对象之间是如何相互连接的,强调的是发送和接收消息的对象之间的组织结构。顺序图着重体现对象间消息传递的时间顺序,协作图着重于哪些对象间有消息传递,表达了对象之间的静态连接关系。顺序图和协作图是同构的,它们相互之间可以转化而不损失信息,依靠工具协作图和顺序图可互相转换。
UML图之间的关系
用例图主要用来描述系统的外部行为;类图和对象图用来定义类和对象以及它们的属性和操作;状态图描述类的对象所有可能的状态以及事件发生时状态的转移条件;顺序图显示对象之间的动态合作关系,它强调对象之间消息发送的顺序,同时显示对象之间的交互;合作图强调对象间的动态合作关系;活动图描述满足用例要求所要进行的活动以及活动间的约束关系,有利于识别并行活动。
分享到:
相关推荐
UML精粹一书中介绍了UML的基本元素、结构以及各种UML图,目的是为了帮助读者快速理解和掌握UML的核心知识,整理业务逻辑。 本书详细介绍了UML的几种重要图,包括用例图、类图、序列图、活动图等。用例图关注于系统...
《UML网络教学系统——深度解析与应用》 UML(Unified Modeling Language),即统一建模语言,是一种在软件工程领域广泛使用的可视化建模工具,它为系统分析、设计及项目管理提供了统一的标准语言。本篇文章将围绕...
在本文中,我们将深入探讨如何使用C# WinForm来创建一个UML类图程序,以及如何实现绘制、保存和打开UML类图的功能。UML(统一建模语言)是一种标准化的图形建模语言,用于软件工程和其他领域,用于描述系统的设计和...
统一建模语言(UML)是一种标准化的建模语言,用于软件工程领域中的可视化、详细描述、构造和文档化软件系统的各种方面的蓝图。UML 2.4.1是UML的版本之一,它包含了对UML的各种改进和错误修正。 首先,UML是被国际...
《UML用户指南(第2版).pdf》与《面向对象设计uml实践(第二版).pdf》这两本书籍是IT领域中关于统一建模语言(Unified Modeling Language,简称UML)的重要参考资料,对于理解并应用UML进行软件设计具有极高的价值。...
**UML期末大作业** 本项目是一份针对UML(统一建模语言)的期末大作业,涵盖了多种UML图表的使用,旨在帮助学生全面理解和应用UML在软件设计中的重要性。通过这份作业,你可以深入学习如何用UML来描述、可视化、...
Eclipse UML2插件是Eclipse集成开发环境(IDE)的一个强大工具,它使得软件开发者能够方便地创建、编辑和管理统一建模语言(UML)模型。这个插件扩展了Eclipse的功能,允许用户在开发过程中直接进行UML建模,从而...
**UML(统一建模语言)是软件工程领域中一种重要的建模工具,它通过图形化的方式描绘系统的行为和结构,使得复杂的设计和需求能够更直观地被理解和沟通。本讲义主要围绕UML的基础知识展开,特别是针对初学者,其中...
文档中虽然没有提供实际的UML图表,但提到了“UML期末大作业”,说明了作业内容中应包含了UML图表的设计,如类图、用例图等,以展示系统的结构和行为。UML图表是文档设计和描述系统功能的重要组成部分。 6. 系统...
个人觉得全网最全的UML元器件图,性价比也是最高的,只需要5分,几乎免费了。包含UML活动图(流程图)、泳道图、状态图、用例图、类图、时序图六类常用图表元件及示例图,可快速、便捷地在Axure中进行产品建模分析。...
**UML 2.2 Visio 模板详解** UML(统一建模语言)是一种在软件工程领域广泛使用的标准化建模语言,用于可视化、规格化系统设计的各个层面。UML 2.2是其最新的版本,包含了丰富的图形符号和构造,用于描述系统的结构...
《UML建模实例大全》是一本深入探讨UML(统一建模语言)在实际项目中的应用的书籍,尤其强调了其在设计模式中的实践。UML作为一种强大的可视化建模工具,是软件开发过程中的重要组成部分,它为系统分析、设计和沟通...
org.eclipse.uml2.uml:这是Eclipse UML插件的核心库,提供了UML类图的基本元素,如类、接口、关联、活动图等。它还包含了用于创建和编辑UML模型的编辑器。 org.eclipse.uml2.uml.diagram:这个库包含了用于创建和...
**UML用户手册和用户指南** UML(统一建模语言)是一种标准的建模语言,用于可视化软件系统的结构和行为。"UML用户手册中英文版含第二版 - UML用户指南英文版" 提供了对UML的全面理解和应用的资源。手册和指南覆盖...
《UML在线购物系统设计详解》 UML(统一建模语言)是软件工程领域中一种重要的建模工具,用于描述、可视化、构建和文档化软件系统。在本项目"uml网上购物系统"中,我们将深入探讨如何运用UML的各种图来设计一个完整...
"UML在线考试系统.docx" 本文是“基于UML的在线考试系统的需求分析”,对各种用例图、顺序图、活动图、状态图、类图等UML建模语言来绘制,可以为学生的课程大作业提高参考。以下是从该文件中生成的知识点: 一、...
### UML统一建模语言概览 UML(Unified Modeling Language),即统一建模语言,是软件工程领域的一项重大创新,标志着1995至1997年间软件工程领域前所未有的进步。这一时期的成果超过了过去十五年的总和,UML的诞生...
《UML快递管理系统详解》 在信息技术领域,UML(统一建模语言)是一种标准的图形化建模语言,用于软件开发过程中系统分析和设计的可视化表达。本资源包“完整版_UML_快递管理系统”提供了全面的UML文档,包括不同...
在软件开发过程中,UML(统一建模语言)是一种强大的工具,用于可视化、构建和文档化软件系统的结构和行为。UML图可以帮助开发者、设计师和项目团队清晰地理解系统的设计和实现,从而提高沟通效率和代码质量。"JAVA...
**UML(统一建模语言)是软件工程领域中一种重要的可视化建模工具,用于描述、构建和文档化软件系统的设计。本课件主要涵盖了UML的基础知识、核心概念以及在实际开发中的应用。** **一、UML的起源与目的** UML,...