AMoDE-RT: Advancing Model-Driven Engineering for embedded real-time systems
Marco A. Wehrmeister, Gian Ricardo Berkenbrock · 2013
To cope with the increasing design complexity of modern embedded real-time systems, Model-Driven Engineering (MDE) techniques are being proposed and applied within the domain of embedded and real-time systems. This paper discusses a design approach that combines MDE and concepts of the Aspect-Oriented Software Development (AOSD) to deal with functional and non-functional requirements in a modularized way using higher abstraction levels. This approach covers activities from requirements engineering to the implementation phases, allowing early verification and simulation of system specifications. The proposed MDE approach is supported by a set of CASE tools. A configurable tool for code generation is capable of creating source code for different target platforms from the models produced in earlier design phases. Besides generating code for functional requirements handling, the tool also weaves aspects' adaptations, which modify the generated code to handle non-functional requirements. Furthermore, a tool to execute automatically a set of test cases is used to simulate and exercise the system behavior already in the specification and modeling phase. This tools allows engineers to verify if the system model is being specified according to the requirements, identifying whether the functional requirements are being fulfilled. The proposed approach has been successfully applied to the development of embedded real-time systems for different real-world applications. Obtained results show an improvement concerning the modularization of system's requirements handling, leading to an increased reuse of previously created artifacts.