RE: A view on Participants and Roles

Tony -

 

I prefer your definition of the association between participant, role, and
message types to the specification's definition. The main difference in your
definition from the CDL specification is the association from Participant to
Role becomes aggregation rather than composition. This would all be much
clearer to picture with a metamodel for CDL.

 

Can I deduce from your statement "a participant without a role. .has no way
of participating in the choreography beings described." that you mean that a
Participant type has no identity other than as the aggregate of its Role
types? In other words, the Roles types are the sole definition and identity
of the Participant. This implies combinations of Roles types must be unique
if this is the identity of Participants. This also implies if I change the
Role types realized by the Participant type then this creates a new
Participant type. This statement I do not prefer.

 

If we extrapolated from your argument for why Participant types must have at
least one Role type ".thus has no way of participating." does this also
require every Role type be associated with at least one Participant type?
Would this also extend to every Channel type being used at least once, and
every Information type, and so on for all the base types? Your definition of
the cardinality of the associations would be much clearer with a metamodel
for CDL.

 

For a long running choreography that evolves (such as air traffic control
procedures or interaction on a 25 year swap contract), then it is important
that the difference when between amending a Participant type and creating a
new Participant type is understood by all implementers of the revised
choreography.

 

Presumably this also means I cannot distinguish between Participants that do
not participate and non-Participants that do not participate? For example
how can I identify the presence but non-participation of the deceased at
their own funeral?

 

Matthew Rawlings

+44 791 539 7824

 

Received on Thursday, 3 August 2006 20:33:14 UTC