Kontinuierliche Zusammenarbeit mit den Kunden

Feature | 26. Juli 2006 von admin 0

Das Programmieren effizienter zu gestalten ist seit Beginn des Computerzeitalters eine der großen Herausforderungen. Schneller bessere Software zu entwickeln – das ist das Ziel. Vor einigen Jahren wurde noch über Objektorientierung oder über 3GL und 4GL, die Programmiersprache der dritten und vierten Generation, geredet.
Für die agile Softwareentwicklung ASD werden verschiedene komplementäre Technologien genutzt. Dazu gehört die Extremprogrammierung, die adaptive Softwareentwicklung, die schlanke Softwareentwicklung und das so genannte Scrum. Nach Auskunft der Agile Alliance, einer gemeinnützigen Organisation, die 2001 von einigen Führungsfiguren der Branche gegründet wurde, um die erwähnten Techniken zu propagieren, verfügen sämtliche ASD-Prozesse über einige gemeinsame Merkmale. Zu diesen gehört die “enge Zusammenarbeit zwischen dem Programmiererteam und den Wirtschaftsexperten, die persönliche Kommunikation von Angesicht zu Angesicht, die effizienter als die schriftliche Dokumentation ist, die regelmäßige Auslieferung neuer Software, von der das Unternehmen profitiert, kompakte, sich selbst organisierende Teams sowie eine Gestaltung von Software und Team, die verhindert, dass die unausweichlich fließbandmäßig heranrollenden Anforderungen immer wieder Krisen auslösen.”

Rapide Entwicklung

Die traditionelle Methode der Softwareentwicklung gerät beim ASD komplett aus dem Blickfeld. Bei dem traditionellen, plangesteuerten Ansatz einigen sich die Entwickler und Kunden am Beginn eines Projektes auf dessen Spezifikationen. Die Entwickler beginnen mit der Arbeit am Projekt und liefern das fertige Produkt nach ein paar Monaten ab. Bei der neuen ASD-Methode hingegen arbeiten Entwickler und Kunden während des gesamten Entwicklungsprozesses ununterbrochen zusammen. Durch die wiederholte Interaktion stimme ein Unternehmen seine Pläne besser mit den Kunden ab, als dies beim plangesteuerten Ansatz der Fall sei, erklärt Raj Rao, Senior Vice President, Products & Technology Group bei SAP Labs. “Die Kunden sind deshalb mit dem Ergebnis viel zufriedener und viel offener für das Produkt. Weil die Entwickler sich während des gesamten Produktentwicklungsverfahrens häufig mit den Kunden austauschen, gibt es außerdem ein viel größeres Potenzial für Innovationen”, erläutert Rao. “Dadurch sind wir in der Lage, die Anforderungen des Kunden und dessen Praxis besser zu verstehen. Die Anforderungen sind für uns viel klarer, und wir können schneller reagieren, denn manchmal verändern sich die Anforderungen noch während des Entwicklungsprozesses.”

Eine Methode setzt sich durch

Paul Hodgetts, der Gründer und CEO des Beratungs- und Schulungsunternehmens Agile Logic, unterstützte SAP bei einigen Pilotprojekten. Laut Hodgetts wenden sich viele Unternehmen der agilen Entwicklungsmethode zu, weil sie die Zeit bis zur Marktreife verkürzen wollen: “ASD-Prozesse verlaufen in der Regel in Entwicklungszyklen oder -schritten, die zwischen ein paar Wochen und einem Monat dauern.” Das kann Organisationen, die daran gewöhnt sind, in Zyklen von sechs, zwölf, 18 oder 24 Monaten zu arbeiten, drastisch umkrempeln.
Hodgetts glaubt, dass sich ASD etablieren wird. Es hat ihn in den vergangenen Jahren immer wieder überrascht, welche verschiedenartigen Projekte auf Basis von ASD durchgeführt wurden. Dazu gehörten beispielsweise eingebettete Echtzeitkontrollsysteme, umfangreiche Finanzanwendungen oder drahtlose Technologien. “Ich glaube, dass die agile Entwicklungsmethode überall genutzt werden kann. Diese Methode ist absolut produkt- und technologieneutral”, so Hodgetts.
In Deutschland machte Hodgetts SAP mit der Scrum-Methode bekannt. Der Begriff “Scrum” bezeichnet beim Rugby das enge Gedränge bei einem erneuten Spielstart nach einem Foul, bei dem sich acht Spieler aus jeder Mannschaft um den Ball scharen. Die Scrum-Methode ist bei ASD eine der wesentlichen Ansätze.

Erfolgreiche Scrum-Pilotprojekte bei SAP

Rolle des Scrum-Leiters

Rolle des Scrum-Leiters

