Blog
15. Januar 2020 Samuel Titka

Scaled Agile Framework (SAFe) in Jira

In der vergangenen Zeit haben wir agile Transformationen in großen Unternehmen beobachtet. Wir erwarten, dass dieser Trend auch im Jahr 2020 weitergehen wird. Dabei werden wir uns auf eines der beliebtesten Frameworks konzentrieren – SAFe.

In der Vergangenheit haben wir agile Transformationen in großen Unternehmen erlebt.

 

Wir erwarten, dass dieser Trend auch in Zukunft anhalten wird. Jira Software ist der Marktführer unter den Tools für die agile Softwareentwicklungsteams. In unserem heutigen Blogbeitrag werden wir Ihnen zeigen, wie Sie die Vorteile von Jira Software nutzen können, um agile Prinzipien zu skalieren.

Dabei werden wir uns auf eines der beliebtesten Frameworks konzentrierenSAFe.

SAFe in einer Nussschale

SAFe® ist ein Akronym, das von Scaled Agile Framework® abgeleitet ist. Im Kern handelt es sich um eine Reihe von

  • von Best Practices,
  • Regeln,
  • integrierbaren Prinzipien
  • und Kompetenzdefinitionen.

SAFe wird als Produkt eines eingetragenen Unternehmens, Scaled Agile, Inc, entwickelt.
Die erste Version wurde 2011 veröffentlicht. Seitdem hat sich dieses Produkt evolutionär weiterentwickelt, wobei die aktuelle Version 5.0 ist (vorherige Versionen: 1.0, 2.0, 3.0/LSE, 4.0, 4.5 und 4.6).

SAFe zielt darauf ab, größere Unternehmen in Richtung agiler, leaner und DevOps-Methoden zu transformieren. Die Anwendung der Prinzipien dieser Methoden ermöglicht es Unternehmen, schnell und effektiv auf sich ändernde Marktbedingungen, plötzliche Änderungen der Kundenbedürfnisse oder den Aufstieg neuer Technologien zu reagieren.

SAFe hilft dabei, Produkte, Dienstleistungen und Lösungen effizient zu liefern. Seine Vorteile werden auch durch mehrere Fallstudien aus großen und kleinen Unternehmen bestätigt. Dazu gehören:

  • Steigerung der Produktivität um 20 – 50%
  • Qualitätsverbesserung um 25 – 75%
  • Reduzierung der Lösungsbereitstellungszeit um 30 – 75%
  • Steigerung des Engagements und der Zufriedenheit der Mitarbeiter um 10 – 50%

Da es sich um ein skalierbares und anpassbares Framework handelt, können Unternehmen es an ihre Bedürfnisse, Gewohnheiten und Unternehmenskultur anpassen. Es gibt 4 Standardkonfigurationen:

  • Essential SAFe (Die einfachste Konfiguration, die die wichtigsten Vorteile bietet. Enthält die minimalen Elemente, die für eine erfolgreiche Anwendung von SAFe erforderlich sind).
  • Large Solution SAFe (Deckt die Entwicklung größerer komplexer Lösungen ab.)
  • Portfolio SAFe (beschreibt im Vergleich zu Large Solution zusätzlich die Portfolio-Ebene – das strategische Management, die Finanzierung usw.)
  • Full SAFe (Vollständige und umfassende Konfiguration. Es ist für die Entwicklung großer komplexer integrierter Lösungen gedacht, die verwaltet werden müssen und die Zusammenarbeit von Hunderten von Mitarbeitern erfordern).

Wie Sie sehen können, kann SAFe von einigen beteiligten Mitarbeitern oder sogar Hunderten von Mitarbeitern praktiziert werden. Es ist wichtig zu bedenken, dass SAFe ein Rahmenwerk ist, das strikt nicht dazu zwingt, alle beschriebenen Prinzipien und Regeln bis ins Detail zu übernehmen.

SAFe zielt darauf ab, Probleme zu lösen, die durch das Skalieren über die Grenzen eines Teams hinaus entstehen. Agile Methoden (Scrum, Kanban usw.) konzentrieren sich nur auf individuelle Teams. Das Ziel von SAFe ist es, die Zusammenarbeit und die Ergebnisse dieser individuellen Teams zu synchronisieren.

