Ph.D. - geht es zur Homepage der Informatik des Fachbereiches 3 ...
Ph.D. - geht es zur Homepage der Informatik des Fachbereiches 3 ...
Ph.D. - geht es zur Homepage der Informatik des Fachbereiches 3 ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Chapter 7. openETCS Meta Model<br />
7.5.8. Static Semantics directly used in the Modelling Proc<strong>es</strong>s<br />
According to the tool chain introduced in Section 4.6, constraints are defined outside the<br />
MetaEdit+ application and checked by an external generator. Therefore, the generated report<br />
is pure textual and it has to be (manually) searched in MetaEdit+ for incorrect model elements.<br />
This drawback cannot easily be avoided because the used GOPPRR XML format used as<br />
interface is general and accordingly independent from the concrete meta model. However, it is<br />
possible to check simple constraints directly during the manual modelling proc<strong>es</strong>s.<br />
The b<strong>es</strong>t way to do this is to use generators that do not produce any direct output to fil<strong>es</strong><br />
but graphical feedback. In MetaEdit+ [56], this is done by MERL scripts that directly output<br />
information to the graphical repr<strong>es</strong>entation of a GOPPRR element that is not a graph, a port,<br />
or a property 12 . Those scripts are always executed in the scope of the current graph, which<br />
the repr<strong>es</strong>entation is displayed in. This is the obvious limitation for this method because, as<br />
discussed in Chapter 4, constraints related to the project scope are in this way very difficult<br />
to implement. Constraints that are related to graphs cannot be implemented because MERL<br />
generators for graphs cannot be output on the graph repr<strong>es</strong>entation itself. Properti<strong>es</strong> do not<br />
have any direct graphical repr<strong>es</strong>entation at all, and ports are only graphical connection points.<br />
Thus, only a subset of the above introduced constraints are implemented directly in the<br />
graphical elements of the openETCS meta model. However, even this subset providing direct<br />
graphical feedback in the case of model or rather static semantics violations can help an ETCS<br />
expert during the specification proc<strong>es</strong>s.<br />
7.6. Dynamic Semantics for the Cyclic Execution<br />
The pr<strong>es</strong>ented openETCS meta model or formal specification language can mainly divided in<br />
three major parts:<br />
1. a superior state machine for ETCS Mod<strong>es</strong><br />
2. data and control flows for behavioural and functional specification<br />
3. specification of data structur<strong>es</strong> for communication<br />
The dynamic semantics of the superior state machine defined in a gEVCStateMachine graph is<br />
d<strong>es</strong>cribed in general as for state machin<strong>es</strong> [80]. As already discussed, no temporal behaviour<br />
can be <strong>der</strong>ived directly from a gEVCStateMachine graph because oModeGuard objects are<br />
used as conditions for transitions. Since the oModeGuard objects are used in the data flows,<br />
only the specification language part for data and control flow defin<strong>es</strong> temporal behaviour of<br />
the whole model. Although data flows can be modelled in general, it is obvious that when<br />
the model is transformed to an executable binary 13 the data flow has to be implemented in<br />
discrete manner. From control theory, it is known that for the <strong>es</strong>tablishment of stable, discrete<br />
systems those must have a fixed sample time T s [30]. This means that the data flows or rather<br />
their calculations k are executed at certain time points t, which all have the same temporal<br />
distance:<br />
t = kT s ; k = 0, 1, 2, . . . (7.1)<br />
12 objects, rol<strong>es</strong>, and relationships<br />
13 for a certain computer platform<br />
108