Model based construction of embedded real-time software : a methodology for small devices

Abstract

While model-based software engineering - due to its increased abstraction and its advantages in terms of traceability and analyzability - seems to be the adequate means to deal with the increased complexity of software that one faces today, it does not seem to have penetrated all domains yet, in particular not the one of small embedded & realtime systems. Seeing this problem caused by the fact that current model-based approaches do not pay sufficient attention to the rather special technical, organizational, and economical constraints in the respective domain, this work presents an approach that explicitly takes these constraints into account. MeDUSA, a model-based software construction method for small embedded & realtime systems, is a principal item of the presented solution. To face the strong technical constraints it was especially designed as an instance-driven method, not incorporating any object-oriented concepts, but forcing a class-based design that can be seamlessly transferred into a procedural implementation, which is still state-of-the-art in the regarded domain. To guarantee such a seamless transition MeDUSA was furthermore designed to be a software construction rather than a mere design method, explicitly also addressing the implementation activities, and especially the transition from detailed design into source code. Being organized around the use case concept, the method excels at being very systematic and - inter alia by facilitating a continuous real-time analysis - also at being especially aware about the stringent real-time constraints that have to be faced in the domain of embedded & real-time systems. ViPER, the supporting tool prototype, forms the second essential part of the solution. It offers generic support for MeDUSA’s modeling activities by providing a graphical UML modeling environment, as well as special support for the specification and simulation of narrative, textual use case details. It furthermore demonstrates dedicated methodical support by embedding a hypertext documentation of MeDUSA’s definition, by providing implementations of the MeDUSA UML profiles and model constraints, and by offering dedicated wizards to support the execution of certain MeDUSA tasks. Together with their underlying languages, the Unified Modeling Language as well as the ANSI-C programming language, MeDUSA and ViPER thus form an integrated methodology, which is founded on shared concepts and principles. Especially developed to address above quoted constraints, the methodology is applicable to a domain, which has pretty much been elided so far

    Similar works

    Full text

    thumbnail-image

    Available Versions