Software Development mit Scrum und Kanban

Entwickler müssen das große Ganze im Blick haben

29.06.2015 von Peter Gruber
Agile Softwareentwicklung mit Scrum oder Kanban ist stark im Kommen. Der Grund: Programme werden immer komplexer, Entwicklungszyklen kürzer. Der IT-Dienstleiser Datev hat auf den Trend zu neuen Methoden und mehr Teamwork in der Programmierung reagiert. Das organisatorische und bauliche Ergebnis ist der IT-Campus 111.
  • Die Softwareaktualität stellt höhere Ansprüche an Entwickler.
  • Klassische Teamstrukturen werden durch flexible Projektstrukturen ergänzt.
  • Kunden wollen stärker in Entwicklungsprozesse einbezogen werden.

Mit dem IT-Campus 111 hat die Datev ein neues gemeinsames Dach für ihre Softwareentwickler geschaffen. Deren Arbeitsweisen und Anforderungen an den Arbeitsplatz sind in jüngerer Zeit massiven Änderungen unterworfen, weil auch der auf Steuerberater, Wirtschaftsprüfer, Rechtsanwälte, mittelständische Unternehmen sowie Kommunen spezialisierte Software- und IT-Dienstleister den Veränderungen am Softwaremarkt und in der Programmierung unterworfen ist.

In der Softwareentwicklung lösen agile Methoden wie Scrum und Kanban das herkömmliche Wasserfallmodell ab.
Foto: ScandinavianStock-shutterstock.com

Ein wesentlicher Aspekt der Architektur und Raumgestaltung des im April eröffneten IT-Campus 111 ist es, auf diese veränderte Situation einzugehen. In die Konzeption war auch ein Gremium von Mitarbeitern aus allen Hauptabteilungen des Entwicklungsbereichs einbezogen. Über die veränderte Methodik bei der Softwareentwicklung und darüber, wie die Arbeitsplatzgestaltung die Modernisierung unterstützt, stehen Datev-Entwicklungsvorstand Peter Krug und das Gremiummitglied Matthias Bulligk Rede und Antwort.

Die Entwicklung von Software hat sich in jüngerer Zeit stark gewandelt. Wo liegen denn die größten Unterschiede im Gegensatz zu früher?

PETER KRUG: Gesetzliche Anforderungen müssen in Produkten - natürlich nicht nur der Datev - seit jeher berücksichtigt werden, allerdings werden die Zyklen immer kürzer. Das heißt, dass Entwickler heute sehr viel schnell reagieren müssen, um den Ansprüchen an die Softwareaktualität gerecht zu werden. Zudem sind unsere Programme in den letzten Jahren komplexer geworden und weisen untereinander sehr hohe Abhängigkeiten auf, die manchmal nicht transparent und auch nicht praxistauglich sind. Dies bedingt einen erhöhten Abstimmungs- und Testaufwand. Gleichzeitig haben Kunden heute einen höheren Anspruch an die Ergonomie und Funktionalität der Software. Deshalb stoßen wir mit schwergewichtigen Vorgehensweisen à la Wasserfallmodell, bei denen alle Anforderungen schon sehr frühzeitig festgelegt sein müssen, immer mehr an unsere Grenzen. Diese Erkenntnis ist nicht Datev-spezifisch, sondern hat sich in der gesamten Entwicklungsbranche manifestiert. So verwundert es auch nicht, dass leichtgewichtige, agile Methoden wie Scrum oder Kanban immer stärker Fuß fassen - glücklicherweise auch bei der Datev.

MATTHIAS BULLIGK: Als ich bei der Datev anfing, hatten wir bei Weitem noch nicht diese Abhängigkeiten untereinander. Als Entwickler konnte man sich ziemlich auf das eigene Produkt konzentrieren, ohne ständig die Auswirkungen auf andere Softwareprodukte überprüfen zu müssen. Zudem sind die Anforderungen heute viel volatiler. Damals wurden Fachkonzepte zum Teil ein bis zwei Jahre vor Produktfreigabe angefertigt und dann nicht mehr oder nur geringfügig geändert. Wenn wir heute unsere Anwender frühzeitig in unsere Entwicklungsprozesse einbeziehen, müssen wir damit rechnen, essenzielle Änderungen an bereits umgesetzten Kundenanforderungen vornehmen zu müssen. Wir stehen nun vor der Herausforderung, wie wir diese Änderungen zeitnah und hochwertig integrieren.

