09.08.2013 Views

Specification of an Architecture Meta-Model - SPES 2020

Specification of an Architecture Meta-Model - SPES 2020

Specification of an Architecture Meta-Model - SPES 2020

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Specification</strong> <strong>of</strong> <strong>an</strong> <strong>Architecture</strong> <strong>Meta</strong>-<strong>Model</strong><br />

event indicates <strong>an</strong> interaction point where only at certain time inst<strong>an</strong>ts there is a value<br />

available <strong>an</strong>d the values may ch<strong>an</strong>ge from inst<strong>an</strong>t to inst<strong>an</strong>t.<br />

2.1.17.6 ActivationFlow<br />

An activation flow is the communication point through which the rich component that<br />

owns the port that owns it, communicates to the environment the possibility to execute,<br />

i. e. there is a valid outgoing tr<strong>an</strong>sition from the current active state. Thus the direction<br />

<strong>of</strong> <strong>an</strong> activation flow is always out, the kind is discrete <strong>an</strong>d the type is Boole<strong>an</strong>.<br />

ActivationFlow inherits form Flow.<br />

Generalizations: Flow<br />

Constraints Activation flows are subject to the following constraints:<br />

1. An activation flow must be <strong>of</strong> kind discrete:<br />

context ActivationFlow inv isDiscrete:<br />

self .kind = FlowKind:: discrete<br />

2. An activation flow must be <strong>of</strong> direction out:<br />

context ActivationFlow inv isOut:<br />

self .direction = FlowDirection::out<br />

3. An activation flow must be <strong>of</strong> type Boole<strong>an</strong>:<br />

context ActivationFlow inv isBoole<strong>an</strong>:<br />

self .type.isBoole<strong>an</strong>()<br />

2.1.17.7 EnablingFlow<br />

An enabling flow is a flow constituting the communication point through which the<br />

environment c<strong>an</strong> control the execution <strong>of</strong> a rich component. The rich component that<br />

owns <strong>an</strong> enabling flow disables its execution (is forced to take <strong>an</strong> empty self-loop<br />

tr<strong>an</strong>sition) if the value <strong>of</strong> this enabling flow is true. The enabling flow c<strong>an</strong> be set<br />

only by the environment, thus the direction is in. The kind is discrete <strong>an</strong>d the type is<br />

Boole<strong>an</strong>, since it is the counterparting coordination port <strong>of</strong> the activation flow.<br />

Generalizations: Flow<br />

44/135

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!