5.3 COMPARISON OF POWERTYPE MODELLING AND POTENCY

It is interesting to briefly undertake a side-by-side comparison of the two approaches described in the previous sections: both arguably successful solutions to the challenge of deep characterization. In Figure 5.13, the powertype pattern on the left-hand side uses one more class than the potency approach shown on the right-hand side. It provides a class with an attribute b:B that is allocated a value of b = b1 in the lower layer, exactly like the potency approach (the potency of attribute b is shown as equal to 1). For attribute a:A, which does not require a value until the lowest (Endeavour) domain, the powertype approach has to introduce an additional class with an explicit generalization relationship followed by an instantiation down to the Endeavour domain. This gives a value a = a1. The exact same result is provided in the potency approach by a second attribute a:A but with an enhanced potency value of 2. This is decremented in the class in the Method domain and then again to reach a value of potency = 0 in the lowest of these three layers, thus indicating that a value attribution must be made (here a = a1).

Image

Figure 5.11: Adding a stereotype (virtual submetatype) to the UML metamodel (after [10])

Source: Henderson-Sellers and gonzalez-Perez, 2005, copyright JOT. Reproduced with permission of ETH, Zürich

The potency approach ...

Get Metamodelling for Software Engineering now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.