Publications about SiDiff:
Publications about SiDiff:
-
[
Fa2007DA
]
Falk, Jens:
Entwicklung von Differenzmetriken und deren Visualisierung;
Diplomarbeit, Fachgruppe Praktische
Informatik, Universität Siegen;
2007
Deskriptoren: CVSM,
SiDiff,
models:difference:visualization,
PI -
[
Ga2007DAdiff
]
Gad, Adam:
Differenzbestimmung für Poseidon-UML-Diagramme;
Diplomarbeit, Fachgruppe Praktische Informatik, Universität Siegen;
2007
Deskriptoren: SiDiff,
models:difference,
CVSM,
PI -
[
Gr2008DA
]
Grassow, Oliver:
Vergleich molekularer Graphen mit Hilfe des
SiDiff-Algorithmus;
Diplomarbeit, Fachgruppe Praktische
Informatik, Universität Siegen;
2008
Download: Volltext
Deskriptoren: models:difference,
SiDiff,
PIAbstract: Die Bioinformatik beschäftigt sich unter anderem mit
dem medizinischen Teilbereich des Wirkstoffentwurfs. Ein wichtiger
Schritt innerhalb dieses Prozesses ist die Ermittlung von
Molekülstrukturen, die zu einem Anfragemolekül eine möglichst hohe
strukturelle Ähnlichkeit aufweisen. Der in der Fachgruppe der
Praktischen Informatik der Universität Siegen entwickelte
SiDiff-Algorithmus erfüllt die Aufgabe, Differenzen zwischen
unterschiedlichen Versionen eines technischen Dokuments zu
ermitteln und sehr detailliert anzuzeigen. Zu diesem Zweck werden
die Dokumente intern in Graphen umgewandelt, die anschließend
entsprechend des strukturellen Aufbaus sowie der Eigenschaften der
Elemente verglichen werden. Aufgrund dieses strukturellen
Vergleichsablaufs, der Hochkonfigurierbarkeit des Algorithmus und
der ausgesprochen detaillierten Differenzermittlung wird in der
vorliegenden Arbeit untersucht, inwieweit der SiDiff-Algorithmus
geeignet ist, um molekulare Graphen effizient miteinander zu
vergleichen. Im Rahmen dieser Arbeit wird ein Verfahren
vorgestellt, mit dessen Hilfe Substrukturen in Form von
funktionellen Gruppen in den zu vergleichenden Molekülen markiert
werden können, um diese mit zusätzlichen Eigenschaften
anzureichern. Ausgelegt auf den Vergleich dieser markierten
Moleküle erfolgt anschließend eine Anpassung und Konfiguration des
Vergleichswerkzeugs. Anhand eines Testdatenbestands wird die
Genauigkeit und Effizienz der eingesetzten Verfahren
untersucht. -
[
Hu2007DA
]
Hutter, Hermann:
Nachverfolgbarkeit von Modellelementen in
Versionshistorien;
Diplomarbeit, Fachgruppe Praktische
Informatik, Universität Siegen;
2007
Deskriptoren: CVSM,
SiDiff,
PI,
models:histories -
[
Ke2007LMdif
]
Kelter, Udo:
Lehrmodul Dokumentdifferenzen;
Fachgruppe Praktische Informatik,
Universität Siegen;
2007
Download: Volltext
Deskriptoren: SiDiff,
models:difference,
models:difference:visualization,
models:difference:notions,
PI,
CVSMAbstract: Differenzen zwischen Dokumenten werden
im Rahmen des Konfigurationsmanagements sowohl
wegen der internen Speicherplatzersparnis als
auch zur Dokumentation des Entwicklungsvorgangs
benutzt. Mit Differenzen hängen Mischungen
zusammen. Textuelle, graphische, XML- und
sonstige Dokumente müssen bzgl. der Differenzen
teilweise speziell behandelt werden, es gibt aber
auch sehr viele Gemeinsamkeiten. Dieses Lehrmodul
definiert einen Begriffsrahmen für den
Problembereich; dabei wird versucht, die
Gemeinsamkeiten von Differenzen bzw.
Differenzwerkzeugen bei den unterschiedlichen
Dokumenttypen herauszuarbeiten. -
[
Ke2007VVUM
]
Kelter, Udo:
Begriffliche Grundlagen von
Modelldifferenzen;
Positionspapier für Workshop "Vergleich
und Versionierung von UML-Modellen" (VVUM07),
GI-Tagung Software Engineering (SE2007), Hamburg,
März 2007; erscheint in: Softwaretechnik-Trends
27:2;
2007
Download: Volltext
Deskriptoren: SiDiff,
models:difference:notions,
CVSM,
PI -
[
Ke2009LLSS
]
Kelter, Udo:
Repository-Dienste für die modellbasierte
Entwicklung;
p.76-86
in:
Design4Future 2009 - Proc. 1. Workshop des
GI-Arbeitskreises Langlebige Softwaresysteme
(L2S2): "Design for Future - Langlebige
Softwaresysteme", Karlsruhe, Germany, October
15-16, 2009;
CEUR Workshop Proceedings, Vol. 537;
CEUR-WS.org;
2009
Download: Volltext auf ceur-ws.org
Deskriptoren: SiDiff,
PI,
CVSMAbstract: Viele langlebige Systeme existieren in
mehreren Varianten, die parallel weiterentwickelt
werden müssen. Hierzu werden unterstützende
Repository-Dienste benötigt, neben dem klassischen
Mischen von Dokumenten auch Historienanalysen. Bei
Systemen, die mit modellbasierten Methoden
(weiter-) entwickelt werden, ergeben sich besondere
Probleme, weil auch die Modelle mitversioniert und
in die Analysen einbezogen werden müssen. Dieser
Workshopbeitrag beschreibt dieses Problemfeld
genauer und skizziert Lösungsansätze, die im Rahmen
des SiDiff-Projekts entwickelt wurden. -
[
KeS2008CVSM
]
Kelter, Udo;
Schmidt, Maik:
Comparing State Machines;
p.1-6
in:
Proc. 2008 Intl.
Workshop on Comparison and Versioning of Software
Models;
ACM;
2008
Deskriptoren: SiDiff,
CVSM,
CVSM08,
PI,
models:differenceAbstract: State machines and similar state models are heavily
used model types in model-driven development. This paper discusses
how state models can be compared, more precisely how the
difference between two state models should be defined, how it can
be efficiently computed, and how it can be displayed. Some of the
issues result from an inappropriate design of the UML metamodels
and can be solved by switching to a more appropriate metamodel.
Another issue are move operations, which raise the question how to
optimize a difference. We argue in favour of simple heuristics and
the interactive correction of a difference. -
[
KeWN2005SE
]
Kelter, Udo;
Wehren, Jürgen;
Niere, Jörg:
A Generic Difference Algorithm for UML Models;
p.105-116
in:
Software Engineering 2005. Fachtagung des
GI-Fachbereichs Softwaretechnik, 8.-11.3.2005,
Essen;
LNI 64, GI;
2005
Library Entries:
bibtex@DBLP
Deskriptoren: SiDiff,
models:difference,
CVSM,
PIAbstract: Abstract: It is state-of-the-art to use the Unified Modelling Language (UML) to
describe software system models. In order to support cooperative team work a version
management system which supports UML models is absolutely necessary. The essential
part of such systems is the ability to calculate differences and present them to the
developer. This paper presents an approach for computing differences between UML
models encoded as XMI files. In contrast to our previous work, we present a generic
approach, with which we are able to cover a broad range of UML diagram types. It
also does not require persistent identifiers of diagram elements. Our prototype
implementation shows, that our difference algorithm used leads to good runtimes in the case
of small documents and acceptable runtimes in the case of large documents. Overall,
it has a very low error rate, i.e. the quality of the differences is almost
optimal. -
[
Lu2006DA
]
Lück, Stephan:
Differenzberechnung hierarchischer Softwareentwicklungsmodelle;
University of Siegen;
2006
Deskriptoren: SiDiff,
models:difference,
CVSM,
PI -
[
Ni2004FD
]
Niere, Jörg:
Visualizing Differences of UML Diagrams With Fujaba;
in: Proceedings of the International
Fujaba Days 2004, Paderborn, Germany, September
2004;
2004
Download: Volltext
Deskriptoren: SiDiff,
models:difference,
CVSM,
PI -
[
Pi2008DA
]
Pietsch, Pit:
Optimierung des SiDiff-Algorithmus unter
Ausnutzung modellspezifischer Eigenschaften und
Strukturen;
Diplomarbeit, Fachgruppe Praktische
Informatik, Universität Siegen;
2008
Download: Volltext
Deskriptoren: CVSM,
SiDiff,
PI,
models:difference,
optimizationAbstract: Die Differenzanalyse von technischen Dokumenten besitzt in ihrem Kern eine
quadratische Laufzeit. Auf die reale Laufzeit wirkt sich allerdings auch die
Komplexität der Vergleichsfunktionen aus, mit denen die Berechnung der
Ähnlichkeitswerte zwischen zwei Elementen erfolgt. In dieser Arbeit wird geprüft,
ob ein Verfahren aus der Bioinformatik, das fingerprintbasierte Screening, dazu
geeignet ist, schnell die Menge an Elementen zu bestimmen, die eine gute Aussicht
auf hohe Ähnlichkeit zu einem Musterelement besitzen. Auf diese Weise soll der
Aufwand für die Berechnung des Ähnlichkeitswertes zwischen Elementen mit
wenig Gemeinsamkeit gespart werden. Wie gezeigt wird, lässt sich die reale
Laufzeit der Differenzanalyse mitunter drastisch verkürzen. Allerdings sind die
erzielten Ergebnisse kritisch zu sehen, da das Verfahren in seinem neuen
Anwendungskontext einzig ein heuristischer Ansatz ist, der keine Garantie auf eine
Berechnung optimaler Ergebnisse geben kann. -
[
Sc2007VVUM
]
Schmidt, Maik:
SiDiff: generische, auf Ähnlichkeiten
basierende Berechnung von Modelldifferenzen;
Positionspapier für Workshop "Vergleich
und Versionierung von UML-Modellen" (VVUM07),
GI-Tagung Software Engineering (SE2007), Hamburg,
März 2007; erscheint in: Softwaretechnik-Trends
27:2;
2007
Download: Volltext
Deskriptoren: SiDiff,
models:difference,
CVSM,
PI -
[
ScG2008ICSEC
]
Schmidt, Maik;
Gloetzner, Tilman:
Constructing Difference Tools for Models
Using the SiDiff Framework;
p.947-948
in:
Companion Volume, ICSE 2008,
May 1018, 2008, Leipzig, Germany;
ACM Press;
2008
Deskriptoren: SiDiff,
CVSM,
PI,
models:difference,
models:difference:visualizationAbstract: Model-driven development requires a full set of
development tools. While technologies for constructing graphical
editors, compilers etc. are readily available, there is a lack of
approaches for constructing version management tools which compare
models and show their difference. The general problem is
aggravated by the fact that such tools must consider the semantics
of each particular model (or diagram) type, i.e. a whole family of
tools needs to be constructed. This research demonstration shows
how such families of difference tools can be constructed using the
SiDiff framework. -
[
ScW2007MDSE
]
Schmidt, Maik;
Wenzel, Sven:
"Ahnlichkeitsbasierte Berechnung von
Simulink-Modelldifferenzen mit SiDiff;
p.61-71 in: Proc. Modellbasierte Software-Entwicklung
für eingebettete Systeme, 2. Workshop der Special
Interest Group "Model-Driven Software Engineering",
Stuttgart, 2007; ISBN 978-3-8325-1595-9;
2007
Deskriptoren: SiDiff,
CVSM,
PI,
models:difference -
[
ScWK2009SE
]
Schmidt, Maik;
Wenzel, Sven;
Kelter, Udo:
Transaktionsorientiertes Mischen von
Modellen;
p.165-170
in:
Software Engineering 2009. Fachtagung des
GI-Fachbereichs Softwaretechnik, 02.-06.03. 2009
in Kaiserslautern;
LNI 143, GI;
2009
Deskriptoren: SiDiff,
PI,
CVSM,
models:mergingAbstract: Modellbasierte Softwareentwicklung wird zunehmend
gängige Praxis. Da immer umfangreichere Modelle arbeitsteilig in
Teams entwickelt werden, sollte das parallele Bearbeiten von
Modellen durch ähnliche Mischfunktionen unterstützt werden, wie
man es für textuelle Dokumente gewohnt ist. Wir analysieren
zunächst die technischen Randbedingungen bei der modellbasierten
Softwareentwicklung; demzufolge müssen Mischprozesse bei Modellen
anders gestaltet werden als bei Texten. Auf dieser Basis stellt
das Papier ein Design für Mischwerkzeuge vor, das einen hohen Grad
an Konsistenz der Mischergebnisse erzielt und gleichzeitig
Verluste an Arbeit infolge von Konfliktauflösungen
minimiert. -
[
ScWKK2009CVSM
]
Schmidt, Maik;
Wenzel, Sven;
Kehrer, Timo;
Kelter, Udo:
History-based Merging of Models;
p.13-18
in:
Proc. 2009 ICSE
Workshop on Comparison and Versioning of Software
Models;
IEEE, Catalog Number CFP0923G;
2009
Deskriptoren: SiDiff,
CVSM,
CVSM09,
PI,
models:mergingAbstract: Model-driven development in
collaborative teams requires services for merging
models. Such services should have the same quality
as one is used to for source code. The constraints
which are relevant in model driven engineering
imply that the merging of models must be
implemented differently than merging of texts.
Based on the analysis of these constraints, we
present an approach for merging models that attains
a high level of consistency of the merged models
and minimizes the loss of effort due to conflict
resolution. -
[
StDGKSZ2007Dagst
]
Stürmer, I.;
Dörr, H.;
Giese, H.;
Kelter, Udo;
Schürr, Andy;
Zündorf, Albert:
Das MATE Projekt - Visuelle Spezifikation von MATLAB
Simulink/Stateflow Analysen und Transformationen;
p.83-94 in: Proc. Workshop Modellbasierte Entwicklung
Eingebetteter Systeme III (MBEES'07), Schloß Dagstuhl, Germany, Jan.
2007;
2007
Download: Volltext MBEES07
Deskriptoren: CVSM,
SiDiff,
PI,
models:differenceAbstract: Abstract: Die modellbasierte Entwicklung beginnt sich
als Standardparadigma in der Steuergerätesoftwareentwicklung zu
etablieren. Um die Wirksamkeit und Effizienz der modellbasierten
Entwicklung zu erhöhen, sind Richtlinien für die Modellierung
unerlässlich. Diese manuell zu überprüfen ist aufwändig und
fehleranfällig. Das Projekt MATE (MATLAB Simulink/Stateflow Analysis
and Transformation Environment) hat sich deshalb zum Ziel gesetzt,
die bislang meist manuelle Prüfung der Einhaltung bzw. Verletzung
von Modellierungsrichtlinien zu automatisieren, sowie vor allem
Modelltransformationen zur Korrektur entdeckter Mängel und zur
Unterstützung von Entwicklungsschritten und die Visualisierung der
Unterschiede verschiedener Entwicklungsstände zu
untersuchen. -
[
Tr2007DA
]
Treude, Christoph:
Einsatz multidimensionaler Suchstrukturen
zur Optimierung der Bestimmung von
Dokumentdifferenzen;
Diplomarbeit, Fachgruppe Praktische
Informatik, Universität Siegen;
2007
Deskriptoren: CVSM,
SiDiff,
PI,
models:differenceAbstract: Durch den Trend zu modellbasierter Entwicklung hat die Bedeutung von
Differenzwerkzeugen für Modelldokumente stark zugenommen. Differenzen sind besonders
zwischen unterschiedlichen Versionen eines Dokuments und bei Beteiligung mehrerer
Personen an der Entwicklung eines Dokuments von Interesse.
Die Berechnung von Differenzen zwischen nicht-textuellen Dokumenten gestaltet
sich deutlich komplexer als zwischen reinen Textdokumenten. Dabei werden
Modelldokumente meist als getypte Graphen interpretiert, in denen die einzelnen Elemente
der Dokumente durch Knoten repräsentiert werden. Im Zuge der Differenzberechnung
werden alle Elemente der zu vergleichenden Dokumente paarweise und
gruppiert nach ihren Typen verglichen.
Um die daraus resultierende quadratische Laufzeit, die vor allem für größere
Dokumente inakzeptabel ist, zu verringern, wird in dieser Arbeit mit dem S3V Baum eine
hauptspeicherbasierte, hochdimensionale und balancierte Datenstruktur zur Verwaltung
von Dokumentelementen vorgestellt, die ähnliche Elemente benachbart anordnet. Somit
müssen nicht alle Elemente betrachtet werden, um zu einem gegebenen
Element die Menge der ähnlichen Elemente in anderen Dokumenten zu finden.
Da der S3V Baum numerische Vektoren verwaltet, werden weiterhin mit
lexikalischen und metrischen Indizes zwei Mechanismen dargestellt, mit
denen Dokumentelemente auf Vektoren abgebildet werden können. Metrische Indizes basieren auf
dem Konzept von Software-Metriken und bilden Eigenschaften der Elemente auf
Zahlen ab. Das Ziel lexikalischer Indizes ist die Erfassung von Namensähnlichkeiten
durch den Einsatz von Namen bzw. Namensteilen als Vektorindizes.
Für die Integration der Datenstruktur in die Differenzberechnung ergeben sich
mehrere Alternativen, die in dieser Arbeit aufgezeigt werden. Die abschließende
Evaluierung des Ansatzes vor allem mit UML-Klassendiagrammen hat ergeben, dass
die Laufzeit für große Dokumente teilweise um einen Faktor von bis zu 50 reduziert
werden kann -
[
TrBWK2007ESEC
]
Treude, Christoph;
Berlik, Stefan;
Wenzel, Sven;
Kelter, Udo:
Difference Computation of Large Models;
p.295-304 in: 6th Joint Meeting of the
European Software Engineering Conference and the
ACM SIGSOFT Symposium on the Foundations of
Software Engineering, Sep 3 - 7, Dubrovnik,
Croatia;
2007
Library Entries:
bibtex@DBLP,
ACM Digital Library
Deskriptoren: models:difference,
CVSM,
SiDiff,
PIAbstract: Modern software engineering practices
lead to large models which exist in many versions.
Version management systems should offer a service
to compare, and possibly merge, these models. The
computation of a difference between large models is
a big challenge; current algorithms are too
inefficient here. We present a new technique for
computing differences between models. In practical
tests, this technique has been an order of
magnitude faster than currently known algorithms.
The main idea is to use a high-dimensional search
tree for efficiently finding similar model
elements. Individual elements are mapped onto a
vector of numerical values using a collection of
metrics for models and a numerical representation
of the names which occur in a model -
[
We2004DA
]
Wehren, Jürgen:
Ein XMI-basiertes Differenzwerkzeug für UML-Diagramme;
Diploma Thesis (in German), University
of Siegen, Germany, 2004;
2004
Deskriptoren: CVSM,
SiDiff,
PI,
models:differenceAbstract: Die Entwicklung von Softwaresystemen wurde in den letzten Jahren fortschreitend
komplexer. Dabei geht der Trend dahin, immer mehr Systeme zu
integrieren. Bei einer hohen Komplexit¨at und Gr¨oße eines zu entwickelnden
Softwaresystems wird es notwendig, dass mehrere Entwickler bereits in den
fr¨uhen Phasen an der Erstellung von entsprechenden Modellen der Systeme
beteiligt sind.
Eine solche teamorientierte Entwicklung ben¨otigt entsprechende Werkzeuge.
Dabei sind unter anderem die Versionierung und daraus folgend die
Differenzberechnung von Dokumenten von Bedeutung. In sp¨aten Phasen der
Softwareentwicklung geh¨ort die Verwendung von entsprechenden Werkzeugen
zur Tagesordnung. W¨ahrend der Analyse sind vergleichbare Werkzeuge
allerdings noch nicht so verbreitet. Das liegt daran, dass die etabliertenWerkzeuge
passende Funktionalit¨aten gar nicht oder nur unausgereift anbieten.
-
[
We2007VVUM
]
Wenzel, Sven:
Informationsgewinnung aus Modellhistorien;
Positionspapier für Workshop "Vergleich
und Versionierung von UML-Modellen" (VVUM07),
GI-Tagung Software Engineering (SE2007),
Hamburg, März2007; erscheint in: Softwaretechnik-Trends 27:2;
2007
Download: Volltext
Deskriptoren: CVSM,
SiDiff,
PI,
models:histories -
[
We2007WSR
]
Wenzel, Sven:
How to trace model elements;
In: 9. Workshop Software-Reengineering
(WSR'07). Bad Honnef, Germany. 2.-4. May
2007;
2007
Download: Volltext
Deskriptoren: CVSM,
SiDiff,
PI,
models:histories -
[
We2008CVSM
]
Wenzel, Sven:
Scalable Visualization of Model Differences;
p.41-46
in:
Proc. 2008 Intl.
Workshop on Comparison and Versioning of Software
Models;
ACM;
2008
Deskriptoren: CVSM,
SiDiff,
PI,
models:historiesAbstract: If large models are compared their difference can
contain a huge number of local changes. Conventional methods for
displaying differences cannot reasonably handle such large
differences. This paper proposes a solution to this problem. Our
approach is based on the concept of polymetric views and extends
it in two ways: firstly, we propose metrics for differences
which quantify properties of differences and distinguish
relevant from irrelevant changes. Moreover, we propose new
graphical features of polymetric views. This combination
provides a scalable presentation of differences which makes the
changes of large models comprehensible. -
[
WeHK2007SM
]
Wenzel, Sven;
Kelter, Udo;
Hutter, Hermann:
Tracing Model Elements;
p.104-113
in:
;
;
Deskriptoren: CVSM,
SiDiff,
PI,
models:historiesAbstract: In model-driven engineering developers work mainly or
only with models, which exist in many versions. This paper
presents an approach to trace single model elements or
groups of elements within a version history of a model. It
also offers analysis capabilities such as detection of logical
coupling between model elements. The approach uses
a differencing algorithm known as SiDiff to identify similar
elements in different versions of a model. SiDiff is highly
configurable and thus our tracing approach can be adapted
to all diagram types of the UML and to a large set of domain
specific languages. The approach has been implemented as
an Eclipse plug-in that visualizes all relevant information
about the traces and it allows developers to interactively
explore details. It has been evaluated by several groups of
test persons; they considered most of the functions of the
tool to be very useful. -
[
WeK2006PDRE
]
Wenzel, Sven;
Kelter, Udo:
Model-Driven Design Pattern Detection
Using Difference Calculation;
In: Proc. of the 1st International
Workshop on Pattern Detection For Reverse
Engineering (DPD4RE), co-located with 13th
Working Conference on Reverse Engineering
(WCRE'06). Benevento, Italy. October
2006;
2006
Deskriptoren: CVSM,
SiDiff,
PI,
models:design patternsAbstract: This paper addresses the question of how to detect instances
of patterns in software systems regarding model-driven development.
The knowledge about patterns used in a software
assists developers understanding large and complex
software systems. Since model-driven engineering is the
main philosophy of today~s software engineering and UML is
used as a standard language for modeling, developers should
be made familiar with pattern instances although they work
with models only -
[
WeK2008ICSE
]
Wenzel, Sven;
Kelter, Udo:
Analyzing Model Evolution;
p.831-834
in:
Proc. 30th International
Conference on Software Engineering, Leipzig,
Germany, May 1018, 2008 (ICSE'08);
ACM Press;
2008
Library Entries:
bibtex@DBLP
Deskriptoren: CVSM,
SiDiff,
PI,
models:historiesAbstract: Model-driven development leads to
development processes in which a large number of
different versions of models are produced. We
present FAME, a tool environment which enables
fine-grained analysis of the version history of a
model. The tool is generic in the sense that it
can work with various model types including UML
and domain-specific languages.