Translation of UML state machines to Modelica: Handling semantic issues

ModelicaML is a UML profile that enables modeling and simulation of systems and their dynamic behavior. ModelicaML combines the power of the OMG UML standardized graphical notation for systems and software modeling, and the simulation power of Modelica. This addresses the increasing need for precise and integrated modeling of products containing both software and hardware. This article discusses the usage of executable UML state machines for system modeling, i.e. usage of the same formalism for describing the state-based dynamic behavior of physical system components and software. Moreover, it points out that the usage of Modelica as an action language enables an integrated simulation of continuous-time and reactive/event-based system dynamics. The main purpose of this article is however to highlight issues that are identified regarding the UML specification which are experienced with typical executable implementations of UML state machines. The issues identified are resolved and rationales for the taken design decisions are provided.

[1]  J.A. Ferreira,et al.  Modelling hybrid systems using statecharts and Modelica , 1999, 1999 7th IEEE International Conference on Emerging Technologies and Factory Automation. Proceedings ETFA '99 (Cat. No.99TH8467).

[2]  Hilding Elmqvist,et al.  Modelica — A unified object-oriented language for physical systems modeling , 1997 .

[3]  David Harel,et al.  The Rhapsody Semantics of Statecharts (or, On the Executable Core of the UML) - Preliminary Version , 2004, SoftSpez Final Report.

[4]  Adrian Pop,et al.  Towards Unified System Modeling with the ModelicaML UML Profile , 2007, EOOLT.

[5]  David Broman,et al.  Equation-Based Object-Oriented Languages and Tools , 2008, ECOOP Workshops.

[6]  Michelle L. Crane,et al.  UML vs. classical vs. rhapsody statecharts: not all models are created equal , 2005, MoDELS'05.

[7]  Thomas Alex Johnson,et al.  Integrating models and simulations of continuous dynamic system behavior into SysML , 2008 .

[8]  Charlotta Johnsson,et al.  A New Formalism for Modeling of Reactive and Hybrid Systems , 2009 .

[9]  Michael von der Beeck,et al.  A Comparison of Statecharts Variants , 1994, FTRTFT.

[10]  Youcef Hammal A Formal Semantics of UML StateCharts by Means of Timed Petri Nets , 2005, FORTE.

[11]  Alberto L. Sangiovanni-Vincentelli,et al.  Languages and Tools for Hybrid Systems Design , 2006, Found. Trends Electron. Des. Autom..

[12]  Anthony J. H. Simons On the Compositional Properties of UML Statechart Diagrams , 2000, Rigorous Object-Oriented Methods.

[13]  Christiaan J. J. Paredis,et al.  Towards Unified System Modeling and Simulation with ModelicaML: Modeling of Executable Behavior Using Graphical Notations , 2009 .

[14]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[15]  Christiaan J. J. Paredis,et al.  Integrating Models and Simulations of Continuous Dynamics Into SysML , 2012, J. Comput. Inf. Sci. Eng..

[16]  M. Otter,et al.  Modelica - A Unified Object-Oriented Language for Physical Systems Modeling - Language Specification , 2000 .