OntoUML / ontouml-vp-plugin

A plugin for Visual Paradigm to add support for OntoUML modeling and model intelligence services
Apache License 2.0
40 stars 15 forks source link

Non-standard use of navigability arrow on OntoUML diagrams #148

Open SPowley opened 1 year ago

SPowley commented 1 year ago

A number of OntoUML models use the UML navigability arrow to imply additional semantics that are not compliant with the meaning defined in the UML 2.5.1 specification. For example, see Figure 3 in the D3FEND paper

According to the UML spec, navigability has a very limited meaning:

  11.5.3 Semantics
  11.5.3.1 Associations
 ... Navigability means that instances participating in links at runtime (instances of an Association) can be accessed efficiently from instances at the other ends of the Association. 

In practice, the navigability arrow is retained in the specification for backward compatibility with version 1.x of the specification and has largely been replaced by the ownership end dot notation. For a helpful treatment of this aspect, see Getting it Right on the Dot.

My understanding is that in the OntoUML models, the navigability is instead used to assert the reading direction of the relationship in machine readable form, which is not properly supported with the solid triangle used to indicate reading direction in Visual Paradigm (i.e. VP does not always correctly store source and target). In any case, the semantics of the solid triangle notation are only very weakly defined by the UML spec.

  11.5.5 Examples
  .... The solid triangle indicates the order of reading

Some diagrams (as in the D3FEND example linked above) even mix both notations, which leads to further confusion.

To avoid confusion, I would recommend that at least the following measures are taken:

Relying on repurposing of standard UML notation is a workaround at best, and does not provide a clean solution so I would propose to alternative options:

I would recommend the 'directed association' solution. This has the following advantages over the existing approach and alternatives:

pedropaulofb commented 1 year ago

@SPowley, thank you very much for your contribution. As the UFO/OntoUML Catalog only keeps models created on the Visual Paradigm editor + OntoUML Plugin, I am moving this issue to the ontouml-vp-plugin project to be there evaluated and treated.