20100304h Itellium Transparenz in der agilen Softwareentwicklung

 Home | News | Hefte | Mediadaten | Online-Artikel | Kommentare | Trends | Wir-ueber-uns | Tipps | Impressum | CeBIT 2012

 

Home
News
Trends
Hefte
Online-Artikel
Kommentare
Service-Angebote
Feedback
Abonnement
Wir-ueber-uns
Tipps
Impressum
Veranstaltungen


»manage it« als

E-Paper  11-12 2011
E-Paper  9-10 2011
E-Paper  5-6 2011
E-Paper  3-4 2011
E-Paper  1-2 2011
E-Paper  11-12 2010
E-Paper  9-10 2010

E-Paper  7-8 2010
E-Paper  5-6 2010
 



 




 

 


 




 


 


 

 

Transparenz ist Schlüsselfaktor für Projekterfolg in der agilen Softwareentwicklung

Jeder weiß Bescheid

Die Entwicklung hoch-performanter und geschäftskritischer Webanwendungen, wie zum Beispiel Consumer-Webshops, stellt große Anforderungen an das beteiligte Projektteam. Die extreme Veränderungsgeschwindigkeit der Internet-Technologien und die sich schnell entwickelnden Anforderungen der Kunden fordern höchste Flexibilität sowie zielgerichtetes Handeln. Die Methoden der agilen Softwareentwicklung unterstützen eine kurzzyklische Anwendungsentwicklung. Um auf dieser Basis mit einem großen Projektteam komplexe Anwendungen im Einklang mit den Kundenanforderungen zielgerichtet zu entwickeln, bedarf es einer Projektkultur, die alle Beteiligten – also Kunden, Entwickler und Projektleiter – zum gleichen Ziel führt. Eine notwendige Voraussetzung dafür: Kompromisslose Transparenz auf allen Ebenen und über alle Aufgaben hinweg.

 

U

nternehmenskritische Webanwendungen mit großen Transaktionsvolumina stellen hohe Anforderungen an die Softwarearchitektur, die Infrastruktur und nicht zuletzt an eine leistungsfähige Projektkultur. Ein Erfolgsrezept, die Komplexität im Projekt zu reduzieren, ist die Schaffung einer durchgehenden Transparenz. Hierfür stehen den Verantwortlichen viele Ansatzpunkte offen: Beginnend bei der Eindeutigkeit der Auftragsklärung über die Herstellung klarer Projekt- und Kommunikationsstrukturen bis hin zur gelebten Dokumentation sowie einem Controlling und Reporting, das alle Beteiligten zufrieden stellt. Die Möglichkeiten zur Schaffung von Transparenz sind vielfältig.

Transparenz von Anfang an

Schon in der Zusammensetzung des Projektteams liegt der Grundstein für den Erfolg. In einem handlungsfähigen Team sind jedem Beteiligten nicht nur die eigenen Aufgaben klar, sondern auch die Zuständigkeiten aller anderen Teammitglieder. Entscheider in Business und IT sind dabei ebenso namentlich benannt, wie Kompetenzen und Aufgaben der Mitglieder des Programmmanagements und auch der Softwareentwickler. Ergebnis der Transparenz auf dieser Ebene ist die Steigerung des Verantwortungsbewusstseins für den eigenen Tätigkeitsbereich und die starke Identifizierung mit dem Projekt, dessen definierter Teil jeder einzelne Mitarbeiter ist.

Die Klärung der Zuständigkeiten ist genauso wichtig wie das gemeinsame Verständnis für die Aufgabenstellung. Eine transparente Projektorganisation setzt voraus, dass alle Projektmitglieder miteinander und über das gleiche reden. Die Konkretisierung einer Aufgabenstellung entlang eines konsequent erstellten und weiterentwickelten Prototyps ist erfolgsbewährt. Anforderungen und Lösungsansätze lassen sich so von Anfang an für jeden verständlich visualisieren. Dies ist die Grundlage, um Lösungsansätze und Ideen zu skizzieren und gemeinsame Entscheidungen zu treffen. Was bei einem Web-Projekt mal als Scribble auf einem Whiteboard beginnt, findet seinen zunehmenden Reifegrad in einer Powerpoint-Skizze, einem Screenshot, einem HTML- und schließlich auch in einem mit Funktionen hinterlegten Prototypen. Eine visuelle Dokumentation per UML (Unified Modelling Language), prototypische sowie GUI (Graphical User Interface)-Entwürfe des Vereinbarten helfen, zwischen Business und IT eine identische Erwartungshaltung aufzubauen, die sich sukzessive erfüllen lässt. Alle Beteiligten haben stets das Gleiche gemeint, Konfliktpunkte frühzeitig erkannt, Ideen aufgenommen, weiterentwickelt, die Umsetzung zeitnah realisiert und gesehen, wie sich das Gesamtkonzept immer mehr zu einer leistungsfähigen Webanwendung entwickelt.

