Model-Based Software Engineering and Ada: Synergy for the Development of   Safety-Critical Systems
  In this paper we outline a software development process for safety-critical systems that aims at combining some of the specific strengths of model-based development with those of programming language based development using safety-critical subsets of Ada. Model-based software development and model-based test case generation techniques are combined with code generation techniques and tools providing a transition from model to code both for a system itself and for its test cases. This allows developers to combine domain-oriented, model-based techniques with source code based validation techniques, as required for conformity with standards for the development of safety-critical software, such as the avionics standard RTCA/DO-178B. We introduce the AutoFocus and Validator modeling and validation toolset and sketch its usage for modeling, test case generation, and code generation in a combined approach, which is further illustrated by a simplified leading edge aerospace model with built-in fault tolerance. 
Andree Blotz (1), Franz Huber (2), Heiko Loetzbeyer (3), Alexander   Pretschner (3), Oscar Slotosch (2), Hans-Peter Zaengerl...