Specification of an Architecture Meta-Model - SPES 2020
Specification of an Architecture Meta-Model - SPES 2020
Specification of an Architecture Meta-Model - SPES 2020
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>Specification</strong> <strong>of</strong> <strong>an</strong> <strong>Architecture</strong> <strong>Meta</strong>-<strong>Model</strong><br />
RichComponent +component<br />
Port<br />
1 +port<br />
0..*<br />
+ isConjugated: Boole<strong>an</strong><br />
Figure 2.19: Ports.<br />
Generalizations: NavigableFeature, MultiplicityElement<br />
Attributes<br />
«isOfType»<br />
+type<br />
1<br />
Port<strong>Specification</strong><br />
• isConjugated : Boole<strong>an</strong> [1] If true, the flow/service directions defined in the<br />
corresponding port specification are all treated as if reversed. By default, the<br />
value is false. This facility allows to specify peer ports (i. e. with the same<br />
flows/services but complementary directions.) For flows, the complementary<br />
directions are: in for out, out for in, <strong>an</strong>d bidirectional for bidirectional. For services,<br />
the complementary directions are: required for provided, <strong>an</strong>d vice versa.<br />
Associations<br />
• type : Port<strong>Specification</strong> [1] The port specification that types the port.<br />
• component : RichComponent [1] The rich component that owns the port.<br />
2.1.15 Components <strong>an</strong>d Attributes<br />
In this section the concept <strong>of</strong> variables as depicted in Figure 2.20 is described.<br />
+component +attribute<br />
+type<br />
RichComponent Variable<br />
DataType<br />
2.1.15.1 Variable<br />
0..1<br />
0..*<br />
Figure 2.20: Variables.<br />
«isOfType»<br />
A variable associates a name with a data type. It represents a perm<strong>an</strong>ent storage unit<br />
for a value <strong>of</strong> the data type. The name is inherited from meta-class NamedElement via<br />
NavigableFeature.<br />
Variables are used to define attributes for rich components, local variables for composite<br />
actions <strong>an</strong>d local variables for machine blocks.<br />
34/135<br />
1