loading page

A Quantitative Analysis of an Automatic Code Generation Tool for Space Software Applications
  • +4
  • Ángel G. Pérez-Muñoz,
  • Miguel Á. de Miguel,
  • Javier Cubas Cano,
  • Hugo Santos Valente,
  • Juan Zamorano Flores,
  • Alejandro Alonso Muñoz,
  • Juan A. de la Puente
Ángel G. Pérez-Muñoz
Universidad Politécnica de Madrid

Corresponding Author:angel.perez.munoz@upm.es

Author Profile
Miguel Á. de Miguel
Universidad Politecnica de Madrid Departamento de Ingenieria de Sistemas Telematicos
Author Profile
Javier Cubas Cano
Instituto Universitario de Microgravedad “Ignacio Da Riva
Author Profile
Hugo Santos Valente
Universidad Politecnica de Madrid Departamento de Ingenieria de Sistemas Telematicos
Author Profile
Juan Zamorano Flores
Universidad Politécnica de Madrid
Author Profile
Alejandro Alonso Muñoz
Universidad Politecnica de Madrid Departamento de Ingenieria de Sistemas Telematicos
Author Profile
Juan A. de la Puente
Universidad Politecnica de Madrid Departamento de Ingenieria de Sistemas Telematicos
Author Profile

Abstract

Model-driven engineering (MDE) has become a leading methodology for the design and development of Real-Time Embedded Systems (RTES). It makes use of automatic code generation tools to reduce time, cost and effort associated with writing and maintaining software. However, automatic code generators tend to produce poor quality and inefficient code, which is unacceptable for safety critical systems. The verification and validation of such systems are crucial activities that require high-level code quality and coverage enforced by standards such as DO-178C/ED-12C for airborne software or ECSS in the European space domain. Simulink is a modelling tool offered by MathWorks widely used in the aerospace sector to develop and simulate models. The QGen tool-suite offers a C and Ada code generator appropriate for Simulink and Stateflow models. In this paper, we evaluate QGen aiming to demonstrate its applicability in embedded software products, its integrability in other modelling tools, and the quality of the autogenerated software. To that end, a set of Key Performance Indicators (KPI) have been defined to measure quantitative values mostly obtained with open-source tools. The evaluation adopts the Attitude Control System from the UPMSat-2 satellite as the technology demonstrator and its simulation and control Simulink models serve as evaluation models for this analysis. The contribution of this study has been to establish a quantitative methodology for the evaluation of the QGen tool-suite based on software metrics at varying granularity levels such as model and source code. This methodology should help the researchers to identify further metrics and use them to analyze not only automatic code generators, but also to establish a criterion to assess the technology readiness of other software products and tools.
05 Apr 2023Submitted to Journal of Software: Evolution and Process
05 Apr 2023Submission Checks Completed
05 Apr 2023Assigned to Editor
07 Apr 2023Reviewer(s) Assigned
14 May 2023Review(s) Completed, Editorial Evaluation Pending
19 May 2023Editorial Decision: Revise Major