Agile Project
The goal of the Agile project was to investigate how to apply existing agile methods in the development of embedded systems. Within the domain of Avionics with stringent coding standards such as DO-178B and an imposed certification of applications, it is difficult to apply agile techniques and methods. E2S proposed to use a model driven architecture approach, using externally definable generators.
E2S extended its existing UML modeler in different ways:
- By offering an interactive profile editor, the domain user may customize the UML modeler. It may check additional constraints, limit the allowed modeling elements (classes, diagrams, ...etc) or define different (graphical) representations of modeling elements.
- In addition to constraints, the profile editor offers mechanisms to define model transformations and code generators. Both are based on extensions of OCL and are completely independent of any coding language. Within the Agile project, the three Belgian partners have defined generators for Java, Ada and Delphi Pascal. The transformation mechanism has been used to derive models from a base model and to eliminate complex modeling structures into simpler ones, reducing the complexity of the code generators.
- While modeling, the user may also add OCL application constraints, which are then transformed into an abstract tree structure, allowing their translation into code. The K.U.Leuven partner is currently investigating the translation of complex application constraints into code in a language independent way.
The Belgian coordinator of the Agile project was Barco and the research partner was K.U.Leuven. The Belgian partners were also cooperating with other European partners. The publicly available Agile project documents and newsletters are on the Agile web site. Other results are organized in the House of Agile, an floor plan with several rooms containing interesting Agile techniques, tools and results.
E2S uses its model driven architecture tool for the realization of its custom software projects.





