Für eine korrekte Darstellung dieser Seite benötigen Sie einen XHTML-standardkonformen Browser, der die Darstellung von CSS-Dateien zulässt.

. .

ASE 2017 - Incrementally Slicing Editable Sub-Models

Christopher Pietsch, Manuel Ohrndorf, Udo Kelter
Software Engineering Group
University of Siegen
{cpietsch, mohrndorf, kelter}@informatik.uni-siegen.de
Timo Kehrer
Department of Computer Science
Humboldt-University of Berlin


Model slicers are tools which provide two services: (a) finding parts of interest in a model and (b) displaying these parts somehow or extract these parts as a new, autonomous model, which is referred to as slice or sub-model. This paper focusses on the creation of editable slices, which can be processed by model editors, analysis tools, model management tools etc. Slices are useful if, e.g., only a part of a large model shall be analysed, compared or processed by time-consuming algorithms, or if sub-models shall be modified independently. We present a new generic slicer which can slice models of arbitrary type and which creates slices which are consistent in the sense that they are editable by standard editors. It is built on top of a model differencing framework and does not require additional configuration data beyond those available in the differencing framework. The slicer is incremental in the sense that it can adapt an existing slice if the specification of the contents of a slice is changed, even if the slice has been edited meanwhile. We demonstrate the usefulness of our slicer with a large UML model in four different scenarios.


Download and Installation

A SiLift release including a facility for model slicing can be obtained from the following Update Site:

  • http://pi.informatik.uni-siegen.de/projects/SiLift/ase2017/updatesite

Installation Requirements

  • Eclipse Neon Modeling Tools (Includes the Eclipse Modeling Framework).
  • EMF Henshin (version 1.4) from the following Update Site:
    • http://download.eclipse.org/modeling/emft/henshin/updates/release

Case Study

Quick Introduction