Natürlich ist SAFe nicht der einzige Rahmen, der Lösungen für diese Probleme beschreibt. Andere bekannte Alternativen sind z.B.:

  • DAD (Disciplined Agile Delivery)
  • LeSS (Groß angelegter Scrum)
  • Nexus

Wann sollte SAFe verwendet werden?

Die Einführung von SAFe geht über die Implementierung eines Tools zur Arbeitsverfolgung hinaus. Es handelt sich um eine Veränderung, die eine Denkweise der Mitarbeiter in Richtung Lean/Agile-Prinzipien erfordert. Ein Verständnis dieser Methodologien ist bereits zu Beginn des Transformationsprozesses unerlässlich. Schlüsselmitarbeiter sollten motiviert sein, agile Prinzipien konsequent über verschiedene Projekte und Portfolios hinweg anzuwenden.

Wann sollte man eine Umwandlung in Betracht ziehen?

  • Wenn Teams die ihnen zugewiesene Arbeit selbstständig und unabhängig durchführen wollen.
  • Wenn mehrere Teams bereits agile Praktiken (meist Scrum) anwenden, ihre Ergebnisse sich aber häufig verzögern, weil ein anderes Team ihre Arbeit blockiert.
  • Wenn das Ziel darin besteht, agile Praktiken im gesamten Unternehmen zu verbreiten, es aber nicht ganz klar ist, welche Rollen sich wie ändern müssen.
  • Wenn die Produktivität gesteigert und die Zeit für die Bereitstellung von Lösungen verkürzt werden soll.
  • Wenn Sie während der Lösungsentwicklung auf eine Reihe von technischen oder geschäftlichen Abhängigkeiten stoßen oder wenn eine komplexe kollaborative Koordination erforderlich ist.
  • Wenn das Unternehmen groß ist oder wenn komplexe Lösungen entwickelt werden, die die Zusammenarbeit mehrerer Teams erfordern.
  • Wenn das Unternehmen einen kritischen Punkt erreicht hat:
    • „Eine brennende Plattform“ – Das Unternehmen hat Schwierigkeiten, wettbewerbsfähig zu sein, und es ist problematisch, diesen Zustand schnell genug umzukehren.
    • „Visionäre Führung“ – Das Unternehmen will proaktiv handeln, um sich in Zukunft eine bessere Marktposition zu sichern.

Mehrere Unternehmen haben die Einführung von SAFe als eine der größten Herausforderungen bezeichnet, geben jedoch gleichzeitig an, dass sie viele Vorteile gebracht hat, was als eine verdiente Belohnung angesehen wird.

Fähigkeiten der Jira Software im Kontext von SAFe

Jira-Software standardmäßig sofort nach der Installation:

  • Enthält eine Vorlage für ein Scrum-gesteuertes Projekt (oder Kanban, Kanplan), die Folgendes umfasst
    • Backlog – für die Priorisierung und Terminierung von Aufgaben
    • Kanban-Board – für die Verwaltung aktiver Sprint-Aufgaben
    • Epic → Story → Sub-Task-Hierarchie – für die Arbeitsaufteilung
    • Metriken und Berichte (z.B. Burndown Chart oder Velocity Chart) – für retrospektive Zwecke
  • Ermöglicht die Verknüpfung von Jira-Aufgaben mithilfe von Bindungen und damit die Verfolgung ihrer Abhängigkeiten.
  • Generell können Sie damit jede Arbeitseinheit verfolgen – ihren Status aufzeichnen und sie mit Hilfe von Attributen oder zusätzlichen Konfigurationen, die möglicherweise erstellt wurden, detailliert beschreiben oder kategorisieren.

Diese Standardfunktionalität deckt teilweise die niedrigste Ebene in SAFe ab, das sogenannte Essential-Level. Hier geht es unter anderem um das Management der Arbeit innerhalb einzelner Teams und die Synchronisierung ihrer Outputs zur Integration von Teillösungen in das Gesamtwerk.

Darüber hinaus wird verschiedene teilweise standardmäßige Jira-Funktionalität auch auf den höheren beiden Ebenen, dem sogenannten Large Solution Level und dem Portfolio Level, genutzt. Ein Beispiel dafür ist die Verwendung von Kanban-Boards zur Verwaltung des Portfolio- oder Lösungsrückstands sowie die Erfassung strategischer Themen als einzelne Jira-Aufgaben und ähnliches.

