31.01.2014 Views

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 ...

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.

9.8. openETCS Tool Chain for Dependable Open Model Software<br />

9.8. openETCS Tool Chain for Dependable Open Model<br />

Software<br />

The r<strong>es</strong>ulting concrete openETCS tool chain for the complete development proc<strong>es</strong>s is sketched<br />

in Figure 9.11. The verification of the transformation from the GOPRR to the GOPPRR<br />

instance is done, corr<strong>es</strong>ponding to the d<strong>es</strong>cription in Section 9.7, by the generated “Functional<br />

T<strong>es</strong>t Cas<strong>es</strong>”, which are run on the “GOPPRR Abstract Syntax Tree”. The verification of the<br />

transformation of the concrete GOPPRR C++ abstract syntax model to the concrete source<br />

code for the EVC binary is implemented in the “Functional T<strong>es</strong>ting”, which consum<strong>es</strong> the<br />

generated “Source Code” and “GOPPRR Abstract Syntax Tree” artefact. The validation of<br />

the generation proc<strong>es</strong>s refers here to a valid model, which is checked by the constraints of the<br />

static semantics. Also, the final build proc<strong>es</strong>s of the EVC binary and its execution un<strong>der</strong> a<br />

Xen hypervisor were added.<br />

Since the extensions or transformations for the PSM cannot be generally for<strong>es</strong>een and neither<br />

is automatically generated from other artefacts, it is omitted in Figure 9.11.<br />

9.9. Conclusion<br />

The openETCS generator application fulfils all initially defined requirements by combining<br />

several C++ class<strong>es</strong> producing the different generator output.<br />

To ensure that Req.9 is fulfilled, t<strong>es</strong>ts can be generated automatically for both models: First,<br />

in a general way, independent from the meta model, for the transformation from the GOPRR<br />

meta model instance in MetaEdit+ to the GOPPRR C++ abstract syntax model. Second, for<br />

the concrete model-to-text transformation to openETCS domain framework objects.<br />

The usage of cmake provid<strong>es</strong> implicitly a platform independent build configuration for<br />

compiling and linking the EVC executable binary, which facilitated the implementation of the<br />

CBuildGenerator and fulfils Req.11.<br />

CVMGenerator provid<strong>es</strong> an implementation for generating configurations for the Xen hypervisor<br />

for para-virtualisations, which fulfils Req.12.<br />

The separation of independent data flows for parallelisation could be future development<br />

work for the openETCS generator application because it is already prepared in the domain<br />

framework.<br />

Although the checking of the static semantics was only realised by the direct implementation<br />

of exemplary constraints in C++, all OCL constraint statements in Section 7.5 could be used<br />

in combination with the UML-based Specification Environment (USE) [34] application, which<br />

is available as FLOSS, to check the static semantics outside the openETCS tool chain in<br />

Figure 9.11. Accordingly, the openETCS tool chain and USE would have to be adapted to allow<br />

the export and import of the concrete GOPPRR C++ abstract syntax model instantiation.<br />

Hence, an appropriate XMI export must be realised inside the GOPPRR package / name space<br />

and the corr<strong>es</strong>ponding XMI import mechanism in USE, which neither is currently available.<br />

177

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

Saved successfully!

Ooh no, something went wrong!