Delegated Creation Activity - modelint/shlaer-mellor-metamodel GitHub Wiki
Consider the following example from the Elevator Case Study where the R53 Assigner issues an Execute Event to the Transfer Class.
The Scrall statement indicates that a new instance of Transfer will be created, with all attributes initialized to appropriate values, when the signal is received and a transition from an Initial Pseudo State will be triggered by the Execute Event.
A delegated creation activity is a generated Activity that initializes the attributes of the new instance. Since the process of initializing referential and non-referential Attributes is systematic, and must be done correctly and consistently, we do not let the user define this kind of Activity directly.
Instead, we take the initialization flows and linking cues provided by the initiating Action along with the populated metamodel information about the target Class and its required Relationships to generate a hidden (internally managed) Delegated Creation Activity that you can think of as being roughly associated with the Initial Pseudo State.
By 'roughly' we mean that the Initial Psuedo State dosn't enclose an Activity like a Real State. But whenever a new instance of the target Class is created, this Delegated Creation Activity will execute to first create the instance. Upon completion the event triggered by the Initial Signal Action triggers the Transition matched to that Event emanating from the Initial Pseudo State.
Identifiers
- Anum + Domain
Attributes
No non-referential attributes.