Um jedoch alle Anforderungen von SAFe in Jira Software vollständig abzudecken, muss ihr volles Potenzial genutzt werden.

  • Die Flexibilität von Jira und seine Konfigurierbarkeit. Es geht um die Anpassung von Standardeinstellungen, um sie an die spezifischen Bedürfnisse von SAFe und die Anforderungen des Unternehmens anzupassen. Beispiele sind die Anpassung von Workflows, Attributen, Zugriffsrechten oder Benachrichtigungen.
  • Erweiterbarkeit von Jira. Dazu gehört die Installation von Modulen, so genannten Jira Apps, von der Atlassian Marketplace-Plattform. Dies kann dem Jira-Tool eine große Anzahl neuer, notwendiger Funktionen hinzufügen. Spezifische Beispiele sind unten aufgeführt.

Beispiel aus der Praxis

Bei einem Kunden lief eine agile Transformation ab. Die Lösung, die auf der Jira-Plattform aufgebaut wurde, wurde aufgrund ihrer schnellen Implementierung und Flexibilität bevorzugt. Schrittweise plant der Kunde, Jira zu einem zentralen Tool für das Management und die Erfassung der Arbeit der Mitarbeiter zu machen. Der Kunde schätzte auch die Benutzerfreundlichkeit und das moderne UI des Jira-Tools. Die Modularität und Erweiterbarkeit von Jira waren ebenfalls Vorteile, die Jira im Auswahlprozess des Tools interessant machten. Eine gewünschte Eigenschaft war auch ein einfacher Upgrade auf höhere Versionen, was Jira perfekt erfüllt. Nicht zuletzt kann Jira nativ mit dem Tool Confluence integriert werden. Confluence ist ein Dokumentations-/Wiki-Tool von Atlassian.

Während der Implementierung der SAFe-Prinzipien in das Jira-Tool für einen unserer Kunden haben wir, unter anderem, die folgenden Herausforderungen angegangen:

Mehrstufige Aufgabenhierarchie

Zum Zweck der Visualisierung der Aufgabenhierarchie, praktisch von der höchsten bis zur niedrigsten Ebene, griffen wir auf die Jira-Anwendung Structure zurück. Damit können wir einen Überblick über die Zerlegung von Managementinitiativen bis hin zu einzelnen Aufgaben für Entwickler und ähnliches erhalten.

Structure ermöglicht es, eine Hierarchie von Jira-Aufgaben basierend auf verschiedenen Regeln aufzubauen und anzuzeigen. Wir haben die Aufgabenhierarchie auf der Grundlage von Verknüpfungen (Issue Links) erstellt. Eine weitere große Vorteil ist die Möglichkeit, verschiedene Attribute anzuzeigen und sogar direkt aus dieser Ansicht zu bearbeiten. Nicht zuletzt kann Structure die Werte der Attribute nach oben aggregieren, was sich sehr gut für die Analyse von Arbeitszeiten oder Schätzungen auf höheren Ebenen eignet.

Terminologie vs. Funktionalität

Um diesen Punkt nicht unnötig kompliziert zu beschreiben, geht es darum: Aus Sicht von SAFe wäre es besser, wenn die Standardentität „Epic“ in Jira als „Feature“ bezeichnet würde. Standardmäßig ermöglicht Jira jedoch nicht die Umbenennung dieser Entität.

Es ist wahr, dass in Jira viele neue Arten von Jira-Aufgaben erstellt werden können, und es könnte daher erscheinen, als ob es ausreichen würde, einen neuen Aufgabentyp mit dem Namen „Feature“ zu erstellen. Dies mag zwar als angemessene Lösung erscheinen, überträgt jedoch nicht die spezifische Funktionalität von Jira, die mit Epic verbunden ist. Und diese Funktionalität würde genau den Anforderungen bei der Arbeit mit „Feature“ entsprechen.

Es gibt jedoch eine sehr elegante Lösung: Die Jira-Anwendung SAFe EPIC to Feature Translator for Jira, die den Benutzern „Feature“ anstelle von „Epic“ anzeigt. Technisch gesehen bleibt jedoch im Hintergrund „Epic“ weiterhin „Epic“, wodurch alle Standardfunktionen und die Kompatibilität mit anderen Jira-Anwendungen erhalten bleiben.

