UML建模在软件开发模型包括哪些中的作用及UML模型图多少种?

在我们开始研究 UML 理论之前,我们将简要介绍一下 UML 的一些主要概念。下面快速浏览一下这 13 个图表中的每一个,如下面的 UML 2 图表结构所示:结构图显示了系统的静态结构及其在不同抽象和实现级别上的部分,以及它们之间的关系。结构图中的元素代表系统的有意义的概念,可能包括抽象概念、现实世界和实现概念,结构图有以下七种类型:什么是类图 (Class Diagram)?类图是一种中心建模技术,几乎贯穿所有面向对象的方法。该图描述了系统中对象的类型以及它们之间存在的各种静态关系。关系重要的关系主要有以下三种:关联- 表示类型实例之间的关系(一个人为一家公司工作,一家公司有多个办事处。继承- 用于 OO 的 ER 图最明显的补充。它与 OO 设计中的继承有直接的对应关系。聚合- 聚合,一种面向对象设计中的对象组合形式。类图示例有关类图的更多详细信息,请阅读文章什么是类图?什么是组件图 (Component Diagram)?在统一建模语言中,组件图描述了组件如何连接在一起以形成更大的组件或软件系统。它说明了软件组件的体系结构以及它们之间的依赖关系。这些软件组件包括运行时组件、可执行组件以及源代码组件。组件图示例有关组件图的更多详细信息,请阅读文章什么是组件图?什么是部署图 (Deployment Diagram)?部署图有助于对面向对象软件系统的物理方面进行建模。它是一个结构图,将系统的体系结构显示为软件工件到部署目标的部署(分布)。人工制品代表了物理世界中的具体元素,它们是开发过程的结果。它在静态视图中对运行时配置进行建模,并可视化应用程序中工件的分布。在大多数情况下,它涉及对硬件配置以及存在的软件组件进行建模。部署图示例有关部署图的更多详细信息,请阅读文章什么是部署图?什么是对象图 (object Diagram)?对象图是实例的图,包括对象和数据值。静态对象图是类图的一个实例;它显示了系统在某个时间点的详细状态的快照。不同之处在于类图表示由类及其关系组成的抽象模型。但是,对象图表示特定时刻的实例,这在本质上是具体的。对象图的使用相当有限,即显示数据结构的示例。类图与对象图 - 一个例子有些人可能会发现很难理解 UML 类图和 UML 对象图之间的区别,因为它们都由命名的“矩形块”组成,其中包含属性,并且之间具有链接,这使得两个 UML 图看起来相似. 有些人甚至可能认为它们是相同的,因为在 UML 工具中,它们使用的类图和对象图的符号都放在同一个图编辑器 - 类图中。但实际上,类图和对象图代表了代码库的两个不同方面。在本文中,我们将为您提供有关这两个 UML 图的一些想法,它们是什么,它们有什么区别以及何时使用它们。类图与对象图的关系 (Class Diagram vs Object Diagram)您在编程时创建“类”。例如,在网上银行系统中,您可以创建“用户”、“帐户”、“交易”等类。在课堂管理系统中,您可以创建“教师”、“学生”、“作业”等类. 在每个类中,都有代表该类特征和行为的属性和操作。类图是一个 UML 图,您可以在其中可视化这些类,以及它们的属性、操作和相互关系。UML 对象图显示系统中的对象实例在特定状态下如何相互交互。它还表示处于该状态的那些对象的数据值。换句话说,UML 对象图可以看作是在特定状态下如何使用类(在 UML 类图中绘制)的表示。如果您不喜欢这些定义,请查看以下 UML 图示例。我相信你会在几秒钟内了解它们的差异。类图示例下面的类图示例表示两个类 - 用户和附件。用户可以上传多个附件,因此这两个类通过关联连接,在附件端使用 0..* 作为多重性。对象图示例下面的对象图示例向您展示了用户和附件类的对象实例在彼得(即用户)尝试上传两个附件时的“样子”。所以要上传的两个附件对象有两个Instance Specification。有关对象图的更多详细信息,请阅读文章什么是对象图?什么是封装图 (Package Diagram)?包图是UML结构图,显示包和包之间的依赖关系。模型图允许显示系统的不同视图,例如,作为多层(也称为多层)应用程序 - 多层应用程序模型。封装图示例有关包图的更多详细信息,请阅读文章什么是包图?什么是复合结构图 (Composite Structure Diagram)?复合结构图是添加到 UML 2.0 的新工件之一。复合结构图类似于类图,是一种组件图,主要用于从微观角度对系统进行建模,但它描绘的是单个部分而不是整个类。它是一种静态结构图,显示了类的内部结构以及这种结构使协作成为可能。该图可以包括内部部件、部件相互交互或类实例通过其与部件和外部世界交互的端口,以及部件或端口之间的连接器。复合结构是一组互连的元素,它们在运行时协作以实现某些目的。每个元素在协作中都有一些定义的角色。复合结构图示例有关复合结构图的更多详细信息,请阅读文章什么是复合结构图?什么是剖面图 (Profile Diagram)?概要图使您能够创建特定于域和平台的构造型并定义它们之间的关系。您可以通过绘制原型形状来创建原型,并通过以资源为中心的界面将它们与组合或概括联系起来。您还可以定义和可视化构造型的标记值。剖面图示例有关 Profile Diagram 的更多详细信息,请阅读文章什么是 UML 中的 Profile Diagram?什么是用例图 (Use Case Diagram)?用例模型根据用例描述系统的功能需求。它是系统预期功能(用例)及其环境(参与者)的模型。用例使您能够将您对系统的需求与系统如何满足这些需求联系起来。将用例模型想象成一个菜单,就像您在餐厅中找到的菜单一样。通过查看菜单,您可以了解可供您选择的菜品、个别菜肴及其价格。您还知道餐厅供应哪种美食:意大利菜、墨西哥菜、中国菜等等。通过查看菜单,您可以对该餐厅的用餐体验有一个整体印象。实际上,菜单“模仿”了餐厅的行为。因为它是一种非常强大的计划工具,所以用例模型通常被所有团队成员用于开发周期的所有阶段。用例图示例有关用例图的更多详细信息,请阅读文章什么是用例图?什么是活动图 (Activity Diagram)?活动图是逐步活动和操作的工作流的图形表示,支持选择、迭代和并发。它描述了目标系统的控制流程,例如探索复杂的业务规则和操作,描述用例以及业务流程。在统一建模语言中,活动图旨在为计算和组织过程(即工作流)建模。活动图示例有关活动图的更多详细信息,请阅读文章什么是活动图?什么是状态机图 (State Diagram)?状态图是 UML 中用于描述系统行为的一种图,它基于 David Harel 的状态图概念。状态图描述了允许的状态和转换以及影响这些转换的事件。它有助于可视化对象的整个生命周期,从而有助于更好地理解基于状态的系统。状态机图示例有关状态机图的更多详细信息,请阅读文章什么是状态机图?什么是序列图 (Sequence Diagram)?序列图基于时间序列对对象的协作进行建模。它显示了对象在用例的特定场景中如何与其他对象交互。借助先进的可视化建模能力,您只需点击几下即可创建复杂的序列图。此外,Visual Paradigm 等一些建模工具可以根据您在用例描述中定义的事件流生成序列图。序列图示例有关序列图的更多详细信息,请阅读文章什么是序列图?什么是通信图 (Communication Diagram)?与序列图类似,通信图也用于对用例的动态行为进行建模。与序列图相比,通信图更侧重于显示对象的协作而不是时间序列。它们实际上在语义上是等价的,因此某些建模工具(例如 Visual Paradigm)允许您从一个到另一个生成它。通信图示例有关通信图的更多详细信息,请阅读文章什么是通信图?什么是交互概览图 (Interactive Overview Diagram)?交互概览图侧重于交互控制流的概览。它是活动图的变体,其中节点是交互或交互发生。交互概览图描述了隐藏消息和生命线的交互。您可以链接“真实”图表并在交互概览图中实现图表之间的高度可导航性。交互概览图示例有关交互概览图的更多详细信息,请阅读文章什么是交互概览图?什么是时序图 (Timing Diagram)?时序图显示了对象在给定时间段内的行为。时序图是序列图的一种特殊形式。时序图和时序图的区别在于轴是颠倒的,时间从左到右增加,生命线显示在垂直排列的单独隔间中。时序图示例有关时序图的更多详细信息,请阅读文章什么是时序图?}

我要回帖

更多关于 软件开发模型包括哪些 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信