在 UML 中表示大量函数的好方法

A good aproach to represent A LOT of functions on UML

我正在从事一个需要强大架构的项目;我目前正在使用 MDA(模型驱动架构),但我在特定于平台的模型 (M1) 中遇到了问题。

我有一个 class,它可能包含 +30 个函数,我只是不想将所有这些函数都放在 UML 中,除非它是 100% 强制性的。所以我有几个疑问:

我知道这听起来有点傻,但我是在问对 UML 有很好理解的人。谢谢!

你的问题有两个层次:UML方面和MDA方面。

在 UML 中,您有一个模型,许多图表可以显示模型的某些选择性的、部分的方面。例如,经常有:

  • 一些高级 class 图表,仅显示主要 classes 及其关联。目标是提供一个概览,而不会被不必要的细节所淹没。
  • 一些更精确的设计图,突出了一些 classes 的关键属性和操作。目标是了解 classes 的角色和职责,然后再按顺序或其他行为图表详细说明他们的动态行为。
  • 不禁止也有详细的 class 图,以完整记录抽象设计或明确实现的细节,包括用于实现关联的字段。但并不是每个建模者都维护这些,因为在传统的开发环境中,这种详细的实现模型很快就会过时,因此会产生误导。

所以不,您没有义务在 UML 中显示所有 30 个函数(这会使您的图表不可读)。

在 MDA 中,如果您想自动完成从平台独立模型 (PIM) 到平台特定模型 (PSM) 的转换,然后再转换成可执行的东西(代码?),您需要有一个非常完整的与正向工程一起工作的模型。否则,您将被迫手动检查生成的代码以增强它。在这种情况下,您需要某处描述的 30 个函数。但不一定在 UML 图中(或至少不是在所有 UML 中)。或者至少不是从头开始,如果您的工具集允许逆向工程代码并基于代码制作模型以完成您在 UML 中拥有的信息。