ArchiMate language does not distinguish between types and instances.
Because among the enterprise architecture models there are both type and instance models (sometime it even makes sense to put both types and instances on the same model), some technique must be used to distinguish between types and instances.
Recently I stumbled upon a strange „feature“ of ArchiMate language that brings some ambiguity into the models.
In the ArchiMate specification (see Open Group ArchiMate 3.1) chapter 3.6 is written „The ArchiMate language intentionally does not support a difference between types andinstances.“.
This design decisions brings ambiguity into the meaning of the diagrams. For example, what is described inthe following diagram:
Does this mean that:
- „There exist a set of data objects of type A, each consisting of 'one-or-more' data objects of type B, and 'one-or-more' data objects of type C“, or
- „There exists a data object A, which consists of data object B and data object C“, or even some mix like
- „There exists a data object A, which consists of 'one-or-more' data objects of type B, and a data object C“?
There are situations, where it would be possible to deduce, whether diagram is describing the types or instances (because for example certain reflexive relationships, like „composition“, would not make sense for the instances), like:
But in some cases it wouldbe impossible to know without some indication of what kinds of elements are in the model or on the diagram, like:
Therefore indicate the usageof types or instances explicitly, using for example through ArchiMate specializations (similar to UML sterotypes) and the naming convention similar to UML, either for the types:
or for the instances:
Although in ArchiMate specification it is stated that „At theEnterprise Architecture abstraction level, it is more common to modeltypes and/or exemplars rather than instances.“, there are still many cases where the model of the actual enterprise architecture consists of instances (like capability maps, process maps, or application landscapes, which all represent certainenterprise portfolios), and therefore it makes sense to clearly indicate on the diagrams, where are the types (for example when describing conceptual models or solution patterns) and where are the instances, especially if both are mixed on the diagram.