ALM
01.06.2011, 06:00 Uhr
Nur das Ergebnis zählt
Die Einführung eines ALM-Tools (Application Lifecycle Management) erfordert immer auch einen Change-Prozess. Qualitätssteigerung und produktivere Teams in der Software-Entwicklung sind die Gegenleistungen.
Der Autor ist Projektleiter bei Zühlke Engineering AG Viele Unternehmen mit eigenen Software-Entwicklungsabteilungen wurden in den vergangenen Jahren mit neuen Fragen konfrontiert: Braucht es einen Prozess für das Application Lifecycle Management? Welche ALM-Tools sind hierzu nötig? Und die wichtigste aller Fragen: Welcher Nutzen lässt sich aus der Einführung eines solchen Tools und der entsprechenden Prozesse erzielen? Denn nach der Einführung muss die IT konkrete produktivitäts- und qualitätssteigernde Faktoren ausweisen können. Sind diese Fragen geklärt, kann der Change-Prozess schrittweise vorangetrieben werden.
Ein Prozess in mehreren Schritten
Bei der Entwicklung von Software spielen die Disziplinen Businessmodelling, Requirements Management, Analyse/Design, Implementation, Deployment (Release Management), Configuration Management und Change Management zentrale Rollen. In einem bestehenden Team werden diese Disziplinen in unterschiedlichen Reifegraden gelebt. Die Einführung eines ALM-Tools für alle Disziplinen auf einen Schlag (Stichtageinführung) macht in den wenigsten Fällen Sinn. Deshalb empfiehlt es sich, einen Einführungsplan zu erstellen, der die Abhängigkeiten zwischen den Disziplinen berücksichtigt. Je nach Grösse der Organisation dauert eine Einführung zwischen sechs Monaten und zwei Jahren. ALM-Tools existieren viele auf dem Markt –es gibt kein richtiges oder falsches Tool. Die Unterscheidung liegt in der Funktionsintegration. Das heisst, wie viele Funktionen bietet das Tool und welche Funktionalitäten müssen hinzugefügt werden. Letztere stellen meistens Medienbrüche dar und sind in vielen Fällen mit Informationsverlust verbunden. Beispielsweise kann Traceability nur schwer oder gar nicht gewährleistet werden. Es spielt auch keine Rolle, ob die Einführung eines ALM-Tools nach agilen Ansätzen oder durch Meilensteine getrieben durchgeführt wird. Viel wichtiger ist, dass die etablierten Prozesse in den Teams abgestimmt und aneinander angeglichen werden. Die Einigung auf ein gemeinsames Vorgehen in der Entwicklung ist entscheidend für den Erfolg. Der Einführungsprozess lässt sich dabei in fünf Schritte gliedern (siehe Grafik): 1 Tool-Evaluation: Um hier eine fundierte Entscheidung treffen zu können, müssen die Anforderungen definiert und für die Tools im Auswahlprozess bewertet werden. Ideologische oder technologische Vorlieben sollten im Evaluationsprozess tief bewertet werden – die meisten Tools unterstützen eine technologieübergreifende Software-Entwicklung. 2 Machbarkeit prüfen: In diesem Schritt wird geprüft, ob die Tools mit den Prozessen in der Organisation verträglich sind. Es empfiehlt sich, dafür User Stories oder Use Cases zu definieren. Diese End-User-Szenarien müssen zwingend am Tool durchgearbeitet werden. Ein theoretisches Skizzieren genügt in diesem Fall nicht. Optimal ist, die Machbarkeit mit den zwei besten Tools aus der Evaluation zu prüfen. 3 Vorbereitung Roll-Out: In dieser Phase sind alle nötigen Artefakte zu erstellen, die bei der Einführung helfen und diese beschleunigen. Es geht vor allem um das Bereitstellen von Schulungsunterlagen und Dokumentationen. Die Migration von bestehenden Daten ist speziell zu beachten. Je nach der
gewählten Migrationsart entstehen mehr Aufwand und Kosten, als zu Beginn des Einführungsprojekts geschätzt. 4 Pilotierung: Bei der Pilotierung müssen unterschiedliche Typen von Projektteams berücksichtigt und miteinbezogen werden. Es gilt, möglichst alle Varianten von eingesetzten Technologien und Teamzusammensetzungen zu berücksichtigen. Denn nur mit einer möglichst grossen Bandbreite kann ein späterer Roll-Out mit Erfolg durchgeführt werden. Das Feedback der Pilotteams muss zeitnah verarbeitet werden. Bei signifikanten Anpassungen ist zu prüfen, ob es sich lohnt, die Korrekturen ein weiteres Mal an die Pilotteams auszurollen. Mit dieser Massnahme können die Teams, die bereits die Pilotierung durchlaufen haben, ohne Mehraufwand in den produktiven Betrieb überführt werden. 5 Roll-Out: Die Grösse und Struktur einer Organisation bestimmt, in wie vielen Wellen das ALM-Tool ausgerollt wird. Die maximale Anzahl von Mitarbeitenden, die zum gleichen Zeitpunkt in ein neues Tool eingeführt werden können, liegt zwischen 50 und 100. Abhängig von der Komplexität des ALM-Tools und der Einführungstiefe führt der Roll-Out oft zu Mehraufwand. Diese sind frühzeitig zu berücksichtigen. Damit der dabei entstehende tatsächliche Aufwand überwacht werden kann, ist es unerlässlich, ein Projektteam zu definieren. Der Fokus sollte dabei auf der Fortschritts- und Kostenkontrolle sowie auf dem Stakeholdermanagement liegen.
gewählten Migrationsart entstehen mehr Aufwand und Kosten, als zu Beginn des Einführungsprojekts geschätzt. 4 Pilotierung: Bei der Pilotierung müssen unterschiedliche Typen von Projektteams berücksichtigt und miteinbezogen werden. Es gilt, möglichst alle Varianten von eingesetzten Technologien und Teamzusammensetzungen zu berücksichtigen. Denn nur mit einer möglichst grossen Bandbreite kann ein späterer Roll-Out mit Erfolg durchgeführt werden. Das Feedback der Pilotteams muss zeitnah verarbeitet werden. Bei signifikanten Anpassungen ist zu prüfen, ob es sich lohnt, die Korrekturen ein weiteres Mal an die Pilotteams auszurollen. Mit dieser Massnahme können die Teams, die bereits die Pilotierung durchlaufen haben, ohne Mehraufwand in den produktiven Betrieb überführt werden. 5 Roll-Out: Die Grösse und Struktur einer Organisation bestimmt, in wie vielen Wellen das ALM-Tool ausgerollt wird. Die maximale Anzahl von Mitarbeitenden, die zum gleichen Zeitpunkt in ein neues Tool eingeführt werden können, liegt zwischen 50 und 100. Abhängig von der Komplexität des ALM-Tools und der Einführungstiefe führt der Roll-Out oft zu Mehraufwand. Diese sind frühzeitig zu berücksichtigen. Damit der dabei entstehende tatsächliche Aufwand überwacht werden kann, ist es unerlässlich, ein Projektteam zu definieren. Der Fokus sollte dabei auf der Fortschritts- und Kostenkontrolle sowie auf dem Stakeholdermanagement liegen.
Unterstützung als Erfolgsfaktor
Die ALM-Einführung findet immer parallel zum Tagesgeschäft statt. Damit der erwünschte Nutzen rasch erzielt wird, muss diese sorgfältig geplant und koordiniert werden. Bei den Vorbereitungen und vor allem während der Einführung eines ALM-Tools zählt der Support der Mitarbeitenden zu den Erfolgsfaktoren. Bewährt hat sich insbesondere das Poweruser-Konzept, das für eine effiziente Organisation sorgt und die Akzeptanz steigert. Ein Poweruser ist ein Projektmitarbeiter, der speziell an den Prozessen und am ALM-Tool geschult wird, und so seine Mitarbeitenden bei Problemen schnell und unbürokratisch unterstützen kann. Oft liefern Poweruser auch ehrliches und wertvolles Feedback in der Frühphase der Einführung. Nach der Einführung, also nach der Produktivsetzung der Version 1.0 des ALM-Tools in der Organisation, ist das erste Einführungsprojekt abgeschlossen. Das Tool geht zu diesem Zeitpunkt in den Betrieb über, und die Aufgaben des Einführungsteams teilen sich nun in zwei Tätigkeiten auf: in die Betreuung der produktiven Version und die Vorbereitung der Weiterentwicklung. Vor allem der zweite Punkt ist wichtig, damit das ALM-Tool nachhaltig in der Organisation verankert bleibt. Denn nach der organisationsweiten Einführung wachsen die Bedürfnisse der Benutzer. Diese Bedürfnisse müssen als Anforderungen für weitere Versionen aufbereitet, priorisiert und kommuniziert werden.
Die Früchte ernten
Die Integration der unterschiedlichen Disziplinen in ein ALM-Tool ermöglicht eine umfassende Auswertung über Prozessgrenzen hinaus. Abhängig von der Einführungstiefe (also den eingeführten Disziplinen) lassen sich diverse Auswertungen durchführen. Das Reporting steht bei den meisten Tools automatisiert zur Verfügung und kann vom Benutzer individuell angepasst werden. Dies erlaubt ein effizientes und bedürfnisorientiertes Reporting. Durch das Zusammenführen der Projektdaten in einem ALM-Tool erübrigt sich ein paralleles Unterhalten von Projektmetriken. Die benötigten Kennzahlen, wie zum Beispiel die Anzahl der eingeflossenen Change Requests pro Release, können bei Bedarf aus dem ALM-Tool gezogen werden. Die Erfahrung zeigt, dass mit der Einführung eines Application Lifecycle Managements ein hoher Nutzen erzielt wird. Es werden einheitliche und durchgängige Prozesse eingeführt und Best Practices im Software-Engineering etabliert. Das führt zu mehr Transparenz in der Software-Entwicklung und zu projektübergreifenden Metriken. Die Qualität wird gesteigert, gleichzeitig können die Betriebskosten reduziert werden.
ALM-Tools
Schlüsselfaktoren für das Application Lifecycle Management: - Integriert in alle verwendetenEntwicklungsumgebungen - Reporting-Möglichkeit (statisch/dynamisch) - Vernetzung verschiedener Software-Engineering-Disziplinen - Rollengerechtes Benutzer-Interface - Pro Benutzer ein Interface