Die frühzeitige transparente Kommunikation zwischen Kunde und Dienstleister hilft, sich gemeinsam der Entwicklung von Lösungen für die Business-Anforderungen zu nähern. Zusammen unterteilen die Verantwortlichen umfassende Aufgaben in nachvollziehbare Teile und belegen sie mit einer klaren Priorisierung. Kleinere Aufgabenpakete ermöglichen eine schnelle und regelmäßige Kontrolle des Projektfortschritts.

In einem Projekt zur Entwicklung einer E-Commerce-Anwendung für einen führenden deutschen Warenhauskonzern hat der IT-Dienstleister Itellium Services hierfür Release-Zyklen eingeführt, die mitunter nur eine Woche umfassen. Dementsprechend detailliert fiel die Definition der Teilaufgaben aus, in denen die gesamte Anwendungsentwicklung entlang eines zielgerichteten, ergebnisoffenen Masterplans erfolgte. Die Ergebnisoffenheit ermöglicht mit jedem Release-Zyklus die Aufnahme veränderter Rahmenbedingungen und so die Anforderungen des Kunden ohne Zeitverzögerung zu bedienen. Mit diesem Vorgehen kam das Projekt ohne Umwege zu dem geplanten Ziel, da vollkommene Transparenz herrschte. Kunde, Entwickler und Projektmanagement stehen bis heute in engem Kontakt, reden häufig miteinander und wissen zu jeder Zeit, was im Projekt läuft und was andere Projektbeteiligte gerade tun.

Eine nachvollziehbare Beschreibung der Arbeitsabläufe sowie die Dokumentation des Lösungsweges weisen dabei den Weg zum Erfolg. Der kontinuierliche Austausch zwischen Kunden, Projektleitung und Entwicklung führt zu einem gemeinsamen Verständnis für die Inhalte des Entwicklungsprojektes und den zu produzierenden Ergebnistyp. Dies erfordert neben einem offenen Dialog zu inhaltlichen Fragestellungen von Anfang an auch Transparenz über das Budget. Klare Vorgaben auf Seiten des Kunden und eine ebenso nachvollziehbare Dokumentation der zu erwartenden und realen Kosten sichern eine realistische Erwartungshaltung und einen zielgerichteten Mitteleinsatz durch die IT.

Transparenz als zentrales Element der Projektkultur

Bei der Realisierung von Webanwendungen zeigt sich, wie tragfähig die so aufgebauten Projektstrukturen sind. Gerade die mit der kurzzyklischen Vorgehensweise einhergehende Notwendigkeit, Aufgaben zügig zu definieren und Entscheidungen ebenso kurzfristig zu fällen, erfordert eine stabile Beziehung zwischen Business und IT. Um agile Softwareentwicklungsprinzipien bei komplexen Webapplikationen anzuwenden sowie diese mit kürzesten Release-Zyklen in aller Stringenz zu schaffen, ist Transparenz elementar. Die konsequente Fortführung der Anwendungsentwicklung entlang des immer konkretere Züge annehmenden Prototypen und späteren Entwicklungsprojektes führt bei allen Beteiligten zu einem grundlegenden Verständnis für die Anwendung und ihre Möglichkeiten.

Eine offene und sachliche Kommunikation fördert eine agile Projektkultur, die auf kurze Informations-, Abstimmungs- und Entscheidungswege angewiesen ist. Stand-up-Meetings und bilaterale Abstimmungen während der Realisierung gehören dabei ebenso zu einer erfolgsbewährten Projektkultur wie eine projektbegleitende Dokumentation der Entscheidungen und der Umsetzung von Aufgabenstellungen. Agilität ersetzt dabei nicht die Gründlichkeit im Projekt, sondern vielmehr die Erarbeitung, Abstimmung und Beauftragung fixer Leistungskataloge, die eins zu eins umzusetzen sind und von denen nur schwer im Rahmen aufwendiger Change-Requests abgewichen werden kann.

Die projektbegleitende Dokumentation bietet Möglichkeiten, die agile Softwareentwicklung zu einem nachhaltigen Erfolgsmodell in der Webprogrammierung zu machen. Sie verhilft dazu, ein gemeinsames Verständnis zu entwickeln. Die Effizienz im Projekt steigt, da Diskussionen sachlich geführt werden. Eine geeignete Tool-Unterstützung ermöglicht es darüber hinaus, den Fortschritt während der laufenden Projektarbeit lückenlos zu beschreiben. So entsteht eine stetig wachsende Wissensbasis, die hilft, Erfolgreiches zu reproduzieren und Fehlerbehaftetes in der Zukunft zu vermeiden. Ein leistungsfähiges Bug-Tracking garantiert bei der weiteren Anwendungsentwicklung eine höhere Programmqualität und eine verbesserte Reaktionsfähigkeit im Fehlerfall, da sich beim Bug-Fixing auf Erfahrungswissen zurückgreifen lässt. Diese Wissensbasis liefert aus dem laufenden Betrieb heraus wertvolle Hinweise für das Testmanagement. Eine strukturierte Dokumentation verhilft den Fachabteilungen, Testfälle so zu dokumentieren, dass sie die realen Einsatzszenarien realitätsgetreu widerspiegeln. So lässt sich die Software an den neuralgischen Punkten testen, an denen sie sich im praktischen Einsatz bewähren muss.

