Mehr Transparenz

Release-Mangement - eine lästige, aber notwendige Pflicht

11.11.2010 von Peter Kronfeld
Der Informationsdienstleister Schufa nutzt ein IT-gestütztes Release-Management, um die Qualität der Softwareentwicklung zu steigern.
Foto: Schufa
Foto: Schufa

Projektbezogene Dokumentationen und Konfigurationen, uneinheitliche Versionierung sowie ungestützte Change-Prozesse - so sieht das "Release-Management" in vielen Unternehmen aus. Es führt ein Schattendasein als ungeliebte und aufwändige Pflichtaufgabe im Bereich Softwareentwicklung.

Das war bei der Schufa zunächst nicht anders: "Im Change- und Konfigurations-Management haben wir bis dato ähnlich wie andere Unternehmen gearbeitet", schildert Frank Jungbeck, Softwarearchitekt und Mitglied des Architektur-Boards der Schufa, die Ausgangslage bei Projektbeginn, "abhängig von Projekt und Projektleitung wurden Pakete, Versionierungen und Dokumentationen sehr unterschiedlich gehandhabt; Standards bei den Prozessen und Tools fehlten."

Das Spektrum bei den Tools reichte vom Excel-Klassiker für die Änderungsverfolgung bis zur Abwandlung von Tools wie Doors oder CVS. Die Vielfalt der Werkzeuge brachte auch Unterschiede in Prozessen, Organisation, Terminologie und Problembewusstsein mit sich. Zudem sind auch bei der Schufa in zunehmendem Maße externe Partner für die Softwareentwicklung aktiv, und das führt zu weiteren Varianten.

Einer dieser Partner ist die Objective Partner AG. Gemeinsam mit deren IT-Consultant Bastian Hopp setzten Softwarearchitekt Jungbeck und sein Team ein Projekt auf, das die Vorgänge im Release-Management standardisierter, prozessorientierter, nachvollziehbarer und intuitiver gestalten sollte. Als Basis sollte die Applikationssuite "Synergy/Change" von IBM (früher Telelogic) dienen. Allerdings wurde sie an die unternehmensspezifischen Anforderungen der Schufa angepasst.

Transparenz und Nachvollziehbarkeit

Auch das Kundenportal der Schufa unterliegt Änderungswünschen.
Foto: Schufa

Das Projekt setzte sich aus zwei - jeweils auf etwa ein halbes Jahr befristete - Umsetzungsphasen zusammen. Im ersten Schritt nahm sich das Team die Anpassungen für Change-Requests und Releases einer exemplarischen, relativ komplexen Schufa-Anwendung vor. Auf der Basis dieser Erfahrungen war im zweiten Schritt ein allgemeines Prozess- und Versionierungskonzept für Anwendungen zu erarbeiten, das dann in der Tool-Suite transparent abgebildet und schließlich als Standardprozess verankert werden sollte.

Für Synergy/Change entschied sich die Schufa, weil das Tool die Versionierung mit der Release- und Konfigurationsverwaltung koppelt. Ein Projekt beschreibt eine Anzahl von Dateien (Code, Dokumente etc.), die in einem logischen Zusammenhang und in einem Verzeichnissystem stehen. Diese Dateien dürfen nur über Aufgaben (Tasks) geändert werden. Eine Task führt also automatisch zu einem neuen Release. Auf diese Weise ist gewährleistet, dass jedes Release vollständig, nachvollziehbar und einschließlich der Konfigurationen und Dokumentation systematisch abgelegt wird.

Projekte lassen sich auch zu umfassenderen Gesamtprojekten zusammenfassen. Da hilft es, wenn stets transparent ist, welche (Unter-)Releases zu den einzelnen Projekten aktiviert sein müssen. Im Fall einer Weiterentwicklung sind nur Veränderungen auf der Grundlage aktivierter (freigegebener) Releases möglich.

Mit der Change-Komponente des Tools lassen sich die Change-Requests transparent definieren, verwalten und verfolgen. Eingeschlossen ist eine Query-Engine, die Arbeitslisten und Reports erstellen hilft. Synergy und Change sind über eine gemeinsame Datenbank miteinander verknüpft, so dass sich über die gemeinsame Abfragesprache und mittles APIs aussagekräftige Reports und Auswertungen fahren lassen.

Zweistufiger Change-Prozess

Das Release-Management der Schufa ist heute standardisiert.
Foto: Schufa

Heute ist der Change-Prozess bei der Schufa ein mehrstufiges Verfahren - von der Problemerfassung durch Analyseteams (für fachliche motivierte Änderungen) oder Designteams (für technisch motivierte Änderungen) über ein Review bis zur Beauftragung und Verfolgung der Change-Requests. Wenn der jeweils Verantwortliche die für den Change-Request notwendigen Tasks vergibt, stößt er damit gleichzeitig den Release-Prozess und die Abbildung in Synergy an. So sind Konfigurationen und zugehörige Dokumentationen mit dem Release erfasst und nachvollziehbar abgelegt.

Die Restrukturierung und konsequenten Standardisierung des Release-Managements ist mittlerweile abgeschlossen. So kann die Schufa die gesamte Wirkungskette vom Change-Request über die Umsetzung bis zu den Entwicklungsartefakten automatisiert dokumentieren und nachverfolgen. Die Change-Prozesse wurden über die Tool-Unterstützung standardisiert und stabilisiert.

Mit Hilfe von frei konfigurierbaren Workflow-Management-Anwendungen, den vorhandenen Release-Management- und Versionierungs-Tools und einigen Schnittstellen zwischen Synergy und Change kann eine echte Prozessunterstützung verankert werden. Sie gewährt allen technisch wie kommerziell Verantwortlichen jederzeit Überblick über den Releases-Status der Entwicklungsprojekte. Das erleichtert es, externe Entwicklungspartner an Entwicklungsprojekten zu beteiligen sowie gleichzeitig die Transparenz- und Qualitätsanforderungen der Kunden und Geschäftspartner zu erfüllen.

Ein paar Reibungspunkte

Selbstverständlich gab es auch bei diesem Projekt Reibungen. "Wie bei jedem Veränderungsprozess mussten Mitarbeiter von liebgewonnenen Tools und Verfahren Abschied nehmen", berichtet Jungbeck: "Gerade unseren Entwicklern hat die Umstellung von CVS auf Synergy/Change Einiges abverlangt." Das gelte umso mehr, als diese beiden Tools bei ähnlicher Terminologie völlig andere Bedienkonzepte nutzten. Doch die Vorteile für die technisch und kommerziell Verantwortlichen seien spätestens bei der zuverlässigen Bereitstellung gültiger Release-Stände und der mühelosen Nachverfolgung von früheren Änderungen oder laufenden Change-Requests sichtbar geworden.