=Paper= {{Paper |id=None |storemode=property |title=Summary of the 8th International Workshop on Models @ Run.time |pdfUrl=https://ceur-ws.org/Vol-1079/summary.pdf |volume=Vol-1079 |dblpUrl=https://dblp.org/rec/conf/models/BencomoFGR13 }} ==Summary of the 8th International Workshop on Models @ Run.time== https://ceur-ws.org/Vol-1079/summary.pdf
 Summary of the 8th International Workshop on

                             Models@run.time


                  1                2                  3                        4
  Nelly Bencomo , Robert France , Sebastian Götz , and Bernhard Rumpe


                              Aston University, UK
                              1

                         Colorado State University, USA
                         2
                   3
                     Technische Universität Dresden, Germany
                          4
                             RWTH Aachen, Germany
                   nelly@acm.org,sebastian.goetz@acm.org,
                  france@cs.colostate.edu,rumpe@se-rwth.de



      Abstract.    The 8th edition of the workshop Models@run.time was held
      at the 16th International Conference MODELS. The workshop took place
      in the city of Miami, USA, on the 29th of September 2013. The workshop
      was organised by Nelly Bencomo, Sebastian Götz, Robert France and
      Bernhard Rumpe. Here, we present a summary of the workshop and a
      synopsis of the papers discussed during the workshop.


Keywords: runtime adaptation, MDE, reection, run-time abstractions

1 Introduction
The Models@run.time workshop series provides a forum for exchange of ideas on
the use of run-time models. The main goal is to further promote cross-fertilization
between researchers from dierent communities, including model-driven software
engineering, software architectures, computational reection, adaptive systems,
autonomic and self-healing systems, and requirements engineering. This edition
of the workshop successfully brought together at least twenty ve researchers
from dierent communities.
   This edition had nine (9) papers presented. Improved versions of these papers
are published in this post-workshop proceedings.



2 Workshop Format and Session Summaries
The workshop was held as a one-day workshop in MODELS. The activities were
structured into presentations followed by an afternoon discussion session.
   Nine (9) papers were presented. In total, seven (7) long presentations and
two (2) short presentations were given. Authors of the papers with long pre-
sentations discussed their papers in a twenty-minute-time slot, and ve minutes
were allowed for questions and discussion. Shorter presentations, in turn, had
fteen (15) minutes.
2

    In the second part of the afternoon, the workshop participants dedicated
their time for discussions where a useful classication of presented and discussed
approaches was dened. In the following we summarize the nine (9) paper pre-
sentations given in three sessions:




Session 1: Safety and Cyber Physical Systems

Enhancing Root Cause Analysis with Runtime Models and Interactive Visual-
izations by Michael Szvetits and Uwe Zdun. In this paper the authors propose
the use of runtime models in combination with interactive visualizations to ease
tracing between log le entries and corresponding software artefacts. The con-
tribution of this paper is a repository-based approach to augment root cause
analysis (of unwanted behaviour for example) with interactive tracing views
while maximizing reusability of models created during the software development
process.



Building heterogeneous models at runtime to detect faults in ambient-intelligent
environments by Christophe Jacquet, Ahmed Mohamed, Frédéric Boulanger, Ce-
cile Hardebolle and Yacine Bellik. This paper introduces an approach for fault
detection in ambient-intelligent environments. It proposes to compute predic-
tions for sensor values, to be compared with actual values. As ambient envi-
ronments are highly dynamic, one cannot pre-determine a prediction method.
Therefore, our approach relies on (a) the modeling of sensors, actuators and
physical eects that link them, and (b) the automatic construction at run-time
of a heterogeneous prediction model. The prediction model can then be executed
on a heterogeneous modeling platform such as ModHel'X, which yields predicted
sensor values.



A Model-driven Approach to Develop and Manage Cyber-Physical Systems by
Adalberto Sampaio Jr., Fabio Costa and Peter Clarke. Cyber-Physical Systems
(CPS) integrate computing, networking, and physical processes to digitally exe-
cute tasks on or using the physical elements of a system. Power microgrids are a
particular kind of CPS that enables management and autonomic control of local
smart grids, aiming at reliability, fault tolerance and energy eciency, among
other goals. Thw paper explores a new approach based on MDE that uses models
at runtime techniques to manage and control microgrids. The approach employs
a model execution engine that manages a causally connected runtime model of
the microgrid and interprets user-dened models in order to generate controls for
the microgrid elements. The authors demonstrate the approach by building the
lower layer of the model execution engine. Furthermore, they explored a model-
driven technique to build the execution engine and use the resulting experience
to argue that the approach can be extended to other kinds of cyber-physical
systems.
                                                                                   3

Session 2: Enterprise and Cloud
A Tool for Collaborative Evolution of Enterprise Architecture Models at Runtime
by Sascha Roth, Matheus Hauder and Florian Matthes. In this paper, the au-
thors propose a solution that empowers stakeholders to reveal their information
demand collaboratively to facilitate Enterprise Architecture (EA) models that
evolve with changing information demands at runtime. They present core con-
cepts of our approach and insights of an implementation thereof as foundation
to achieve our long-term goal of evolving EA models. In their implementation
we extend a collaboration platform with capabilities to monitor the actual in-
formation demand and to maintain the EA model referring to this demand at
runtime.


Towards Business Process Models at Runtime by Thomas Johanndeiter, Anat
Goldstein and Ulrich Frank. Business Process Management (BPM) suers from
inadequate con-cepts and tools for monitoring and evaluation of process execu-
tions at runtime. Conversely, models at runtime promise to give insights into the
state of a soft-ware system using the abstract and concrete appearance of de-
sign time process models. Therefore, the authors at rst advocate to use models
at runtime in business process (BP) modeling. Then, we outline the implemen-
tation of a prototypical modeling framework for BP runtime models based on
metaprogramming. This framework supports the integration of BP type mod-
els - models that are en-hanced with statistics of runtime data - and instance
models - visual representa-tions of executed BPs - resulting in versatile process
monitoring dashboards. The approach is superior to object-oriented program-
ming, as it provides a common representation for models and code at various
levels of classication, and represents an attractive alternative to object-oriented
languages for the im-plementation of runtime models in general.


Models@Runtime to Support the Iterative and Continuous Design of Autonomic
Reasoners by Franck Chauvel, Nicolas Ferry and Brice Morin. Modern soft-
ware systems evolve in a highly dynamic and open environment, where their
supporting platforms and infrastructures can change on demand. Designing and
operating holistic controllers able to leverage the adaptation capabilities of the
complete software stack is a complex task, as it is no longer possible to foresee all
possible environment states and system congurations that would properly com-
pensate for them. The paper presents our experience in using models@runtime
to foster the systematic design and evaluation of self-adaptive systems, by en-
abling the coevolution of the reasoning engine and its environment. The research
was carried out in the context of the Diversify project, which explores how bio-
diversity can be used to enhanced the design of self-adaptive mechanisms.



Session 3: Model Extraction and Conguration
Exploring the use of metaheuristic search to infer models of dynamic system
behaviour by James Williams, Simon Poulding, Richard Paige and Fiona Po-
lack. As software systems become more pervasive and increase in both size and
4

complexity, the requirement for systems to be able to self- adapt to changing
environments becomes more important. The paper describes a model-based ap-
proach for adapting to dynamic runtime environments using metaheuristic op-
timisation techniques. The metaheuristics exploit metamodels that capture the
important components in the adaptation process. Firstly, a model of the envi-
ronment's behaviour is extracted using a combination of inference and search.
The model of the environment is then used in the discovery of a model of op-
timal system behaviour    i.e. how the system should best behave in response to
the environment. The system is then updated based on this model. The paper
focuses on investigating the extraction of a behaviour model of the environment
and describes how our previous work can be utilised for the adaptation stage.
The authors contextualise the approach using an example and analyse dierent
ways of applying the metaheuristic algorithms for discovering an optimal model
of the case study's environment.



Simon Spinner, Samuel Kounev, Xiaoyun Zhu and Mustafa Uysal. Towards On-
line Performance Model Extraction in Virtualized Environments. Virtualization
increases the complexity and dynamics of modern software architectures mak-
ing it a major challenge to manage the end-to-end performance of applications.
Architecture-level performance models can help here as they provide the model-
ing power and analysis exibility to predict the performance behavior of applica-
tions under varying workloads and congurations. However, the construction of
such models is a complex and time-consuming task. In this position paper, the
authors discuss how the existing concept of virtual appliances can be extended to
automate the extraction of architecture-level performance models during system
operation.



Yihan Wu, Ying Zhang, Yingfei Xiong, Xiaodong Zhang and Gang Huang. To-
wards RSA-based HA conguration in Cloud. High availability (HA) is a crucial
concern in cloud systems. However, guaranteeing HA is challenging because of
the complex runtime cloud environment, large number of HA mechanisms avail-
able, error-prone HA conguration, and ever-needed dynamic adjustment. In
this study, the authors leverage runtime system architecture (RSA) for auto-
matic conguration of HA in a cloud. With a causal connection between RSA
and its corresponding cloud system, our approach has the following advantages.
1) The runtime changes of the system are abstracted, collected, and reected on
the RSA continuously, simplifying HA information collection. 2) With a model-
based HA analyzer working on the collected HA-related information, an ap-
propriate HA style (HAS) can be automatically selected for application to the
current system. 3) Changing a HAS on RSA at runtime changes the system HA
mechanism, which is suitable for the complex and ever-changing cloud environ-
ment. They implemented a prototype of our approach and evaluated it using our
model-driven Yan-cloud platform.
    The presentations and slides associated with discussions are in the web pages
