Montag, 4. Februar 2013

Koordination von vielen Teams am Beispiel vom Scaled Agile Framework (SAFe) und Scrum

Wie organisiert man viele Teams, die auf ein gemeinsames Ziel hin arbeiten (z. B. ein neues Produkt erstellen oder ein großes Softwarepaket entwickeln)? Mit dem Scaled Agile Framework legt Dean Leffingwell ein umfassendes Organisationsmodell vor. Es zeigt, wie die Anforderungen großer Unternehmen und die Prinzipen von agilen und Lean-Methoden praktikabel vereint werden können. SAFe macht Vorschläge, wie die verschiedenen Ebenen im Unternehmen (Team, Programm, Portfolio) organisiert werden können. Ziel ist, möglichst schnell aus strategischen Ideen marktfähige Produkte zu machen. Das Modell ist frei im Netz verfügbar. Grund genug, uns damit näher zu beschäftigen.

Ich benutze gern Beispiele und Modelle aus der IT-Branche. Das liegt daran, dass dort viel mit Organisationsmodellen experimentiert und veröffentlicht wird. Solche Erkenntnisse sind auch für andere Branchen interessant und nutzbar. In diesem Beitrag möchte ich SAFe vorstellen (/1/). An dieser Stelle Dank an die ersten beiden deutschen SAFe-Trainer (offzieller Titel SAFe Program Consultant) Markus Meuten und Felix Rüssel, die uns in zwei Workshop-Tagen das Modell näher gebracht haben (/8/).

Teilnehmer des Workshops (v. l. n. r. oben: Jean Pierre Berchez, Jan Weinkauff, Lutz Ehrlich, Jan Fischbach, Marc Janas, Falko Nitsche, Kaschef Yawar; unten: Markus Stechele, Markus Meuten, Jürgen Dittmar, Felix Rüssel, Bjoern Wolf)
Eindrücke vom Workshop

Viele Unternehmen haben gute Erfahrungen damit gemacht, neue Produkte von einzelnen oder wenigen Teams entwickeln zu lassen. Diese Teams arbeiten agil/lean zusammen. Die bekannteste agile Methode ist Scrum (/2/). Nun gibt es aber Produkte, die so groß sind, dass 1-5 Scrum-Teams diese nicht allein entwickeln können. Die Gefahr besteht, dass das Produktmanagement in eine nicht-agile Arbeitsweise zurückfällt. Es produziert viel Papier (Dokumente mit Anforderungen, Verträge, umfangreiche Spezifikationen, Vorgaben für die Architektur), was die Zeit zwischen Idee und Feedback vom Markt verlängert. Solch eine Verzögerung ist risikoreich und kann das Unternehmen viel Geld kosten (engl. cost of delay). Stellen Sie sich vor, Apple hätte das iPad mit seinen heutigen Eigenschaften zunächst vollständig spezifiziert, bevor das erste Exemplar produziert worden wäre.

Dean Leffingwell hat auf Basis seiner umfangreichen Erfahrungen in der IT-Branche einen Ansatz entwickelt, wie die grundlegenden Prinzipien von Scrum auf den unterschiedlichen Managementebenen angewendet werden können:
  • Team: Das Team organisiert sich weiterhin nach Scrum. Es wird in festen Zeitabständen etwas geliefert. Die Rolle des Product Owners ändert sich jedoch etwas; im Scaled Agile Framework fokussiert sich der Product Owner stark auf das Team.
  • Programm: Teams werden in (virtuellen) Programmen, den sogenannten Agile Release Trains zusammengefasst. Hierbei liegt das Augenmerk darauf, die einzelnen Teams zu synchroniseren. Das bedeutet zum Beispiel, dass alle Teams ihre Sprints am gleichen Tag beginnen und beenden (/3/). Das Programm fasst mehrere Sprints zu einem Release zusammen. Deswegen ist es die Aufgabe der verschiedenen Rollen der Programmebene, die Planung und die Lieferung der einzelnen Teile zu organisieren.
  • Portfolio: Über dem Programm befindet sich das Portfolio. Aufgabe dieser Ebene ist es, über Investitionen und Architektur zu entscheiden.