Transparenz macht somit auch in der Realisierungsphase ein zentrales Element der Projektkultur aus. Sie gibt zu jeder Zeit die notwendige Orientierung und fördert den Austausch. Regelmäßige Reviews tragen dazu bei, die kurzzyklische Entwicklungsweise mit den mittel- und langfristigen Zielsetzungen zu synchronisieren.

Ein Beispiel aus der Praxis belegt den Erfolg: Aufgaben wie etwa die Anbindung verschiedener Zahlungsarten für E-Commerce-Anwendungen wurden im Konsens zwischen Business und IT umgesetzt. Was sich anfangs für das Business als vermeintlicher Standard-Anwendungsfall darstellte, wurde bereits beim ersten Scribble von GUI-Entwürfen und Prozessabläufen am Whiteboard durch die Berücksichtigung verschiedener technischer und rechtlicher, vor allem aber auch fachlicher Rahmenbedingungen, in seiner ganzen Komplexität nachvollziehbar. Dürfen Risikoprodukte nur per Vorkasse bezahlt werden? Gibt es Kundengruppen, die rabattierte Preise erhalten, dafür aber nur bestimmte Zahlarten verwenden dürfen? Wie kann die GUI optimal gestaltet werden, damit sich die Endkunden sicher fühlen und zurecht finden und nicht im Bezahlprozess abspringen? Dies sind nur einige der Fragen, die es im Rahmen der Abstimmungen zu klären galt. Das frühzeitige Skizzieren von Lösungsszenarien verdeutlichte dabei Prozessabläufe, mögliche Sackgassen aber auch neue Lösungswege. In gemeinsam mit dem Kunden abgestimmter Form ließen sich diese fachlich auflösen und entlang des immer konkreter werdenden Entwicklungsfahrplans priorisieren und in die Praxis umsetzen. Eine frühe gemeinsame Planung berücksichtigte dabei von Anfang an alle Features, die die Software heute haben sollte, ohne dabei den Weg für zukünftige Funktionalitäten zu verbauen.

Skill-Management für agile Projektteams

Eine agile Projektkultur lässt sich nicht verordnen. Gleichwohl zeigt die Praxis, dass sie sich erlernen lässt. Die Softwareentwicklung ist kommunikativer und durch den ständigen Gedankenaustausch im Sinne der gemeinsamen Sache auch effektiver. Mehr als je zuvor sind Team-Player mit profunder IT-Kompetenz gefragt, die in der Lage sind, den Nutzen der IT dem Business zu vermitteln. Aber auch untereinander fordern und fördern die IT-Experten die Interaktion, um einmal Programmiertes wiederzuverwenden und vorhandene Lösungsexpertise dem Team zur Verfügung zu stellen. Die agile Softwareentwicklung benötigt darüber hinaus Beraterqualitäten, mit denen sich Erfolgreiches durchsetzen und Bewährtes vermitteln lässt. Insofern beziehen sich die Aufgaben des Programm-Managements nicht nur auf die steuernden und kontrollierenden Aufgaben des Projekt-Controllings, sondern in besonderem Maße auch auf ein ausgewogenes Skill-Management in den Projektteams. Denn die Transparenz hängt maßgeblich von der richtigen personellen Besetzung von Rollen und Aufgaben in Projektteams ab, da der Mensch das Zentrum des Informations- und Kommunikationsflusses ist und bleibt.

Die veränderten Anforderungen in der Webentwicklung bestimmen ein neues Wertesystem von IT-Dienstleistern. Sie fördern ihre Mitarbeiter nach einem ganzheitlicheren Ansatz in der Entwicklung ihrer Fähigkeiten. Darauf aufbauend bieten sie nicht nur reine Programm-Entwicklungsdienstleistungen an, sondern führen Kunden und Kundenprojekte zum Erfolg.

Bei der Entwicklung von Webshops und hochskalierbaren Webanwendungen stellen die Entwickler von Itellium täglich unter Beweis, dass eine agile Softwareentwicklung im Web-Umfeld die tragfähige Basis für eine permanente und konsequente technische Weiterentwicklung hoch-performanter Anwendungen ist. Darüber hinaus setzen die auf agile Prozesse spezialisierten IT-Profis auch als Einzelpersonen oder Projektteams mit ihren frühzeitig erlernten Fähigkeiten und Fertigkeiten Akzente in laufenden Entwicklungsprojekten, in denen hochleistungsfähige Webanwendungen am Puls der Zeit bleiben müssen. Dabei sorgen sie zu aller erst für eines: Die Schaffung und Wahrung von Transparenz für einen langfristigen Projekterfolg.

Daniel Spitzer

____________________________________

Daniel Spitzer, Leiter Geschäftseinheit E-Commerce, Itellium Services GmbH


 

 

 


Folgen Sie »manage it« auf Google+




 


 


 

 

 
Copyright © 2003-2012  ap Verlag GmbH