Inwiefern ändert sich dadurch die Tätigkeit des einzelnen Entwicklers? Werden andere Skills wichtig, und wie lassen sich diese fördern?

PETER KRUG: Entwickler müssen heute schnell sein, die Verflechtungen der Software beherrschen, im Kopf des Kunden denken und flexibel reagieren. Eigentlich sind das keine neuen Eigenschaften, aber ihre Bedeutung ist gestiegen. Zudem ist Softwareentwicklung im großen Stil immer von Teamwork geprägt. Die größten Herausforderungen für den einzelnen Entwickler sehe ich darin, das große Ganze im Blick zu haben, nicht nur den eigenen Code.

Unsere Kunden im Kernmarkt der Steuerberater kaufen in der Regel keine Software für die Lohnabrechnung als isoliertes Produkt und auch keine Einzelanwendung für die Finanzbuchführung. Sie wollen eine ganzheitliche Lösung für all ihre Kanzleibelange. Diese Sichtweise muss sich jeder einzelne Entwickler zu eigen machen. Um dies zu fördern, ist es hilfreich, sich einfach einmal die Anwendung der Nachbardisziplinen anzusehen. Wenn ein Entwickler von Steuerprogrammen die Lohnanwendung kennt und umgekehrt, lassen sich schon viele Kleinigkeiten beseitigen. Uneinheitliche Bedienkonzepte, nicht selbsterklärende Begrifflichkeiten und Ähnliches kommen dann automatisch nicht mehr so häufig vor. Gleichzeitig verteilen wir damit unser Wissen auf mehrere Schultern, was die Flexibilität steigert. Das bedeutet, dass der Kommunikation im Projektteam, aber insbesondere auch zwischen Abteilungen und Geschäftsfeldern eine viel größere Bedeutung zukommen muss.

Datev-Entwicklungsvorstand Peter Krug und das Gremiummitglied Matthias Bulligk im neuen IT-Campus 111 der Datev.
Foto: Datev

MATTHIAS BULLIGK: Genau darin sehe ich auch einen zentralen Punkt. Um die Korrelation mit anderen Produkten besser einschätzen zu können, brauchen wir ein stärkeres Generalwissen. Dafür müssen die notwendigen Informationen für alle zugänglich sein. Mit der Sharepoint-Strategie und der Einführung übergreifender Strukturen bei den Entwicklerwerkzeugen sind wir da schon ein ganzes Stück vorangekommen.

Enorm wichtig finde ich auch die Face-to-Face Kommunikation. Die Meetings aus der Welt der agilen Entwicklungsmethoden wie Daily, Sprint Review, Planung und Retrospektiven liefern hier einen großen Beitrag. Ausbaufähig ist noch das Lernen voneinander. Wir haben im Unternehmen wahnsinnig viel Know-how, sind aber noch nicht wirklich gut darin, es zu teilen und somit zu vervielfältigen. Außerdem ist es essenziell, dass wir uns und unsere Prozesse regelmäßig hinterfragen und verbessern. Ein passendes Instrument dafür sind Retrospektiven, die heute schon vielfach angewendet werden und zum Standardrepertoire eines jeden Teams gehören sollten.

Raum für flexible Projektstrukturen schaffen

Was bedeutet dieser ganzheitliche Ansatz für die Organisation des Entwicklungsbereichs?

MATTHIAS BULLIGK: Wenn der einzelne Entwickler über seinen Tellerrand hinausschauen und selbst gestalten soll, dann müssen Organisation und Umfeld dies auch unterstützen. Dafür müssen einerseits die nötigen Freiräume geschaffen werden, aber andererseits auch klare Rahmenbedingungen und Regeln vorhanden sein, die dafür sorgen, dass wir alle in die gleiche Richtung steuern. Der Anforderung, die Organisation flexibler zu gestalten, wurde ja schon mit der Schaffung flexibler Kapazitäten Rechnung getragen.