Dazu ein Beispiel: Ein ERP-Hersteller entscheidet, Tablet-Rechner zu unterstützen.
  • Auf der Portfolio-Ebene ist das ein Investitionsthema, das im Portfolio-Backlog notiert wird. Ein Enterprise Architect überlegt sich dazu den groben Rahmen und notiert dies ebenfalls im Portfolio-Backlog.
  • Auf der Programm-Ebene werden die groben Themen in sog. Features heruntergebrochen und im Program Backlog notiert. Bei der Planung werden die Einträge aus diesem Backlog auf verschiedene Releases verteilt. Beim Release Planning wird z. B. das Feature "iPad-Anbindung für Modul X" vorgestellt.
  • Die Teams entwickeln nun dazu ihre User Stories und tragen dies im Team-Backlog ein. Bis zum Release liefern sie alle Funktionen für dieses Feature.
SAFe definiert wie andere Vorgehensmodelle auch verschiedene Rollen und Abläufe. Wer sich genauer informieren möchte, kann einen Blick auf die Webseite von SAFe werfen. Es gibt auch eine Reihe von Büchern, die sich mit den einzelnen Bereichen beschäftigen (siehe /4, 5, 6, 7/). Ich empfehle, Leffingwells Anforderungsbuch von 2010 zuerst zu lesen (/6/). Was mir wirklich geholfen hat, war der o. g. Workshop mit den anderen erfahrenen Scrum Mastern. Wir haben in zwei Tagen intensiv diskutiert. Und wir werden uns auch im Nachgang noch über viele Aspekte und Erfahrungen austauschen.

Jedes Modell hat seine Vor- und Nachteile. Da muss man realistisch bleiben. Was mir an SAFe gut gefällt sind folgende Punkte:
  • Es bezieht mehrere Ebenen im Unternehmen konkret ein.
  • Es macht Vorschläge, wie man mit Architektur umgeht. Das finden wir in anderen Methoden nicht.
  • Es ist konkreter, weil es sich auf die Entwicklung von Software beschränkt.
  • Die Beschreibung ist frei verfügbar und es gibt offizielle Trainings.
Firmen, die in großem Stil Software entwickeln, werden bei SAFe gute Anregungen finden. Aber auch andere Unternehmen, die neue Produkte am Markt testen wollen, werden von SAFe profitieren. Die Ansprechpartner in Deutschland sind Felix und Markus (siehe oben).

Anmerkungen

  • /1/ Scaled Agile Framework™, offizielle Webseite, http://scaledagileframework.com/
  • /2/ Wikipedia, Stichwort "Scrum", Version vom 12.01.2013, 08:34, abrufbar unter http://de.wikipedia.org/wiki/Scrum
  • /3/ Es gibt zu allen Punkten Details und Ausnahmen. Darauf möchte ich jetzt aber nicht eingehen.
  • /4/ Leffingwell, Dean: Scaling Software Agility : Best Practices for Large Enterprises. 1. Aufl.. Amsterdam: Pearson Education, 2007, http://www.amazon.de/dp/0321458192/
  • /5/ Leffingwell, Dean: Agile Software Requirements : Lean Requirements Practices for Teams, Programs, and the Enterprise. 1. Aufl.. Boston: Addison-Wesley Professional, 2010, http://www.amazon.de/dp/0321635841/
  • /6/ Reinertsen, Donald G.: The Principles of Product Development Flow : Second Generation Lean Product Development. 1. Aufl.. : Celeritas Publishing, 2009, http://www.amazon.de/dp/1935401009/
  • /7/ Larman, Craig ; Vodde, Bas: Scaling Lean & Agile Development : Thinking and Organizational Tools for Large-Scale Scrum. 1. Aufl.. Amsterdam: Pearson Education, 2009, http://www.amazon.de/dp/0321480961/
  • /8/ Der Workshop fand am 12. und 13. Januar 2013 in Frankfurt/Main statt.

1 Kommentar:

  1. In Deutsch gibt es dazu auch noch das:
    http://scalingsoftwareagilityblog.com/chapter-2-of-agile-software-requirements-now-in-german/
    und
    http://www.aitgmbh.de/fileadmin/downloads/Whitepaper_Multi-Team-Scrum.pdf

    AntwortenLöschen