Multiformalism Modeling Compositionality in SIMTHESys

Multiformalism Modeling Compositionality in SIMTHESys

Enrico Barbierato (Università di Torino, Italy)
Copyright: © 2014 |Pages: 23
DOI: 10.4018/978-1-4666-4659-9.ch005
OnDemand PDF Download:
No Current Special Offers


Multiformalism has emerged as a sound technique to define a complex system as the composition of a set of sub-components, each one modeled according to the best-suited formalism. Existing literature offers a wide choice of frameworks and tools that exploit model composition following different approaches. This chapter provides an insight into the composition approach used by SIMTHESys (a framework for the development of modeling languages and the solution of multiformalism models) in order to compose easily and consistently primitives belonging to different (custom) modeling languages. A case study is presented to illustrate the effectiveness of the proposed composition formalism.
Chapter Preview


The modeling of real world systems is intrinsically complex.

The issue arises from the fact that several factors must be taken in account: for example, a system can be distributed over different components or can be characterized by an intricate dynamics. As some of the aspects of the system can be ignored, the researcher can invest more time and efforts to study the most relevant aspects. This classification suggests the possibility of building an abstraction of the system or a model that is defined according to a formalism. The advantages provided by these approach are several, being the most notable the capability of measuring the system dependability (the ability of a system to provide a specific service) and its performability (how well a system performs, including the occurrence of faults).

One of the most powerful ways to understand how the parts of a system interact is modeling. Modeling power and Decision power of a formalism play an important role in this field. The former corresponds to the capability of describing efficiently a real system. The latter is inversely proportional to the complexity of computation and the set of computing resources requested to define properties and to execute the model (i.e. to implement a control function defined in terms of the formalism). Sub-formalisms originated by structural restrictions reduce modeling power and tend to increase the model size. On the other hand, they increase the decision power.

A further level of analysis considers qualitative and quantitative modeling. In the first case, the models are characterized by a variable with finite value domains and rely on an abstract logic description of the system behavior. In the second case, real valued variables are used to describe physical entities of a system through differential and algebraic equations.

The scale of the systems currently in charge to support human activities and the concurrency of different non-functional specifications require that modeling techniques would offer abstraction mechanisms that allow modelers to face such complexity while exploiting mathematically founded methods. Such abstraction mechanisms can be constituted of formal modeling languages and their solution algorithms, that can be based either on simulation or analytical methods. A broad and well spread example set is given by stochastic modeling techniques such as Petri nets, fault trees, stochastic automata, process algebras, queuing networks and many others that have been given a stochastic variant or interpretation.

During the last decades the intricacy of modern systems has grown significantly, including operating systems, networks, hardware and applications. Not only the choice of a specific formalism to build a model is difficult, but experience has shown that there is no a unique formalism able to model a system the best. Even in a specific domain the specifications used to build a system may vary. In a similar way, there is no a unique solution method.

The need to investigate disciplines such as engineering and biology characterized by complexity and heterogeneity has seen the rapid development of different formalisms and solution techniques supporting research in these fields. Informally, these approaches can be classified within three categories: i) sub-models composition, ii) multi-formalism integration and iii) formal models generation from high-level specifications. Multiple tools integration in a common environment plays an important role. A common approach in the Software Performance Engineering area consists of implementing model-to-model transformations from UML description to formal models oriented to performance and dependability. However, integrating different tools raises different issues.

Firstly, it is necessary to understand how to report the results from a tool in a common way and secondly how to build the interoperability between the tools, considering the output values provided by one tool as the input for another tool.

Model composition has emerged as a sound technique showing how a complex model can be described as the composition of a set of sub-models. Initially, modelers consider several abstractions of the system under study, then they decompose it into two or more sub-components in order to analyze and understand more easily the single parts. Finally, the sub-components are put together following a bottom-up fashion in order to generate the initial system.

Literature offers different approaches to model composition describing different techniques and operators required. The most notable proposals include i) combinatorial methods, ii) qualitative model checking and iii) state-based stochastic methods.

Complete Chapter List

Search this Book: