Skip to main content

2015 | Buch

Modelling Foundations and Applications

11th European Conference, ECMFA 2015, Held as Part of STAF 2015, L`Aquila, Italy, July 20-24, 2015. Proceedings

insite
SUCHEN

Über dieses Buch

This book constitutes the proceedings of the 11th European Conference on Modelling Foundations and Applications, ECMFA 2015, held as part of STAF 2015, in L`Aquila, Utaly, in July 2015. The 13 papers presented in this volume were carefully reviewed and selected from 54 submissions. The committee decided to accept 13 papers, 9 papers for the Foundations Track and 4 papers for the Applications Track. Papers on a wide range of MBE aspects were accepted, including topics such as aspect-oriented modeling, model management, model transformation, advanced meta-modeling, UML modeling tools, and domain-specific modeling w.r.t. energy consumption and cloud-based systems.

Inhaltsverzeichnis

Frontmatter
Energy Consumption Analysis and Design of Energy-Aware WSN Agents in fUML
Abstract
Wireless Sensor Networks (WSN) are nowadays applied to a wide set of domains (e.g., security, health). WSN are networks of spatially distributed, radio-communicating, battery-powered, autonomous sensor nodes. WSN are characterized by scarcity of resources, hence an application running on them should carefully manage its resources. The most critical resource in WSN is the nodes’ battery.
In this paper, we propose model-based engineering facilities to analyze the energy consumption and to develop energy-aware applications for WSN that are based on Agilla Middleware. For this aim i) we extend the Agilla Instruction Set with the new battery instruction able to retrieve the battery Voltage of a WSN node at run-time; ii) we measure the energy that the execution of each Agilla instruction consumes on a target platform; and iii) we extend the Agilla Modeling Framework with a new analysis that, leveraging the conducted energy consumption measurements, predicts the energy required by the Agilla agents running on the WSN. Such analysis, implemented in fUML, is based on simulation and it guides the design of WSN applications that guarantee low energy consumption. The approach is showed on the Reader agent used in the WildFire Tracker Application.
Luca Berardinelli, Antinisca Di Marco, Stefano Pace, Luigi Pomante, Walter Tiberti
A Comparison of Two-Level and Multi-level Modelling for Cloud-Based Applications
Abstract
The Cloud Modelling Framework (CloudMF) is an approach to apply model-driven engineering principles to the specification and execution of cloud-based applications. It comprises a domain-specific language to model the deployment topology of multi-cloud applications, along with a models@run-time environment to facilitate reasoning and adaptation of these applications at run-time. This paper reports on some challenges encountered during the design of CloudMF, related to the adoption of the two-level modelling approach and especially the type-instance pattern. Moreover, it proposes the adoption of an alternative, multi-level modelling approach to tackle these challenges, and provides a set of criteria to compare both approaches.
Alessandro Rossini, Juan de Lara, Esther Guerra, Nikolay Nikolov
Empirical Evaluation of UML Modeling Tools–A Controlled Experiment
Abstract
Model driven software engineering (MDSE) has shown to provide mark improvement in productivity and quality of software products. UML is a standard modeling language that is widely used in the industry to support MDSE. To provide tool support for MDSE, a large number of UML modeling tools are available, ranging from open-source tools to commercial tools with high price tag. A common decision faced while applying UML in practice is the selection of an appropriate tool for modeling. In this paper we conduct a study to compare three of the well-known modeling tools: IBM Rational Software Architect (RSA), MagicDraw, and Papyrus. In this study we conducted an experiment with undergraduate and graduate students. The goal is to compare the productivity of the software engineers while modeling with the tools. We measure the productivity in terms of modeling effort required to correctly complete a task, learnability, time and number of clicks required, and memory load required for the software engineer to complete a task. Our results show that MagicDraw performed significantly better in terms of learnability, memory load, and completeness of tasks. In terms of time and number of clicks, IBM RSA was significantly better while modeling class diagrams and state machines when compared to Papyrus. However no single tool outperformed others in all the modeling tasks with respect to time and number of clicks.
Safdar Aqeel Safdar, Muhammad Zohaib Iqbal, Muhammad Uzair Khan
A Generative Approach to Define Rich Domain-Specific Trace Metamodels
Abstract
Executable Domain-Specific Modeling Languages (xDSMLs) open many possibilities for performing early verification and validation (V&V) of systems. Dynamic V&V approaches rely on execution traces, which represent the evolution of models during their execution. In order to construct traces, generic trace metamodels can be used. Yet, regarding trace manipulations, they lack both efficiency because of their sequential structure, and usability because of their gap to the xDSML. Our contribution is a generative approach that defines a rich and domain-specific trace metamodel enabling the construction of execution traces for models conforming to a given xDSML. Efficiency is increased by providing a variety of navigation paths within traces, while usability is improved by narrowing the concepts of the trace metamodel to fit the considered xDSML. We evaluated our approach by generating a trace metamodel for fUML and using it for semantic differencing, which is an important V&V activity in the realm of model evolution. Results show a significant performance improvement and simplification of the semantic differencing rules as compared to the usage of a generic trace metamodel.
Erwan Bousse, Tanja Mayerhofer, Benoit Combemale, Benoit Baudry
On Lightweight Metamodel Extension to Support Modeling Tools Agility
Abstract
Modeling in real industrial projects implies dealing with different models, metamodels and supporting tools. They continuously have to be adapted to changing requirements, involving (often costly) problems in terms of traceability, coherence or interoperability. To this intent, solutions ensuring a better adaptability and flexibility of modeling tools are needed. As metamodels are cornerstones in such tools, metamodel extension capabilities are fundamental. However, current modeling frameworks are not flexible or dynamic enough. Thus, following the ongoing OMG MOF Extension Facility (MEF) RFP, this paper proposes a generic lightweight metamodel extension mechanism developed as part of the MoNoGe collaborative project. A base list of metamodel extension operators as well as a DSL for easily using them are introduced. Two different implementations of this extension mechanism (including a model-level support when (un)applying metamodel extensions) are also described, respectively based on Eclipse/EMF and the Modelio modeling environment.
Hugo Bruneliere, Jokin Garcia, Philippe Desfray, Djamel Eddine Khelladi, Regina Hebig, Reda Bendraou, Jordi Cabot
Type Inference in Flexible Model-Driven Engineering
Abstract
In Model-Driven Engineering (MDE), models conform to metamodels. In flexible modelling, engineers construct example models with free-form drawing tools; these examples may later need to conform to a metamodel. Flexible modelling can lead to errors: drawn elements that should represent the same domain concept could instantiate different types; other drawn elements could be left untyped. We propose a novel type inference approach to calculating types from example models, based on the Classification and Regression Trees (CART) algorithm. We describe the approach and evaluate it on a number of randomly generated models, considering the accuracy and precision of the resultant classifications. Experimental results suggest that on average 80% of element types are correctly identified. In addition, the results reveal a correlation between the accuracy and the ratio of known-to-unknown types in a model.
Athanasios Zolotas, Nicholas Matragkas, Sam Devlin, Dimitrios S. Kolovos, Richard F. Paige
AspectOCL: Extending OCL for Crosscutting Constraints
Abstract
Constraints play an important role in Model Driven Software Engineering. Industrial systems commonly exhibit crosscutting behaviors in design artifacts. While modeling of crosscutting behaviors has been addressed in literature, the modeling of crosscutting constraints remains a problem. Presence of crosscutting constraints makes it difficult to maintain constraints defined on the models of large-scale industrial systems. Multiple elements in a model may share common crosscutting constraints with minor variation. Aspect orientation is well-established approach to model crosscutting behavior. Current OCL specification does not support writing crosscutting constraints separately as aspects. In this paper, we propose an extension of OCL language that brings benefits of aspect orientation to OCL constraints. In our language, crosscutting constraints are specified as aspects, which can be woven in OCL constraints. We demonstrate our proposed language through application on a published open source case study. Results show that specifying crosscutting constraints as aspects can reduce the number of constraints to be specified.
Muhammad Uzair Khan, Numra Arshad, Muhammad Zohaib Iqbal, Hafsa Umar
Reusable Model Interfaces with Instantiation Cardinalities
Abstract
The power of aspect-oriented modelling is that structural and behavioural properties of a crosscutting concern can be modularized within an aspect model. With proper care, such an aspect model can also be made reusable. If the functionality provided by such a modularized concern is needed repeatedly within a system, the reusable aspect model can be applied multiple times within the same target model. This paper reviews the pending issues related to multiple aspect model instantiations identified in past research, and then proposes to extend the customization interface of aspect models with instantiation cardinalities. This removes potential customization ambiguities for the model user, and gives the model designer fine-grained control about how many instances of each structural and behavioural element contained in an aspect model are to be created in the target model. The approach is illustrated by presenting the aspect-oriented design of a behavioural, a structural and a creational design pattern.
Sunit Bhalotia, Jörg Kienzle
A Model-Based Approach for the Integration of Configuration Fragments
Abstract
A complex system configuration often consists of different fragments developed separately and integrated later to relate them in a consistent manner. The integration process follows certain rules, which relate the elements from the different fragments and ensure certain properties for the complete system configuration. In this paper we propose a model driven approach based on the concept of model weaving. It integrates the configuration fragments into a system configuration while targeting some specific system properties. Our approach is discussed and illustrated within the context of the Service Availability Forum (SA Forum) middleware, where we integrate the Availability Management Framework (AMF) configuration of an application that provides services to the users with the Platform Management Service (PLM) configuration of the platform, which represents the lower layer entities such as the operating systems, virtual machines, hypervisors and hardware elements.
Azadeh Jahanbanifar, Ferhat Khendek, Maria Toeroe
Towards Incremental Updates in Large-Scale Model Indexes
Abstract
Hawk is a modular and scalable framework that supports monitoring and indexing large collections of models stored in diverse version control repositories. As such models are likely to evolve over time, responding to change in an efficient manner is of paramount importance. This paper presents the incremental update process in Hawk and discusses the efficiency challenges faced. The paper also reports on the evaluation of Hawk against an existing large-scale benchmark, focusing on the observed efficiency benefits in terms of update time; it compares the time taken when using this approach against the naive approach used beforehand, and discusses the benefits of combining the two, gaining improvements averaging a 70.7% decrease in execution time.
Konstantinos Barmpis, Seyyed Shah, Dimitrios S. Kolovos
A Model Management Imperative: Being Graphical Is Not Sufficient, You Have to Be Categorical
Abstract
Graph-based modeling is both common in and fundamental for Model Driven Engineering (MDE). The paper argues that several important model management (MMt) scenarios require an essential extension of graphical models. We show that different versions of model merge and sync, including many-to-many correspondences between models, can be treated in a uniform, compact and well-defined mathematical way if we specify graphical models as directed graphs with associative arrow composition and identity loops, that is, as categories.
Zinovy Diskin, Tom Maibaum, Krzysztof Czarnecki
Opening the Black-Box of Model Transformation
Abstract
The automated execution of model transformation plays a key role within Model Driven Development. The software that executes a transformation, commonly known as a transformation engine, receives the meta-models of the source and destination, and a set of transformation rules as input. Then the engine can be used to convert instances of the source meta-model to produce a destination model. Transformation engines are often seen as black boxes. In order to be sure of the correct execution, it is crucial to understand how a transformation engine executes a given transformation. This paper presents a method of capturing and analysing the activities carried out within the transformation engine by elaborating on existing tracing mechanisms used by existing engines. We compare the tracing mechanisms involved in four popular, rule-based transformation frameworks and highlight their shortcomings. A new trace meta-model is presented to deal with some of these shortcomings. These processes can be applied to all existing frameworks; as a proof of concept we have extended an existing traceability framework, based on our earlier work, to implement these mechanisms.
John T. Saxon, Behzad Bordbar, David H. Akehurst
Property Access Traces for Source Incremental Model-to-Text Transformation
Abstract
Automatic generation of textual artefacts (including code, documentation, configuration files, build scripts, etc.) from models in a software development process through the application of model-to-text (M2T) transformation is a common MDE activity. Despite the importance of M2T transformation, contemporary M2T languages lack support for developing transformations that scale with the size of the input model. As MDE is applied to systems of increasing size and complexity, a lack of scalability in M2T (and other) transformation languages hinders industrial adoption. In this paper, we propose a form of runtime analysis that can be used to identify the impact of source model changes on generated textual artefacts. The structures produced by this runtime analysis, property access traces, can be used to perform efficient source-incremental transformation: our experiments show an average reduction of 60% in transformation execution time compared to non-incremental (batch) transformation.
Babajide Ogunyomi, Louis M. Rose, Dimitrios S. Kolovos
Backmatter
Metadaten
Titel
Modelling Foundations and Applications
herausgegeben von
Gabriele Taentzer
Francis Bordeleau
Copyright-Jahr
2015
Electronic ISBN
978-3-319-21151-0
Print ISBN
978-3-319-21150-3
DOI
https://doi.org/10.1007/978-3-319-21151-0

Premium Partner