Sequence Diagrams in ArchiMate
This discussion is a fork of #15 (closed).
In a comment I shared this diagram
which raised the following comments from Kalin Maldzhanski:
I would not use Triggering and Flow relationships to mimic Request Reply messages as in Sequence Diagrams. The semantics are quite different and it would pollute the model. If we need sequence diagrams lets just use sequence diagrams :)
The discussion started and is copied below:
JB
only one thing here I would not use Triggering and Flow relationships to mimic Request Reply messages as in Sequence Diagrams. The semantics are quite different and it would pollute the model.
Why do you say semantics is different? It is appropriate.
If we need sequence diagrams lets just use sequence diagrams :)
Sequence diagram is only a codified visual way to represent calling a behavior and getting back a response and not attached to the underlying standard (UML or ArchiMate). It is thus perfectly valid to create a sequence diagram in ArchiMate if the modelling tool allow this "codified visual way". With some tricks, it can even be done in tools like Archi:
Kalin
Apologies for not to structured response :)
Sequence diagram is only a codified visual way to represent calling a behavior and getting back a response and not attached to the underlying standard (UML or ArchiMate)
This really depends on the tool and the way it is used. UML specification has section on interactions and Sequence diagrams is part of it defining quite formal and rich meta-model to define messages and interactions. It has much richer expressiveness than what we can achieve with ArchiMate. This can also be mapped to ArchiMate not only embed a picture.
It is thus perfectly valid to create a sequence diagram in ArchiMate if the modelling tool allow this "codified visual way"
ArchiMate does not define the concept of a sequence diagram at all. It defines:
- Flow as in flow of data and goods etc.
- Triggering as in process flow triggering, which does not mean invocation
When I look at your diagram i see User is triggering Front and Front is triggering Back 2 times, why two times ? i see it visually but when I analyse the model there is no difference how is this helping and how is it different from just a 'visual representation' the same for the data flow, right.
Triggering does NOT necessarily mean invocation, even if lots of people confuse it with that. where you have triggering there could also be a data flow as the requests contains data. In fact some times request data is more important than the response data which could be only ACK/NAK triggering the opposite direction might also be the case.
Also semantics of triggering does not fit in the message concept used in the sequence diagram as simply it is not a message as well as the derivation rules triggering is transitive while flow isn't.
If you want to represent sequence diagram in ArchiMate then specialisations of a flow relationship might be used, but again there will the problem of complexity and lack of expressiveness in ArchiMate.
We could discuss more on that in separate issue I suppose not to pollute this one and I can also elaborate how I see using both next to each other :)