of the workshop.
                                                                                5

3 Discussion and Classication of Presented and
  Discussed Approaches
At the end of the third session discussion topics were identied. All participants
agreed on aiming for a classication of the approaches presented at the workshop
using the following ve dimensions:

1. Runtime Model: What is the runtime model in the approach ?
2. Purpose: What is its purpose?
3. User: Who is using it?
4. Properties: What are its properties?
5. Reection: Is the runtime model used for reection?

   Eight (8) approaches were classied according to these dimensions. The ap-
proaches discussed were approaches developed by people who were in the dis-
cussions and were not necessarily related to the papers presented earlier during
this workshop but certainly use runtime models.
   In order to do the classication, the eight approaches were explained to the
rest of the audience by at least one person. Then, the approaches were assigned
to two (2) types based on this classication: (1) model-code synchronization and
(2) self-adaptive systems / system conguration, where the second type can be
further split by the applied domain into (2a) general purpose and (2b) cloud. Of
course, further domains exist, e.g., mobile devices and cyber-physical systems,
but approaches of these domains were not been discussed at the workshop. The
results of the discussions can be summarized as follows:



(1) Approaches on Model-Code Synchronization
Michael Szvetits (University of Applied Sciences Wiener Neustadt) 
Interactive Visualization
Runtime Model:       Class and sequence diagrams (design time).
Purpose:             Extraction of information from the running system.
User:                Developers use models to understand the design and
                     the running system.
