0

我正在做一个需要强大架构的项目;我目前正在使用 MDA(模型驱动架构),并且在平台特定模型(M1)中遇到了麻烦。

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

  • 有没有办法只用一个来表示所有这些功能?像:detectionCriterion(Event:e),而不是detectionCriterionA、detectionCriterionB等。

  • 如果我不能短它们,真的必须将所有功能都放在 UML 上吗?

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

4

1 回答 1

1

您的问题有两个级别:UML 方面和 MDA 方面。

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

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

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

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

于 2020-05-12T23:18:13.270 回答