Konzeption und Einführung eines unternehmensweiten Softwarekonfigurationsmanagements
Problemstellung
Aufgrund der historisch gewachsenen Umgebung für Host und Client Server Entwicklungen an verschiedenen Standorten wurde der Entwicklungszyklus zunehmend komplexer und schwer nachvollziehbar für alle Beteiligten. Durch unterschiedliche Build- und Verteilmechanismen auf den verschiedenen Plattformen kam es zu unterschiedlichsten Vorgehensweisen auf den Entwicklungssystemen. Dieses hatte u.a. eine teilweise redundante Sourcenhaltung in CA Libarian und PVCS Version Manager zur Folge. Aufgrund der bestehenden Vorgehensweisen war z.B. eine Konfiguration nur mit erhöhtem Aufwand wiederherstellbar. Unter diesen Umständen, konnte es zwangsläufig zu Problemen beim Aufbau und Erhalt von Testumgebungen kommen. Die Entwicklung fand auf unterschiedlichen Betriebssystemen statt, wobei jede Plattform über eine eigene Versionierung verfügte. Durch die teilweise sehr "starre" Implementierung ergaben sich oftmals Probleme bei der Implementierung neuer Anforderungen seitens der Entwickler (z.B Java).
Definierte Ziele
- Einführung eines "Single Point of Change", d.h. alle Änderungen werden an einer zentralen Stelle gesammelt, unabhängig von der Zielplattform für die entwickelt wird.
- Etablierung eines "Single Point of View"; unabhängig von der jeweiligen Rolle die innerhalb des Entwicklungsprozesses eingenommen wird (Entwickler, Changemanager etc.), steht ein zentraler Punkt zur Verfügung, aus dem die Informationen entnommen werden.
- Änderungsanforderungen sollen nachvollziehbar bleiben. Die Anforderung und die daraus entstanden Modifikationen werden zueinander in Beziehung gesetzt.
- Modifikationen müssen von der ersten Anforderung bis zur Produktionsübergabe nachvollziehbar bleiben.
- Produktionsstände müssen auf Quellkodebasis wieder herstellbar sein.
- Korrekturen
- Revisionssicherheit
- Erarbeitung eines einheitlichen Entwicklungsprozesses.
- Unabhängig von der Entwicklungssprache und der gewählten Werkzeuge.
- Reduzierung des Betreuungsaufwandes für verschiedene Entwicklungsumgebungen.
- Unterstützung der Entwickler, des Projektmanagements und der Administration.
Durchführung
Die Einführung von Merant Dimensions erfolgt schrittweise. In der ersten Phase werden die bestehenden Versionierungswerkzeuge abgelöst und alle Sourcen in Merant Dimensions zusammengeführt. Diese Phase beinhaltet das Versionsmanagement, das Erstellen von Konfigurationen zum Testen und zur Produktionsübergabe sowie ein "kleines" Änderungsmanagement. Im Zuge der ersten Phase wurde auch das gesamte Buildmanagement für die Plattformen Windows NT, Sun Solaris und OS/390 überarbeitet und neu implementiert. Ziel der nachfolgenden Implementierungsphasen soll es sein, das gesamte Änderungsmanagement in Merant Dimensions abzubilden und die bestehenden Satelitensysteme abzulösen. Dieses beinhaltet das klassische Änderungsmanagement bezogen auf die Softwareentwicklung aber auch die davon betroffenen Änderungen an Datenbanken oder der produktiven Host Umgebung.
Unsere Leistungen im Projekt
- Ist-Analyse und anschließende Soll-Definition
- Evaluierung verschiedenster Konfigurationsmanagementwerkzeuge
- Implementierung der definierten Prozesse in Dimensions
- Migration der Sourcen
- Schulung der Entwickler
- Entwicklung kleinerer Erweiterungen zu Merant Dimensions
Zahlen und Fakten
- 160 Entwickler an drei Standorten
- Migration von ca 45.000 Sourcen aus CA Librarian
- Migration von ca. 8000 Sourcen aus dem PVCS Version Manager
- Ein Sun Solaris Server zum Betrieb von Merant Dimensions
- Unterstützung der Plattformen und ihrer jeweiligen Entwicklungssprachen:
- Windows NT (Java)
- Sun Solaris (Cobol, Java, C)
- OS/390 (Cobol, Assembler, C)
- Einsatz von Python als Skriptsprache:
- Schnittstelle zum PVCS Dimensions
- Bildmanagement
Projektdaten
Projektbeginn
- Ist- und Sollkonzept
- Evaluierung
Realisierung
- Verfeinerung des Sollkonzeptes
- Implementierung PVCS Dimensions
- Realisierung des Buildmanagements Einführung
- Schulungen
- Migration PVCS Version Manager und CA Libarian
Ansprechpartner
Weiterführende Informationen zu diesem und ähnlichen Projekten erhalten Sie bei:
Christian Kreutzmann / Tel.: +49 (40) 53302-0
