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 ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
8.5. Deployment D<strong>es</strong>ign<br />
8.5. Deployment D<strong>es</strong>ign<br />
The deployment d<strong>es</strong>ign d<strong>es</strong>crib<strong>es</strong> how the source code and the compiled binary code is distributed<br />
on different platforms for their execution. For openETCS and its domain framework, this is<br />
of special inter<strong>es</strong>t regarding the separation of platform-specific adaptations from the directly<br />
generated code by hardware virtualisation, which was discussed in Chapter 6.<br />
For clarification, the openETCS architecture is divided in three categori<strong>es</strong>:<br />
Computational Independent Model (CIM) is the part of the DSL that do<strong>es</strong> not hold any<br />
certain information about computation structure and proc<strong>es</strong>sing of the system [44, p. 2-5].<br />
This corr<strong>es</strong>ponds to the openETCS model.<br />
Platform independent model (PIM) provid<strong>es</strong> information about computational and proc<strong>es</strong>sing<br />
structure of the system without any information depending on a certain target<br />
platform [44, p. 2-6]. This corr<strong>es</strong>ponds to the openETCS domain framework (see Req.7)<br />
and the code generated from the openETCS model / CIM.<br />
Platform specific model (PSM) extends the PIM or is a transformation of it to be applicable<br />
on a certain platform [44, p. 2-6]. In the openETCS architecture, this corr<strong>es</strong>ponds to<br />
possible adaptations for concrete hardware devic<strong>es</strong>, like sensors and actuators (Section 7.2).<br />
While CIM and PIM are already defined for the openETCS case study, the PSM is defined<br />
in the deployment. Due to the fact that this work primary focuss<strong>es</strong> on the CIM and PIM,<br />
platform-specific adaptations are only used for t<strong>es</strong>ting and simulation purpos<strong>es</strong>. Neverthel<strong>es</strong>s,<br />
the deployment d<strong>es</strong>ign should provide a general approach for extending the PIM about PSM<br />
elements of any kind. Figure 8.14 introduc<strong>es</strong> the deployment of the openETCS domain<br />
framework with the separation of PIM and PSM as UML deployment diagram [64]. Both are<br />
located on the target platform, the EVC, but are executed in separated execution environments.<br />
Both execution environments can communicate (over a network link) with the EVC but not<br />
directly with each other. Communication between them is only possible via the EVC, on which<br />
this communication could be limited by a firewall or other mechanisms.<br />
All source artefacts located in the PIM execution environment manif<strong>es</strong>t together the libopen-<br />
ETCSPIM component, which is a library. This library repr<strong>es</strong>ents the platform independent<br />
implementation (parts) of the openETCS domain framework. On the other hand, the libopen-<br />
ETCSPSM is the manif<strong>es</strong>tation of the platform specific implementation base within the PSM<br />
execution environment. Each source artefact is shortly explained in the following:<br />
EVCStateMachine<br />
ControlFlow<br />
FunctionBlocks<br />
Language<br />
Holds all source code that is basically needed by the CEVC-<br />
StateMachine class. This includ<strong>es</strong> all required typ<strong>es</strong> for data<br />
flows.<br />
All sourc<strong>es</strong> for control flows, including CControlFlow and<br />
CState.<br />
Sourc<strong>es</strong> of all platform independent function block class<strong>es</strong>.<br />
Includ<strong>es</strong> all sourc<strong>es</strong> for the ETCS language class<strong>es</strong>.<br />
141