Def. Konfigurationsmanagement
Managementdisziplin, die über die gesamte Entwicklungszeit eines Erzeugnisses angewandt wird, um Transparenz und Überwachung seiner funktionellen und physischen Merkmale sicherzustellen. ...
Konfigurationsmanagement-Prozess umfasst diese 5 Tätigkeiten
Konfigurationsidentifizierung: Definition u. Dokumentation der Bestandteile eines Erzeugnisses,…
Konfigurationsüberwachung: Dokumentation u. Begründung von Änderungen, Planung von Freigaben, ...
Konfigurationsbuchführung: Rückverfolgung aller Änderungen bis zur letzten Bezugskonfiguration, ...
Konfigurationsauditierung: Qualitätssicherungsmaßnahmen für Freigabe einer Konfiguration eines Erzeugnisses
KM-Planung: Festlegung der Grundsätze und Verfahren zum KM in Form eines KM-Plans
Def. Dokument
Gegenstand, der der Konfigurationsverwaltung unterworfen wird (eine einzelne Datei oder ein ganzer Dateibaum oder ... )
Def. (Versions-) Objekt
Zustand eines Dokuments zu einem bestimmten Zeitpunkt in einer bestimmten Ausprägung
Def. Varianten
parallel zueinander (gleichzeitig) existierende Ausprägungen eines Dokuments, die unterschiedliche Anforderungen erfüllen
Def. Revisionen
zeitlich aufeinander folgende Zustände eines Dokuments
Def. Konfiguration
Komplexes Versionsobjekt, eine bestimmte Ausprägung eines Programmsystems
(oft hierarchisch strukturierte Menge von Dokumenten)
Def. Baseline
eine Konfiguration, die zu einem Meilenstein gehört und evaluiert wird
Def. Release
eine stabile Baseline, die ausgeliefert wird
Def. Versionsmanagement
Versionsmanagement befasst sich mit der Verwaltung der zeitlich aufeinander folgenden Revisionen eines Dokuments.
„Echt“ verteilte Versionierungs-Systeme
Jeder Benutzer hat sein eigenes vollständiges Repository (statt globale Repositories für Teilgruppen von Entwicklern wie bei ClearCase).
Verteilte „Peer-to-Peer“-Versionierung-Systeme:
Virtuell existiert ein gemeinsames globales Repository für alle Entwickler
Es gibt dennoch keinen ausgewählten zentralen Server
Tatsächlich besitzt jeder Peer ein eigenes Repository (mit allen Dateien oder ausgewählter Menge von Revisionen)
Das P2P-Versionierungs-System ist „immun“ gegen Ausscheiden einzelner Peers (Revisionen werden auf mehreren Peers gehalten)
Bei Netzpartitionierungen (Spezialfall: einzelner Entwickler arbeitet „offline“) wird je Partition ein eigener Branch angelegt
Schließen sich Partitionen wieder zusammen, dann werden Branches wieder verschmolzen (im allgemeinen mit Entwicklerhilfe)
Def. Variantenmanagement (Software-Produktlinie)
Das Variantenmanagement befasst sich mit der Verwaltung nebeneinander existierender Versionen eines Dokuments, die jeweils eine zeitliche Entwicklungsgeschichte besitzen.
Def. Software-Produkt-Linie
Eine Software-Produkt-Linie (SPL) ist eine Menge „verwandter“ Softwaresysteme
für eine bestimmte Anwendungsdomäne
die auf Basis einer gemeinsamen Plattform (Rahmenwerk)
entwickelt werden
Welche 2 Formen von SPLE gibt es?
Domänenentwicklung
Anwendungsentwicklung
Def. Releasemanagement
Ein Release ist eine an Kunden ausgelieferte Konfiguration eines (Software-) Systems bestehend aus ausführbaren Programmen, Bibliotheken, Dokumentation, Quelltexte, Installationsskripte, ... .
Das Releasemangement dokumentiert ausgelieferte Konfigurationen und stellt deren Rekonstruierbarkeit sicher.
Aufgaben des Releasemanagements
Festlegung der (zusätzlichen) Funktionalität eines neuen Releases
Festlegung des Zeitpunktes der Freigabe eines neuen Releases
Erstellung und Verbreitung eines Releases (siehe auch Buildmanagement)
Dokumentation des Releases:
welche Revisionen welcher Dateien sind Bestandteil des Releases
welche Compilerversion wurde verwendet
Betriebssystemversionen auf Entwicklungs- und Zielplattform
Planungsprozess für neues Release
Vorbedingungen für neues Release werden überprüft
Weiterentwicklung wird eingefroren (freeze): Feature Freeze (soft) & Code Freeze (hard)
Letzte Fehlerkorrekturen und umfangreiche Qualitätssicherungsmaßnahmen (Tests) werden durchgeführt
Release wird freigegeben und weiterverbreitet
Def. Änderungsmanagement
Ein festgelegter Änderungsmanagementprozess sorgt dafür, dass Wünsche für Änderungen an einem Softwaresystem protokolliert, priorisiert und kosteneffektiv realisiert werden
Last changed5 months ago