Die Scrum-Methode wurde von Ken Schwaber und Jeff Sutherland entwickelt, die seit Mitte der 80er-Jahre gut dokumentierte Beispiele für eine effiziente Arbeitsweise analysierten. Die Beispiele stammten nicht nur aus der Softwareentwicklung, sondern aus allen Bereichen der Wirtschaft.
Schwaber und Sutherland lernten bei japanischen Autoherstellern und bei Produzenten von Konsumgütern die Vorteile von Teams kennen, die sich aus mehreren Aufgabenbereichen zusammensetzen. Nach diesem Modell arbeitet das für die Umsetzung der Anforderungen zuständige Team mit dem Konstruktionsteam zusammen, welches wiederum mit dem Überprüfungsteam kooperiert. Die einezlnen Gruppen stehen laufend in Verbindung miteinander, ohne eine den Prozess verzögernde Dokumentation auszutauschen. “Wir haben von den Japanern gelernt, wie Teams zusammengestellt und geleitet werden, wie man dafür sorgt, dass diese sich selbst managen, organisieren und als unternehmerisch denkende Einheit agieren”, so Sutherland.
Das Beispiel der hocheffizienten Entwicklung von Quattro Pro, einem früher recht weit verbreiteten Tabellenkalkulationsprogramm für Windows, durch die Borland Software Corporation, zeigte Schwaber und Sutherland, dass kleine Programmiererteams gerade durch tägliche Sitzungen zur Produktivität angeregt werden. “Diese Leute trafen sich drei Jahre lang drei oder vier Stunden täglich. In der verbleibenden Zeit programmierten sie. Quattro Pro ist das produktivste Projekt, das jemals umfassend dokumentiert wurde”, erinnert sich Sutherland.
Nicht jeder möchte täglich dreistündige Sitzungen abhalten. Die Scrum-Entwickler entschieden also, dass 15 Minuten ausreichend seien, wenn drei wichtige Fragen gestellt würden: “Was hast du gestern gemacht? Was machst du heute? Welche Hindernisse stehen dir im Weg?”
“Bei SAP haben die Scrum-Pilotprojekte im Wesentlichen gut funktioniert”, meint Raj Rao. Zu den Produkten, die demnächst eingeführt werden, gehört eines mit dem Kodenamen “Muse”, das bei der vergangenen SAPPHIRE angekündigt wurde. Dutzende von Entwicklern und Kunden arbeiten daran mit.
Einige Aufgaben sind für den Erfolg eines Scrum-Projektes ausschlaggebend. Der Produktverantwortliche und der Scrum-Leiter entscheiden zu einem großen Teil über den Erfolg eines solchen Projektes. Der Produktverantwortliche erstellt und pflegt eine nach Dringlichkeit geordnete Liste mit Anforderungen. Bei jedem “Sprint” verteilt er diese Anforderungen auf die Entwickler, die sie abarbeiten. Der Produktverantwortliche arbeitet eng mit den Kunden zusammen, um die benötigten Anforderungen zu klären und fungiert zudem als ihr Stellvertreter. Er startet die Sprintphase, nimmt am Ende dieses Schrittes an einer Überprüfung des Sprints teil und zeichnet außerdem die fertigen Ergebnisse ab.
Programme, die mit der ASD-Methode entwickelt werden, haben gemeinsame Merkmale:

  • Sie werden in relativ kurzer Zeit entwickelt und freigegeben; typischerweise in einem Zeitraum von sechs bis neun Monaten.
  • Die Anforderungen verändern sich dauernd und müssen teilweise erst untersucht werden, bevor sie schließlich feststehen.
  • An jedem Aspekt eines Projekts arbeiten kleine Entwicklerteams.

Das Lehrbuch nach Bedarf ändern

“Während eines Projektabschnittes stellen wir oft fest, dass das auf Basis der Gespräche vor zwei Wochen erzielte Ergebnis nicht der richtige Weg ist. Es ist für uns ein großer Vorteil, dass wir dies nach zwei bis vier Wochen herausfinden und nicht erst nach sechs Monaten”, sagt Rao.
Für SAP arbeiten derzeit Teams in den USA, Deutschland und Bulgarien an ASD-Projekten. Nach Angaben von Rao beteiligen sich viele Kunden mittlerweile aktiv an der Arbeit und unterstützen SAP bei der Frage, in welche Richtung die Entwicklung der einzelnen Software-Teile gehen soll. SAP sei unter anderem deshalb erfolgreich, weil das Unternehmen den lehrbuchmäßigen Ansatz für ASD auf die eigenen individuellen Anforderungen und Best Practices angepasst hat. “Nach dem Lehrbuch sind maximal sieben Entwickler pro Scrum vorgesehen. Wir haben schon mit mehr als zehn Entwicklern pro Team gearbeitet, und das hat gut funktioniert”, meint Rao.
Nach Auskunft von Rao arbeiten bei SAP mittlerweile mehrere hundert nach der ASD-Methode geschulte Entwickler. Viele weitere werden derzeit nach dieser Methode ausgebildet. “Ich glaube, dass SAP eines der ersten wirklich großen Unternehmen ist, das sich der agilen Methode verschrieben hat. SAP testet die Entwicklungsmethode und führt sie intern ein”, erklärt Rao.

John Sterlicchi

Leave a Reply