使用 UML 图显示涉及不同编程语言的项目

Using a UML diagram to show a project that involves different programming languages

我目前正在为涉及使用 MySQL(用于数据存储)和 Java(用于数据 "presentation")的项目设计 UML 图,我的问题是,在涉及多种语言的项目中使用单个UML图是否正确?而且,我是否需要向每种语言明确显示 "belongs" 的哪一部分? 尽管我知道 UML 是一种通用表示法,但我还是有这个问题,因为我计划在服务器中进行所有数据处理,为此我在包 "datos"(数据)中有一个 class 但是对于数据库 我一直使用 ER 模型,而且 class "Reportero" 有一堆方法 "symbolic" 因为它们的功能将通过查询实现。

Class in the UML diagram I'm referring to

提前致谢!

一般来说,您需要将系统分解成子系统或组件,您可以使用不同的语言来实现它们。纯 UML 方式是使用部署图,对硬件或运行时环境(如应用程序服务器)的部署进行建模。一种不太 UMLish 的方法是在您定义的组件上使用自定义构造型。

更具体地说,您要求 MySQL。在 UML 模型中,您可以对系统的静态部分、它们的属性和基于它们的交互进行建模。但是您通常不对数据库建模。所以你可以使用 UML 做的是面向对象的分析,它给你 classes 可以代表你的数据库中的实体。但是当你说你有 class,哪些操作是通过查询实现的,你仍然有一些用你的语言实现的东西来触发查询的执行;在那种情况下,我会定义一个用于 classes 的构造型,或者用于指示包含的操作或操作没有自己的逻辑而只是调用查询的操作。

此外,您应该熟悉术语模型和图表:-)

UML 与图表无关。它是关于模型的——并通过图表将它们传达给人类。

你在更复杂的系统中所做的是将它们拆分成子域并以有意义的方式打包它们。您将以同样的方式创建显示静态和动态系统方面的单独图表。在您的具体情况下,您可以将数据库设计与运行时设计分开。但是,也可以在概览图中混合使用两者。