Properties:          Descriptive; there are trace links between model ele-
                     ments and runtime elements.
Reection:           Is used to determine relevant information.
Mohammed Al-Refai (Colorado State University, USA)  Fine-
grained Adaptation Framework (FiGA) [1] (not discussed as a paper in
this workshop)
Runtime Model:       Class, sequence and activity diagrams.
Purpose:             Enables developers to change the system at runtime
                     by applying changes to the runtime models.
User:                Developers.
Properties:          Visual (representation of source code), abstract, not
                     executable, descriptive.
Reection:           Yes. Causal connection between models and code.
6

(2a) General Purpose Self-adaptive Systems
Simon Spinner (KIT, Germany)  Descartes Meta-Model
Runtime Model:      Architectural performance models, behavior mod-
                    els describing how the system utilizes resources and
                    adaptation models describing the adaptation process
                    and what can be adapted.
Purpose:            Optimization of ressource allocation to meet perfor-
                    mance objectives.
User:               Autonomous systems, i.e., the system is the user.
Properties:         Self-reective, self-predictive, course-grained (i.e., ar-
                    chitectural), interpretative.
Reection:          Yes. Causal connection between model and system.
Sebastian Götz (Technische Universität Dresden)  Multi-Quality
Auto-Tuning [2] (not discussed as a paper in this workshop)
Runtime Model:      Architecture of soft- and hardware, behavioral mod-
                    els to predict non- functional properties, Quality-of-
                    Service contracts covering non- functional behavior
                    of implementations and a model reecting the cur-
                    rent state of the overall system.