Verwaltung von Managementinitiativen

Die Verwaltung von Initiativen, d.h. deren Erfassung, Priorisierung und Planung, haben wir mit der Standardfunktionalität von Jira Software abgedeckt – wir haben ein Kanban-Board erstellt. Dieses Kanban-Board enthält alle Initiativen – es handelt sich um Jira-Aufgaben eines bestimmten Typs, die über die erforderlichen Attribute verfügen. Ein Beispiel hierfür könnte das Attribut sein, das für die Planung verwendet wird – das Programminkrement.

Ein Blick auf eine solche Tabelle genügt, um sofort zu erkennen, in welchem Stadium des Lebenszyklus sich eine Initiative befindet, und welche Initiativen am wichtigsten sind.

Das Programminkrement-Planungsbrett (PI Planning Board)

Das Event des PI-Plannings, also der Planung des Programminkrements, ist unerlässlich, wenn wir die Zusammenarbeit und die Ergebnisse mehrerer agiler Teams synchronisieren wollen.
Ein äußerst nützlicher Helfer bei diesem Event ist das PI Planning Board. Es handelt sich um eine Tafel, auf der geplante Aufgaben für die einzelnen Teams, die einzelnen Iterationen und nicht zuletzt die Abhängigkeiten angezeigt werden. Es könnte etwa so aussehen:

Jira Software in der Standardkonfiguration bietet jedoch nicht die erforderliche Visualisierung für ein solches Dashboard. Deshalb griffen wir auf die Jira-Anwendungen BigPicture (zusammen mit BigPicture Enterprise) zurück. BigPicture enthält ein Modul, das perfekt den Anforderungen der Programminkrement-Planung entspricht.

Dieses Modul ermöglicht es, Teams, die an einer bestimmten Lösung arbeiten, in den Zeilen anzuzeigen, die ausgewählte Anzahl von Iterationen in den Spalten und Karten in den einzelnen Zellen anzuzeigen, die die Aufgaben darstellen, die für diese Iteration für das jeweilige Team geplant sind. Es visualisiert auch Abhängigkeiten zwischen den Aufgaben – in roter, grüner oder grauer Farbe (siehe Pfeile im obigen Bild). Abhängig davon, ob es Konflikte in der Planung gibt oder nicht (z. B. Aufgabe A muss vor Aufgabe B erledigt werden, aber sie wurden in umgekehrter Reihenfolge in den Iterationen geplant…), wird die Verbindung in grüner oder roter Farbe angezeigt.

Dieses Modul enthält sogar einen Abschnitt für den sogenannten Program Backlog – hier werden alle Aufgaben gesammelt, die noch nicht geplant wurden.

Verschiedene Lösungen und Ansätze

Es gibt verschiedene Alternativen zu SAFe sowie verschiedene Ansätze zur Implementierung von SAFe in Jira. Die oben beschriebenen Ansätze, die wir angewendet haben, sind nur einige davon.
Einige der bekannteren Autoren von Jira-Anwendungen beschreiben verschiedene Lösungen:

Wir haben festgestellt, dass obwohl sich die Lösungen unterscheiden, sie oft eine Kombination aus vorhandenen Jira-Anwendungen nutzen, zum Beispiel:

Zu Ihrer Information gibt es auch eine Lösung von AtlassianJira Align (früher bekannt als AgileCraft). Es sei jedoch darauf hingewiesen, dass diese Lösung derzeit von einer kleineren Anzahl sehr großer Unternehmen genutzt wird und über mehrere Jira-Instanzen aufgebaut ist.

Hat Sie dieses Thema interessiert? Möchten Sie mehr darüber erfahren?

 

Samuel Titka
Atlassian-Berater

Wenn Sie Unterstützung von Experten benötigen, um Atlassian-Produkte einzuführen oder einzurichten, oder wenn Sie Ratschläge zur effizientesten Nutzung in Ihrem Unternehmen wünschen, zögern Sie nicht, uns zu kontaktieren.

Unsere Atlassian-Lösungen

ähnliche Projekte