22–24 Oct 2013
European Space Research and Technology Centre (ESTEC)
Europe/Amsterdam timezone

Ground software: Application of software factories in ASE-5

24 Oct 2013, 14:40
20m
Newton (European Space Research and Technology Centre (ESTEC))

Newton

European Space Research and Technology Centre (ESTEC)

Keplerlaan 1 2201AZ Noordwijk ZH The Netherlands
Software Factory (24 October PM) SW Factory

Speaker

Salor Moral Nieves (Vitrociset)

Description

Coding and testing represents a substantial part of a software project. Although manual coding allows greater flexibility and control in what is being developed, it implies manual testing and regression testing, which costs time. Therefore, code automation is becoming a necessity during development. Thanks to the use of libraries and tools implementing the concept of software factories, part of the code can be automatically generated from either configuration files or diagrams, removing the need to verify the correctness and testing of the generated code. This presentation describes the automatic code generation done in the scope of the ASE5 project. The system uses several ‘software factories’ in different aspects of the application, in particular: • The complete creation of the database scripts through the collaboration of the modeling methodology named ORM (i.e. Object Relational Modeling) and a tool named NORMA. • The almost complete generation of the persistence model classes through the use of the Hibernate library. • The complete creation of the base SSM Editor (i.e. Space System Model) application by using the EMF methodology. Only investing time in creating a XSD data model representation of the SSM, a simple graphical and tab editor with validation functions is generated. • The complete compiler developments for both ECSS-E-ST-70-32 (i.e. PLUTO) procedure language and its meta-language. The compilers are generated from their respective grammar definitions in EBNF using the software factory ANTLR. Through this automation system, the system can modify in a matter of minutes any of the involved information or target system (e.g. database contents, database engine, programming language) without having to perform any further work or testing. As a result, software factories have decreased the expected development time and allowed us to focus only in the logic of the application and not in the low-level coding.

Presentation materials