Evolving Graphical Models from C Programs: A Reverse Engineering Approach 2007-01-4247
Over the past few years model based design (MBD) methodology has gained wide acceptance in various sectors due to significant advantages it offers above the traditional development processes. Traditional embedded software development relies on paper specification followed by handcoding in high-level language (typically C). Many existing embedded systems have been developed with this traditional methodology. These systems have been perfected over the years from rigorous testing and maintenance cycles and most of them do not have any supporting documents. So it has become extremely difficult to maintain those systems and to introduce new features to them. Hence, there is increasing number of system engineers who wish to convert existing embedded software systems to graphical models. This paper analyzes this problem in detail and discusses various issues involved in this conversion process. The paper proposes a unique reverse engineering based process (REDRIVE process) to convert C programs to graphical models in MATLAB. The process has been applied in a real-time application to develop MATLAB model for 3 important modules of an automatic transmission control system. The results of this experience are presented along with future research directions.