Informationen zum Lehrmodul
Vergleichen, Mischen, Vereinigen und
Konsolidieren von Versionen - ein Begriffsrahmen
Stand: 21.06.2019
-
Zusammenfassung dieses Lehrmoduls:
Der Begriff Version mit den Konkretisierungen Revision
und Variante ist ein Klassiker in der Softwaretechnik im
Bereich des Versions- und Konfigurationsmanagement
(VKM).
Das neuere Gebiet Software-Produktlinien (SPL) basiert
zentral auf dem Begriff Variante.
In beiden Bereichen treten z.T. die
gleichen
-
zumindest gleich benannte - Tätigkeiten mit Versionen auf,
u.a. Vergleichen, Mischen oder Vereinigen.
Tatsächlich sind die Versionsbegriffe und die damit
verbundenen Tätigkeiten und unterstützende
Werkzeugfunktionen signifikant verschieden.
In diesem Lehrmodul analysieren wir die Anforderungen in
beiden Bereichen, angefangen bei der Frage, welche
Probleme man durch Versionen überhaupt adressiert, bis
hin zur Frage, welche technischen Funktionen und
Algorithmen in welchen Kontexten sinnvoll sind.
-
Inhaltsverzeichnis:
1 Versionierung im Kontext von VKM und SPLE
1.1 Einordnung
1.2 Besonderheiten der modellbasierten Entwicklungsverfahren
1.3 Einbettung in das allgemeine Versionsmanagement
2 Warum überhaupt Versionen? - Problembereiche, Use Cases und Werkzeugfunktionen
3 Von Versionen adressierte Problembereiche
3.1 Projektdokumentation und historische Versionen
3.2 Varianten
3.2.1 Integrierte Repräsentationen von Mengen von Varianten
3.3 Unterstützung der Arbeitsteilung mit Arbeitskopien
4 Use Cases aus Sicht von Entwicklern
4.1 Use Cases vs. Problembereiche
4.2 Klassifikationsmerkmale der Use Cases
4.3 Übersicht über die Use Cases
5 Use Case: Vergleich von Dokumenten
5.1 Grundbegriffe
5.2 Grundformen der Differenzanzeige von zwei Dokumenten
5.2.1 Edit-Skript
5.2.2 Integrierte Paralleldarstellung
5.2.3 Selektierbare Liste lokaler Unterschiede
5.2.4 Darstellung in einem Vereinigungsdokument
5.3 Konzeptuelle Definitionen von Differenz
5.3.1 Asymmetrische Differenzen
5.3.2 Symmetrische Differenzen
5.3.3 Einfluß des Editierdatentyps
5.3.4 Konversionen von Differenzen
5.3.5 Korrespondierende ungleiche Dokumentelemente
5.4 Vergleich von n Dokumenten
5.4.1 Verallgemeinerbarkeit von 2-Wege-Vergleichsverfahren
5.4.2 n-Wege-Matchings
5.4.3 Darstellung von n-Wege-Matchings
6 Use Case: Propagation von Änderungen
6.1 Use Case: Patchen
6.2 Use Case: Workspace Update
7 Use Case: Mischen von Dokumenten
7.1 Adressierte Problembereiche
7.2 Änderungs- vs. zustandsbasiertes Mischen
7.3 Konflikte
7.4 Mischentscheidungen
7.5 Temporäre Gesamtdarstellungen der zu mischenden Varianten
8 Use Case: Erzeugen einer Gesamtdarstellung
8.1 Use Case: Erzeugen einer Gesamtdarstellung zwecks Einführung von SPL-Technologien
8.2 Use Case: Erzeugen einer Gesamtdarstellung für familienbasierte Analysemethoden
9 Use Case: Konsolidieren von Varianten
-
Vorausgesetzte Lehrmodule:
- empfohlen:
- Metamodelle
- Modellgetriebene Software-Entwicklung
-
Stoffumfang in Vorlesungsdoppelstunden: 2.0
-
Volltext des Skripts: PDF, 1-spaltig, DIN A5 (48 Seiten, 899 kB)
-
Folien zur Vorlesung: PDF, 4:3-Format (929 kB)
-
Begleitmaterial:
- entfällt -