Fraunhofer-Gesellschaft

Publica

Hier finden Sie wissenschaftliche Publikationen aus den Fraunhofer-Instituten.

On the performance of UML state machine interpretation at runtime

 
: Höfig, E.; Deussen, P.H.; Schieferdecker, I.

:

Cheng, B. ; Association for Computing Machinery -ACM-; Association for Computing Machinery -ACM-, Special Interest Group on Software Engineering -SIGSOFT-:
Sixth International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS 2011. Proceedings : May 23 - 24, 2011, Waikiki, Honolulu, HI, USA ; co-located with ICSE 2011
New York: ACM, 2011
ISBN: 978-1-4503-0575-4
pp.118-127
International Symposium on Software Engineering for Adaptive and Self-Managing Systems <6, 2011, Honolulu/Hawaii>
International Conference on Software Engineering (ICSE) <33, 2011, Honolulu/Hawaii>
English
Conference Paper
Fraunhofer FOKUS ()

Abstract
Modelling system behaviour by means of UML Behavioral State Machines is an established practice in software engineering. Usually, code generation is employed to create a system's software components. Although this approach yields software with a good runtime performance, the resulting system behaviour is static. Changes to the behaviour model necessarily provoke an iteration in the code generation workflow and a re-deployment of the generated artefacts. In the area of autonomic systems engineering, it is assumed that systems are able to adapt their runtime behaviour in response to a changing context. Thus, the constraints imposed by a code generation approach make runtime adaptation difficult, if not impossible. This article investigates a solution to this problem by employing interpretation techniques for the runtime execution of UML State Machines, enabling the adaptability of a system's runtime behaviour on the level of single model elements. This is done by devising concepts for behaviour model interpretation, which are then used in a proof-of-concept implementation to demonstrate the feasibility of the approach. For a quantitative evaluation we provide a performance comparison between the proof-of-concept implementation and generated code for a number of benchmark models. We find that UML State Machine interpretation has a performance overhead when compared with static code generation, but found it to be adequate for the majority of situations, except when dealing with high-throughput or delay-sensitive data.

: http://publica.fraunhofer.de/documents/N-189781.html