PETER KRUG: Ja, wir haben bereits im letzten Jahr begonnen, zehn Prozent der Kapazitäten im Entwicklungsbereich flexibel für unsere fünf Topthemen einzusetzen. Dadurch wird der Wechsel zwischen den Abteilungen gefördert, und die Mitarbeiter können ihr Wissen auch in anderen Einheiten einbringen. Im gesamten Entwicklungsbereich können wir von diesem Erfahrungsaustausch profitieren. Nur durch den flexiblen Ressourceneinsatz werden wir überhaupt in der Lage sein, die Herausforderungen der nächsten Jahre zu bewältigen. Klassische Teamstrukturen wird es zwar weiterhin geben, allerdings werden sie stärker durch flexible Projektstrukturen ergänzt und auch nicht mehr so "langlebig" sein.

Welche Rolle spielen bauliche Gegebenheiten und die Arbeitsplatzgestaltung angesichts der neuen Trends in der Softwareentwicklung?

PETER KRUG: Für die Datev gesprochen ist der IT-Campus 111 mehr als nur ein Bürogebäude. Durch seine offenen Strukturen bietet er den nötigen Raum für flexibles Arbeiten. Softwareentwicklung war schon immer ein Wechselspiel aus Gruppenarbeit und konzentriertem Arbeiten in Ruhe. Das Wort "Entwicklung" bedeutet Ideen haben, sie mit anderen zu erproben beziehungsweise sie allein oder mit mehreren weiterzuentwickeln, um daraus schließlich eine ausgereifte Lösung im Sinne des Kunden zu machen. Gibt es wenige Besprechungs- und Projekträume, kann die Gruppenarbeit zu kurz kommen. Das neue Konzept im IT-Campus 111 bietet Raum für beides. Die offenen Flächen erleichtern generell die Kommunikation, während Rückzugsräume schnell organisierte Besprechungen zur Klärung offener Fragen ermöglichen. Kollegen, die nicht involviert sind, werden so in ihrer Arbeit nicht gestört. Der Einsatz von agilen Methoden, die sehr stark von Kommunikation leben, wird durch die offene Struktur des Campus besser unterstützt als bisher.

8 Vorteile von Scrum
Schneller als Plan-Build-Run
Die Anforderungen an Software verändern sich im Laufe der Entwicklung oft erheblich - anders als bei einem Auto zum Beispiel. Dem tragen agile Methoden wie Scrum Rechnung.
Besseres Ineinandergreifen
Bei traditioneller Softwareentwicklung greifen Zahnräder oft nicht ineinander, sondern sie rotieren nebeneinander vor sich hin. Scrum sorgt für nahtlosere Prozesse.
Jeder spricht mit jedem
Bei vielen Softwareprojekten mangelt es an gelungener Kommunikation, bei Scrum ist regelmäßiges Feedback für alle Beteiligten Pflicht.
Mehr Qualität
Mit Hilfe von Scrum entwickelte Software ist in der Regel besser als andere, weil hier frühzeitig das Feedback der Kunden integriert wurde.
Chaos führt nicht zu Panik
Chaotisch ist Scrum insofern, als sich der damit verbundene Prozess nicht einfach mit einem Pfeil beschreiben lässt, der links auf dem Blatt Papier anfängt und irgendwo rechts aufhört. Sondern er ist mehrdimensional. Wenn sich alle an bestimmte Regeln halten, läuft trotzdem nichts aus dem Ruder.
Im Mittelpunkt: Der Mensch
Scrum heißt Gedränge. Und es bedeutet, den Menschen in den Mittelpunkt zu stellen in dem Sinne, dass ihm die Methode ermöglicht, effizient und gleichzeitig kreativ zu arbeiten.
Automatisierte Tools statt Selbstgestricktes
Oft verwendet jede Abteilung eigene Anwendungen, um Entwicklungsschritte zu dokumentieren, zum Beispiel Excel. Automatisierte, vor allem einheitliche Tools beschleunigen hier die Abläufe erheblich.
Nicht nur am Ende testen
Zeitgemäße Entwicklungsumgebungen erlauben es, auch einzelne Module zwischendurch zu testen, um immer auf dem neuesten Stand zu sein.