Purpose:            Optimal conguration meeting multiple objectives
                    concurrently.
User:               End-user or system are the user.
Properties:         descriptive, self-reective, self-predictive, interpreta-
                    tive, heterogeneous.
Reection:          Yes. Causal connection between model and running
                    system.
Nelly Bencomo (Aston University, UK)  Runtime Goal-based mod-
els for requirements-aware systems [3] (not discussed as a paper in this
workshop)
Runtime Model:      Requirement and goal models.
Purpose:            Self-adaptive system, thus, conguration.
User:               End-user or system itseldcan be user.
Properties:         Descriptive
Reection:          Top-down, but not bottom-up.



(2b) Self-adaptive Systems in Cloud Environments
Nicolas Ferry (SINTEF, Norway)  CloudML
Runtime Model:      Model describing the distribution of components in
                    a cloud environment.
Purpose:            Service Provisioning, Optimal Deployment meeting
                    objectives.
User:               End-user or system can be the user (also simultane-
                    ously).
Properties:         Descriptive, can be simulated, i.e., interpretable.
Reection:          Yes. Causal connection between model and system.
                                                                               7

   Xiadong Zhang (Peking University)  SM@RT
   Runtime Model:       Architecture model of a cloud environment.
   Purpose:             Optimal conguration meeting cost minimization ob-
                        jective.
   User:                Enterprises (i.e., management sta ) and administra-
                        tors.
   Properties:          heterogeneous, descriptive.
   Reection:           Yes. Causal connection between model and system.


   Interestingly, all participants could immediately classify their approach by
answering the ve questions. Thus, for future work, we plan to do a broader
discussion to collect more approaches based on models at runtime and, in con-
sequence, identify more types of approaches.
   The classication shown above for the presented approaches can certainly be
applied to other approaches. The classication shows that "models@runtime"
has evolved as a paradigm covering new types of dynamic systems (like the
CPSs described above) and enables a structured investigation of domains like
safety (by separation of concerns due to models). Note that during the edition
of the workshop last year, models@runtime has been discussed much more fun-
damentally (e.g., executable models vs. runtime models). This year we saw the
application of the paradigm to various domains. A more extensive application of
this classication can certainly be useful as a way to evaluate and compare the
approaches developed based on the use of runtime models so far.




4 Final Remarks
A general wrap-up discussion was held at the very end of the afternoon. The
workshop was closed with a friendly thank you from the organizers to all par-
ticipants for a fruitful workshop. After the workshop, the organizers used the
feedback from attendees and PC members to conclude that there is still need for
the discussions in this workshop for next yeareven after eight years. However,
we are planning a new approach for next year while doing the call for papers. It
was concluded that the research topic of the workshop has got a certain level of
maturity. Several approaches exist and have been applied along all these years
and certainly the workshop should take those facts into account.




Acknowledgements
We would also like to thank the members of the program committee who acted as
anonymous reviewers and provided valuable feedback to the authors: Christoph
Bockisch, Walter Cazzola, Lars Grunske, Martin Gogolla, Bradley Schmerl, Hui
Song, Matthias Tichy, Franck Chauvel, Peter J. Clarke, Fabio Costa, Holger
Giese, Gang Huang, Jean-Marc Jezequel, Rui Silva Moreira, Brice Morin, Hausi
Müller, Arnor Solberg, Mario Trapp and Thaís Vasconcelos Batista.
8

References
1. Cazzola, W., Rossini, N.A., Al-Refai, M., France, R.: Fine-grained software evolution
   using uml activity and class models. In: To be published in Proceedings of the 16th
   ACM/IEEE International Conference on Model Driven Engineering Languages and
   Systems, Springer (2013)
2. Götz, S., Wilke, C., Cech, S., Aÿmann, U.: Architecture and Mechanisms for Energy
   Auto Tuning. In: Sustainable ICTs and Management Systems for Green Computing.
   IGI Global (June 2012) 4573
3. Bencomo, N., Whittle, J., Sawyer, P., Finkelstein, A., Letier, E.: Requirements re-
   ection: Requirements as runtime entities. In: Proceedings of the 32nd ACM/IEEE
   International Conference on Software Engineering, Cape Town, South Africa, ACM
   (May 2010) 199202