Key considerations in the translation of legacy embedded control software to Model Based Executable Specifications

Traditionally, control algorithms were explored using analytical approaches and limited computational methods while they were implemented as hand-written C-code by software engineers. This gap between algorithm exploration and implementation is being bridged by using graphical modeling tools such as Simulink®. Models implemented in Simulink® serve as Executable Specifications. They can be simulated to verify against requirements and be used as the basis for embedded code generation. The benefits of this approach have prompted many organizations to undertake fairly large effort to migrate their existing Legacy Embedded Software to Model Based Executable Specifications in order to reuse and to leverage their existing control know-how. This paper discusses some key aspects of this Translation Process that are important to ensure that the process is efficient and it results in a work product that is a “true representation” of the source code. The importance of a structured process, aids for model implementation, and, criteria to measure the resulting model quality are discussed in detail in this paper.