Model-based approach to real-time embedded control systems development with legacy components integration : : doctoral thesis - Babić, Josip (J. Babić ; Fakultet elektrotehnike i računarstva, 2014)
ABSTRACT: Embedded control systems software is continually gaining importance, it is becoming more complex and it often must comply with very rigid requirements. At the same time, legacy software components proven in practice are preferred in safety critical embedded control systems. Model-based development has emerged as an approach that can tackle the complexities of embedded control systems, but its' application can be hindered by established development procedures based on legacy components. Real-time properties validation in the context of model-based development is not well researched so this can also protract introduction of model-based techniques. This thesis proposes methods to facilitate transition from legacy development practices into modern model-based embedded control systems development. This goal is achieved by transferring knowledge and confidence condensed in legacy software components across the gap and by validating real-time properties of the embedded software. Legacy software components are integrated into model-based development toolchain in a systematical and structured way. It has been shown that this approach provides flexibility in managing components and facilitates their reuse, that it provides highly customizable automated code generation, and that it enables linking of newly generated code with legacy object files. Novel methods for real-time properties validation have been proposed that supplement existing functional model-based testing approaches. Software component real-time testing based on configuration space partitioning and on real-time testing pattern has been elaborated. The method itself has been thoroughly validated to establish confidence in the testing results which have shown to be consistent and reliable. All steps in the process can be (i) fully automated, (ii) partially automated with fine tuning of particular aspects, or (iii) performed completely manually. This enables full control of the tests on the one side and effortless regression testing of large number of components on the other side. Real-time properties of complex control software structures can be validated by novel real-time integration testing method derived from the proposed component testing approach. Here, the model of the system under test is incorporated in the real-time testing pattern adapted for control algorithm testing. The executable code, generated from such model and executed on the target, provides validation of real-time properties either in an open-loop or in a closed control loop with model of the environment executed in real-time alongside the tested algorithm. It has been shown that this method represents a natural extension of the conventional functional processor-in-the-loop testing. All the proposed methods have been validated in three case studies which describe two real-life embedded control system development projects. -