# Model Engineering using Multimodeling

### Christopher Brooks, Chihhong Patrick Cheng, Thomas Huining Feng, Edward A. Lee and Reinhard von Hanxleden

###
EECS Department

University of California, Berkeley

Technical Report No. UCB/EECS-2008-39

April 16, 2008

### http://www.eecs.berkeley.edu/Pubs/TechRpts/2008/EECS-2008-39.pdf

We study the simultaneous use of multiple modeling techniques in the design of embedded systems. We begin with a pre-existing Statecharts model of a simple case study, a traffic light for a pedestrian crossing. This model combines two distinct models of computation (MoCs), finite state machines (FSMs) and synchronous/reactive (SR). We add an additional MoC to the mix, a discrete-event (DE) model of the environment in which the traffic light operates, including a simple fault model. We construct a second model of a hardware deployment. This exercise reveals hidden assumptions in the original model about implementation that require refactoring to get a distributed deployment model. We show that the portions of the models defining the control logic of the lights can be shared between the functional and deployment models using actor-oriented classes. This eases maintenance of the models. Finally, we show that models used for verification are abstractions of the functional models that can be synthesized from the other models, suggesting practical design-for-verification techniques. The result is that this simple example uses three distinct models of the system (functional, deployment, verification), two of which hierarchically combine distinct modeling techniques (DE, SR, FSM).

BibTeX citation:

@techreport{Brooks:EECS-2008-39, Author = {Brooks, Christopher and Cheng, Chihhong Patrick and Feng, Thomas Huining and Lee, Edward A. and von Hanxleden, Reinhard}, Title = {Model Engineering using Multimodeling}, Institution = {EECS Department, University of California, Berkeley}, Year = {2008}, Month = {Apr}, URL = {http://www.eecs.berkeley.edu/Pubs/TechRpts/2008/EECS-2008-39.html}, Number = {UCB/EECS-2008-39}, Abstract = {We study the simultaneous use of multiple modeling techniques in the design of embedded systems. We begin with a pre-existing Statecharts model of a simple case study, a traffic light for a pedestrian crossing. This model combines two distinct models of computation (MoCs), finite state machines (FSMs) and synchronous/reactive (SR). We add an additional MoC to the mix, a discrete-event (DE) model of the environment in which the traffic light operates, including a simple fault model. We construct a second model of a hardware deployment. This exercise reveals hidden assumptions in the original model about implementation that require refactoring to get a distributed deployment model. We show that the portions of the models defining the control logic of the lights can be shared between the functional and deployment models using actor-oriented classes. This eases maintenance of the models. Finally, we show that models used for verification are abstractions of the functional models that can be synthesized from the other models, suggesting practical design-for-verification techniques. The result is that this simple example uses three distinct models of the system (functional, deployment, verification), two of which hierarchically combine distinct modeling techniques (DE, SR, FSM).} }

EndNote citation:

%0 Report %A Brooks, Christopher %A Cheng, Chihhong Patrick %A Feng, Thomas Huining %A Lee, Edward A. %A von Hanxleden, Reinhard %T Model Engineering using Multimodeling %I EECS Department, University of California, Berkeley %D 2008 %8 April 16 %@ UCB/EECS-2008-39 %U http://www.eecs.berkeley.edu/Pubs/TechRpts/2008/EECS-2008-39.html %F Brooks:EECS-2008-39