UML 1 和 UML 2 之间的区别?我应该关注哪一个?
Difference between UML 1 and UML 2? Which one should I be focusing on?
我被赋予了一项特殊任务,即在工作中学习和讨论 UML。我对该主题有一些背景知识,但我不确定应该优先考虑哪个领域,因为 UML 现在有多个版本。我是否应该坚持使用 UML 第一个版本并给出 UML 2 的概述?还是我应该更多地关注 UML 2,因为它是最新版本?我很困惑,因为我不熟悉这两个版本的区别。
我需要有关此事的建议。先感谢您。如果这个问题与本网站无关,请原谅。
由于以下原因,实际上很难限制在 UML 1 中:很久以前,几乎所有可用的绘图工具都实现了 UML 2。因此,每次绘制某些结构时,您都必须手动检查它是否已经在 UML 1 中可用。
从 1 到 2 的步骤在很大程度上是由大约 10..15 年前名为 MDA(模型驱动架构)的软件工程炒作推动的。这是关于直接从模型生成软件。为了支持这一点,所有模型元素都通过一些形式语义进行了定义。此外,一些模型和图表类型得到了增强。序列图被丰富到控制结构来表达控制流。组件和部署图得到增强。
现在,除了建议回到 UML 1 没有多大意义外,我从你的问题中了解到你需要设置优先级。这是有道理的,因为 UML(1 以及)2 的定义非常冗长,您不想研究它的每个细节。所以这里有一些提示:
随着面向对象技术无处不在,class 建模 是核心概念。因此,您应该熟悉 classes、关联、聚合、组合、继承、属性、操作及其参数和结果、方法和属性的可见性、抽象 classes 和方法以及接口。
class 的对象通过应用它们的操作来改变它们的状态。因此,一种核心的、有时被低估的模型类型是 状态建模 。在这里,UML 提供了两种部分冗余的模型和图表类型:状态和 activity 模型。您应该至少熟悉其中一个——然后切换到另一个应该不会太困难。
大多数 UML 用户都非常喜欢用例建模。我不是,因为这些用例往往缺乏意义(如果你限制命名用例和参与者)或结构(如果你开始用你的用例记录系统数据和功能)。但是如果你了解他们,世界其他地方只会接受你作为 UML 专家,所以你将无法避免他们。在广泛使用它们之前,请考虑在通过用例描述系统时如何达到 DRY(不要重复自己)原则。
我被赋予了一项特殊任务,即在工作中学习和讨论 UML。我对该主题有一些背景知识,但我不确定应该优先考虑哪个领域,因为 UML 现在有多个版本。我是否应该坚持使用 UML 第一个版本并给出 UML 2 的概述?还是我应该更多地关注 UML 2,因为它是最新版本?我很困惑,因为我不熟悉这两个版本的区别。
我需要有关此事的建议。先感谢您。如果这个问题与本网站无关,请原谅。
由于以下原因,实际上很难限制在 UML 1 中:很久以前,几乎所有可用的绘图工具都实现了 UML 2。因此,每次绘制某些结构时,您都必须手动检查它是否已经在 UML 1 中可用。
从 1 到 2 的步骤在很大程度上是由大约 10..15 年前名为 MDA(模型驱动架构)的软件工程炒作推动的。这是关于直接从模型生成软件。为了支持这一点,所有模型元素都通过一些形式语义进行了定义。此外,一些模型和图表类型得到了增强。序列图被丰富到控制结构来表达控制流。组件和部署图得到增强。
现在,除了建议回到 UML 1 没有多大意义外,我从你的问题中了解到你需要设置优先级。这是有道理的,因为 UML(1 以及)2 的定义非常冗长,您不想研究它的每个细节。所以这里有一些提示:
随着面向对象技术无处不在,class 建模 是核心概念。因此,您应该熟悉 classes、关联、聚合、组合、继承、属性、操作及其参数和结果、方法和属性的可见性、抽象 classes 和方法以及接口。
class 的对象通过应用它们的操作来改变它们的状态。因此,一种核心的、有时被低估的模型类型是 状态建模 。在这里,UML 提供了两种部分冗余的模型和图表类型:状态和 activity 模型。您应该至少熟悉其中一个——然后切换到另一个应该不会太困难。
大多数 UML 用户都非常喜欢用例建模。我不是,因为这些用例往往缺乏意义(如果你限制命名用例和参与者)或结构(如果你开始用你的用例记录系统数据和功能)。但是如果你了解他们,世界其他地方只会接受你作为 UML 专家,所以你将无法避免他们。在广泛使用它们之前,请考虑在通过用例描述系统时如何达到 DRY(不要重复自己)原则。