Die wichtigsten Aspekte eines Konfigurationsmanagementsystems sind in der Regel die folgenden:
-
Änderungsanfragemanagement
-
Konfigurationsmanagement
-
Änderungsverfolgung
-
Versionsauswahl
Konfigurationsmanagementsysteme können auch Folgendes umfassen:
-
Softwareherstellung
-
Abrechnung und Bewertung des Konfigurationsstatus
Der folgende Kubus, der die gegenseitigen Abhängigkeiten darstellt, dient zur Verdeutlichung der wichtigsten Aspekte
eines Konfigurationsmanagementsystems.
-
Änderungsanfragemanagement (CRM, Change Request Management): Beschäftigt sich mit der
Organisationsinfrastruktur, die erforderlich ist, um die Kosten, den Zeitplan und die Auswirkungen einer
angeforderten Änderung für das vorhandene Projekt abzuschätzen. Das Änderungsanfragemanagement geht auf die
Arbeiten eines Änderungsprüfteams und des Change Control Board ein.
-
Konfigurationsstatusabrechnung (Bewertung:) Beschreibt den 'Zustand' des Produkts basierend auf Typ, Anzahl,
Rate und Schweregrad der gefundenen und behobenen Mängel im Verlauf der Produktentwicklung. Die unter diesem Aspekt
abgeleiteten Metriken (anhand von Prüfungen oder Rohdaten) sind hilfreich, um die Vollständigkeit des Projekts
insgesamt zu bestimmen.
-
Konfigurationsmanagement (CM, Configuration Management): Beschreibt die Produktstruktur und gibt die
Konfigurationselemente an, die als einzelne Entitäten mit Versionsangabe im Konfigurationsmanagementprozess
behandelt werden. Das Konfigurationsmanagement beschäftigt sich mit der Definition von Konfigurationen, dem
Erstellen und Bezeichnen sowie mit der Erfassung versionsgesteuerter Arbeitsergebnisse zu konstituierenden Gruppen
und der Verwaltung der Rückverfolgbarkeit zwischen diesen Versionen.
-
Änderungsverfolgung: Beschreibt, welche Änderungen an Elementen vorgenommen werden, aus welchem Grund und zu
welcher Zeit. Sie dient als Historie und Begründung für Änderungen. Die Änderungsverfolgung ist nicht
gleichzusetzen mit der Bewertung der Auswirkungen vorgeschlagener Änderungen, die unter
'Änderungsanfragemanagement' beschrieben ist.
-
Versionsauswahl: Mit einer sorgfältigen 'Versionsauswahl' kann sichergestellt werden, dass die richtigen
Versionen von Konfigurationselementen für eine Änderung oder Implementierung ausgewählt werden. Die Versionsauswahl
stützt sich auf eine solide 'Konfigurationsidentifikation'.
-
Softwareherstellung: Beschäftigt sich mit der Anforderung, Schritte zum Kompilieren, Testen und Packen von
Software für den Vertrieb zu automatisieren.
Rational Unified Process beschreibt ein umfassendes Konfigurationsmanagementsystem, das alle Aspekte des
Konfigurationsmanagements abdeckt. Ein effektiver Konfigurationsmanagementprozess
-
muss in den Softwareentwicklungsprozess integriert werden,
-
verwaltet die Weiterentwicklung von Arbeitsergebnissen in der Softwareentwicklung,
-
ermöglicht Entwicklern die Ausführung von Konfigurationsmanagementaufgaben bei minimalem Eingriff in den
Entwicklungsprozess.
Ein Ziel des Konfigurationsmanagementprozesses von Rational ist die Verwaltung von Arbeitsergebnissen, die in den
Entwicklungstools erfasst werden, unter Versionssteuerung zu stellen und von der ressourcenabträglichen Produktion von
Hardcopy-Dokumentationen an sich wegzukommen.
Ein weiteres Ziel des Konfigurationsmanagementprozesses von Rational ist sicherzustellen, dass die Kontrolle, der jedes
Arbeitsergebnis unterzogen wird, der Reife dieses Produkts entspricht. Mit zunehmender Reife der Arbeitsergebnisse
wandert die Änderungsberechtigung vom Implementierer zum Subsystem- bzw. Systemintegrator, dann zum Projektleiter und
schließlich zum Kunden.
Im Hinblick auf die Prozesseffektivität muss sichergestellt werden, dass der bürokratische Aufwand, der mit dem
Änderungsanfragemanagementprozess verbunden ist, der Reife des Produkts entspricht.
In frühen Iterationen kann der Änderungsanfragemanagementprozess (CRM-Prozess, Change Request Management) relativ
formlos sein. In den späteren Phasen des Entwicklungszyklus kann der CRM-Prozess strenger gehalten werden, um
sicherzustellen, dass die Test- und Dokumentationsverantwortlichen die Änderungen bewältigen können, und die mögliche
Instabilität einschätzen zu können, die eine Änderung mit sich bringen kann. Ein Projekt, das nicht in der Lage ist,
die Steuerungsebene während des Entwicklungsprozesses anzupassen, kann nicht optimal ausgeführt werden.
|