MATTHIAS BULLIGK: Die offenen Strukturen weisen in die richtige Richtung. Wir haben ja bereits in unserer Testzone "Innovum" die Erfahrung gemacht, dass dies zu einem erhöhtem Wissenstransfer unter den Kollegen führt. Der wichtigste Aspekt ist für mich, dass der komplette Entwicklungsbereich an einem Ort vereint ist. Dadurch wird die informelle Kommunikation über Abteilungsgrenzen hinaus wesentlich gestärkt.

Welche Überlegungen lagen der jetzt umgesetzten räumlichen Aufteilung zugrunde, und auf welchen Annahmen und Erfahrungen beruhten sie?

PETER KRUG: Das Konferenzzentrum und das Casino im Erdgeschoss nahe am Haupteingang zu platzieren, erleichtert die Nutzung bei externen Veranstaltungen und verringert den "Durchgangsverkehr" in den Bürozonen. Dasselbe gilt auch für die größeren dezentralen Besprechungsräume. Sie sind an der Magistrale angesiedelt, dem Hauptverkehrsweg durch den Campus. Im zweiten Stockwerk ist das Testcenter untergebracht, welches von nahezu allen Hauptabteilungen genutzt wird und daher auch "mitten" im Campus direkt an der Magistrale lokalisiert ist. Bei der Belegung der Bürozonen haben wir berücksichtigt, welche Hauptabteilungen die größten Schnittstellen bei ihrer täglichen Arbeit miteinander haben, so dass diese Einheiten dann entweder in nebeneinander liegenden Büroflächen angesiedelt werden oder in den jeweiligen Stockwerken übereinander. Zwischen den einzelnen Bürozonen beziehungsweise an deren Rändern sind flexible Arbeitsplätze eingerichtet, die nicht fest belegt sind. Dies erleichtert ebenfalls ein abteilungsübergreifendes Arbeiten.

MATTHIAS BULLIGK: Auch die Verprobung im bereits erwähnten Innovum hatte noch bauliche Konsequenzen. Beispielsweise wurden die Rückzugsräume neu konzipiert, weil sich gezeigt hat, dass sie in der Regel nicht von nur zwei bis vier Personen genutzt werden. Häufiger als gedacht zieht sich eine größere Zahl von Kollegen für Ad-hoc- Besprechungen zurück. Deshalb werden im IT-Campus 111 nun verschieden große Rückzugsräume angeboten.

PETER KRUG: Ja, von den Kolleginnen und Kollegen sind wichtige Erkenntnisse in den Neubau geflossen. So hatten wir die Möglichkeit, diverse Dinge auszuprobieren und zu prüfen. Im Innovum wurde beispielsweise die virtuelle Desktop-Infrastruktur getestet, so dass wir in den vergangenen Monaten zahlreiche "Kinderkrankheiten" beseitigen konnten.

Veränderungen werden immer auch kritisch betrachtet. Wie gelingt es, Akzeptanz für die neuen Arbeitsweisen zu schaffen?

MATTHIAS BULLIGK: Das Wichtigste ist, das Warum erklärt zu bekommen. Das Ziel ist ja nicht, unbedingt agile Entwicklungsmethoden einzuführen. Diese sind nur Werkzeuge, um die eigentlichen Ziele zu erreichen: Entwicklungszeiten zu verkürzen, Produktivität zu erhöhen, auf Veränderungen reagieren zu können und eine Kultur der kontinuierlichen Verbesserung zu schaffen.

PETER KRUG: Bereits seit Darwin wissen wir, dass nicht die Stärksten, sondern die Anpassungsfähigsten überleben. Wir müssen uns daher ständig fragen, ob unser Vorgehen und unsere bisherigen Methoden auch in Zukunft passend sind. In vielem werden wir feststellen, dass dem nicht so ist, und in manchen Fällen werden uns agile Entwicklungsmethoden, die bei uns seit einiger Zeit auch schon gelebt werden, eine Lösung bieten. Dabei muss allerdings berücksichtigt werden, dass diese Veränderung nicht nur die Mitarbeiterebene betrifft. Agil zu arbeiten ist eine Einstellung, eine Philosophie - und eine Arbeitsweise mit klar definierten Rollen und einfachen Regeln. Agile Teams führen sich selbst und reflektieren kontinuierlich ihren Erfolg. Entscheidungen werden damit dezentralisiert. Das ist eine Veränderung, die insbesondere unsere Führungsmannschaft beherzigen muss. (pg)