Skip to main content
Oficjalna strona internetowa Unii EuropejskiejOficjalna strona internetowa UE
Przejdź do strony domowej Komisji Europejskiej (odnośnik otworzy się w nowym oknie)
polski polski
CORDIS - Wyniki badań wspieranych przez UE
CORDIS
CORDIS Web 30th anniversary CORDIS Web 30th anniversary
Zawartość zarchiwizowana w dniu 2024-05-27
COrrect development of reAl-time Embedded systems in UML

Article Category

Article available in the following languages:

Improvements in software validation

With a view to improving the quality of software while at the same time reducing the expense of validation, the OMEGA project has developed the IF toolset for modelling and validation of heterogeneous real-time systems. IFx is an extended version of the IF toolbox, also developed in the project, for timed verification, simulation and scheduling analysis of UML models written in the OMEGA profile.

Model - based development is an attractive idea for building embedded real-time software systems. In this approach, models, which represent specifications of functional aspects, are compiled into code for particular platforms. The necessary experimentation is not carried out on actual systems but instead on virtual prototypes (models). The Unified Modeling Language (UML) provides a means for describing operational models of a system at various levels of abstraction, corresponding to different development phases, encompassing architecture descriptions and behaviour descriptions. Ease of construction, generality, enhanced observability and controllability, possibility of analysis and predictability are only a few of the advantages of a model-based approach. However it is only useful if it is accompanied by tool support for the validation of design choices. The OMEGA project focused on tools and a methodology for the development of real-time and embedded systems using UML. Heterogeneity of components with different execution speeds and interaction modes commonly present in the model-based approach, are two of the main problems addressed. The IF/IFx toolset allows the user to perform operations that are similar to those offered by advanced debuggers. These include step-by-step execution, inspection of the system state, conditional breakpoints, scenario rewind/replay and verification of simple consistency conditions like deadlocks or time locks. The requirements to be validated on models are expressed by using observers, which are a special class of models. They are equipped with primitives for monitoring and checking of divergence from nominal behaviour. Similarly timing constraints are employed in order to express the constraints on durations between system events and handling time-dependent design or for describing an environment with particular timing properties. The main component of IFx is the UML-to-IF translator, which produces IF (Intermediate Format) descriptions. IF descriptions are intermediate representations, which express specification, test goals and coverage criteria in a suitable way for model-based test generation. The translator takes as input a UML model stored in XMI, the standard XML format, and it generates an IF specification corresponding to the UML model, according to the OMEGA semantics. Furthermore a UML front-end provides an interface specifically targeted at UML modellers for the IF validation tools, which hides IF and the details of translation. The tool has been applied on three of the OMEGA case studies and it is also used in several other projects. Its combination with other validation and code generation tools has been seen as the object of future collaborations.

Znajdź inne artykuły w tej samej dziedzinie zastosowania