Direkt zum Hauptbereich

Aus dem Maschinenraum: Wie starten? #2: Release-Plan

Wie entsteht ein Scrum-Team? Wie starte ich ein Entwicklungsprojekt für ein Produkt? Womit anfangen? Was ist konkret zu tun, um ein effektives Team zu formen? Der Scrum-Guide sagt dazu nichts aus. Hier ein paar Ideen sowie Literaturhinweise, die sich für mich bewährt haben. Diesmal Schritt 2: Einen Releaseplan für Team und Stakeholder entwerfen.

Warum brauche ich überhaupt einen Release-Plan?

Ich komme noch einmal zu einer Kernaufgabe des Product Owners: Er muss klar machen, warum es sein Produkt geben soll. Was soll erreicht werden? Welches Problem für welche Kundengruppe bzw. für welche Anwender soll gelöst werden? Welches sind die Kernfunktionalitäten? Dazu hat er die Produktvision erstellt.

Er hat vielleicht eine User-Story Map erarbeitet. Personas beschreiben repräsentativ die verschiedenen Endanwendergruppen. Ihm ist (grob) klar, welche Prozesse und Prozess-Schritte von welchem Endanwender unterstützt werden sollen. Themen, Epics, User-Stories sind dementsprechend beschrieben. /1/

„Hilfe! Mein Product Owner kann nur 1-2 Sprints im Voraus denken!“

Jetzt können wir loslegen! Endlich! — Formell haben wir ja auch alles was der Scrum Guide an Artefakten beschreibt: Vision, Backlog Items. Man setzt sich auch brav ein Ziel für jeden Sprint.

Trotzdem habe ich bereits häufig erlebt, dass etwas fehlt: Das Team arbeitet vor sich hin und sieht trotzdem kein Ende. Der Product Backlog wird länger. Man verliert sich im Klein-Klein der Anforderungen. Frustrationen steigen. Ein Sprint gleicht dem vorherigen, ohne dass man gefühlt der Realisierung des Produktvision näher gekommen ist. Aussagen, wie „Hilfe! Mein Product Owner kann nur 1-2 Sprints im Voraus denken!“ werden getroffen.

Stakeholder werden unzufriedener. Sie sehen keinen Fortschritt. Leistungen des Teams werden nicht anerkannt, obwohl sie Tag und Nacht arbeiten. Erwartungen werden nicht erfüllt. Letztendlich wenden sie sich vom Produkt ab.

Der Product Owner gibt entnervt auf oder geht in die „innere Kündigung“.

High-Level Plan über den Sprint hinaus

Buchcover: Mike Cohn "Agile Estimating and Planning"Die Situation ist herausfordernd. Es fehlt etwas! Das Sprintziel ist zu kurz, um weit genug im Voraus zu planen. Die Produktvision ist als Ziel zu weit weg und liefert keinen roten Faden, wie man dahin kommen kann.

In dieser Situation hat sich für mich das Buch von Mike Cohn „Agile Estimating & Planning bewährt.

Es gilt Zwischenziele zu setzen: ein High-Levelplan, der über den einzelnen Sprint hinausschaut. Er beantwortet die Frage: welche Zwischenziele wollen wir mit den nächsten Releases bis wann erreichen? Ein Release umfasst dabei einen Zeitraum von typischerweise 3-6 Monaten. Je nach Länge passen also 3 bis 12 oder sogar noch mehr Sprints in ein Release.

Vorteile:

  1. Der Product Owner und das ganze Team entscheiden gemeinsam, wieviel entwickelt werden muss und wie lange es dauert bis man ein „Releaseable Product“ hat.
  2. Der Releaseplan hilft es Erwartungshaltungen von Stakeholder zu managen: Was wird in welchem Zeitraum entwickelt. Mit welchen Funktionalitäten kann wann gerechnet werden? Und mit welchen erst einmal nicht.
  3. Dies hilft auch dem Entwicklungsteam. Sie wissen auf welches zeitnahe Zwischenergebnis warum hingearbeitet wird und sich dabei zu fokussieren!
Beispiel Releaseplan

Wie entsteht der Release-Plan?

Mike Cohn schlägt 6 Schritte vor um einen Release-Plan zu erstellen:

  1. "Determine Condition of Satisfaction": Finde heraus, unter welchen Bedingungen das Projekt bzw. das Produkt als Erfolg bzw. als gescheitert angesehen wird. (Determine the conditions of Satisfaction): Bis wann muss es fertig sein? Reicht es Teile zuerst zu liefern?
  2. "Estimate the User Stories": Schätze die User-stories (auf Basis von Story Points). Dabei ist es nicht wichtig, alles abzuschätzen, was der Product Owner jemals haben können wollte. Es reicht, sich auf die Stories zu fokussieren, die es wahrscheinlich in die Release schaffen.
  3. "Select an iteration length": Wähle eine Sprint Länge zwischen 1- 4 Wochen. Diese sollte (wenn möglich) über die Projektlaufzeit stabil bleiben. Je schneller Feedback erwartet wird, ej höher die Unsicherheit im Sprint, desto kürzer die Sprint-Länge.
  4. "Estimate velocity": Schätze die Team-Velocity pro Sprint. Wieviele Story Points glaubt das Team pro Sprint schaffen zu können? Gerade bei neuen Teams ist das schwierig, weil sie noch keine Erfahrungswerte haben. In dem Fall hilft eine Schätzung und dann das Messen über die ersten Sprints hinweg.
  5. "Prioritize User Stories": Priorisieren der User Stories. Stories mit „High-Risk“ und hohem Wert zuerst. Auf welche Persona / Endanwendergruppe fokussieren wir uns zuerst? Was müssen wir tun, um zeigen zu können, dass der Prozeß durchläuft (Geradeaus-Fall). Gibt es „Forschungsaufträge (Spikes)“ um technische Unsicherheiten abzuklären?
  6. "Select Stories and a release date": Basierend auf Sprint-Länge und Team-Velocity: Selektiere Stories und ein Release-Datum. Wieviele Sprints braucht das Team insgesamt? Muss das Produkt zu einem bestimmten Termin fertig sein: Wieviele User Stories können wir maximal bis dahin fertig bekommen.

Schritte zur Erstellung eines Release-Planes

Falls das Ergebnis nicht zufriedenstellend ist, zurück zu Punkt 1: Welche Stories können wir ggfs. nicht realisieren oder können später kommen? Gibt es Anwendergruppen, die wir erst später bedienen? Wiederhole den Prozess so lange, bis die Bedingungen, das das kommende Release als erfolgreich angesehen wird, am besten gegeben ist.

Fazit

Ein Release-Plan hilft bei der schrittweisen Erreichung unseres Ziels durch Definition von Zwischenzielen. Er macht auf einem High-Level transparent, was bis wann erreicht werden soll. Dabei hilft er dem Entwicklungsteam sich zu fokussieren und die Erwartungshaltung der Stakeholder zu managen.

Er ist dabei nicht „fest in Stein gemeisselt“, sondern er kann dabei nach jeden Sprint, spätestens aber nach jedem Release aktualisiert werden.

Anmerkung

/1/ siehe Wie starten? #1: Ziel und Warum

Kommentare

Beliebte Posts aus diesem Blog

Microsoft Teams: Die neuen Besprechungsnotizen - Loop-Komponenten

  Haben Sie in letzter Zeit in einer Teams-Besprechung die Notizen geöffnet? Dort sind inzwischen die Loop-Komponenten hinterlegt. Die sind zwar etwas nützlicher als das, was zuvor zur Verfügung stand. Trotzdem ist noch Luft nach oben. Und es gibt sogar einige ernstzunehmende Stolperfallen. Hier ein erster, kritischer Blick auf das was Sie damit tun können. Und auch darauf, was Sie besser sein lassen.

Agile Sternbilder: Die Entdeckung kosmischer Agilitäts-Superkräfte

Hast du dich je gefragt, ob dein Sternzeichen deine Fähigkeiten in einer agilen Arbeitsumgebung beeinflusst? In diesem Blogpost tauchen wir ein in die faszinierende Welt der Astrologie und ihre mögliche Verbindung zu modernen Arbeitsweisen. Entdecke, wie die Sterne deine agilen Stärken prägen könnten. Ob überzeugter Agilist oder neugieriger Sternzeichenliebhaber – dieser Artikel kann dir neue Perspektiven eröffnen und vielleicht sogar dein nächstes Teamprojekt inspirieren!

Den passenden Job finden

Hier teile ich, wie ich daran arbeite, endlich den richtigen Job zu finden. Kleingedrucktes: Dieser Artikel richtet sich (natürlich) an jene, die gerade in der luxuriösen Position sind, dass sie nicht jedes Angebot annehmen müssen. Anstatt von Engagement zu Engagement zu hetzen und frustriert zu sein über Konzernstrukturen, fehlende Ausrichtung und die Erkenntnis, dass in einem selbst beständig die Hintergrundfrage nagt, ob es das ist, womit man seine immer knapper werdende Lebenszeit wirklich verbringen möchte, gibt es manchmal auch die Möglichkeit, die nächste berufliche Station etwas nachhaltiger auszusuchen - auch, um tatsächlich (etwas) mehr beitragen zu können.

Die Microsoft Teams-Not-To-Do-Liste

Viele hoffen, dass es  für die Einrichtung von Microsoft Teams  den Königsweg gibt, den perfekten Plan – doch den gibt es leider (oder glücklicherweise?) nicht. Genauso wenig, wie es jemals einen Masterplan für die Organisation von Gruppenlaufwerken gab, gibt oder je geben wird. Was gut und vernünftig ist hängt von vielen Faktoren und ganz besonders den Unternehmensprozessen ab. Sicher ist nur eines: Von alleine entsteht keine vernünftige Struktur und schon gar keine Ordnung. Dafür braucht es klare Entscheidungen.

Agilität ist tot. Ausgerechnet jetzt?

Agilität wird zurückgefahren, Hierarchien kehren zurück. Doch ist das wirklich der richtige Weg in einer Welt, die immer unberechenbarer wird? Oder erleben wir gerade eine riskante Rolle rückwärts?

Wie beschreibt man einen Workshop für eine Konferenz?

Konferenzen bieten immer ein gutes Forum, um sein Wissen und seine Erfahrungen zu teilen. Was für die Vortragenden selbstverständlich scheint, ist für die Besucher:innen oft unverständlich. Wie können Vortragende ihren Workshop in 2-3 Sätzen beschreiben, damit die Besucher:innen schnell einschätzen können, er sich für sie lohnt?

Gemeinsam eine Anwenderdokumentation erstellen

Unternehmenssoftware ist ein wichtiges Bindeglied zwischen Anwenderinnen und Anwendern, den Unternehmensprozessen und den Ergebnissen. Normalerweise schreibt der Hersteller der Software die Dokumentation für diejenigen, die die Software benutzen. Wenn die Software allerdings stark angepasst wurde, muss die Dokumentation von denen kommen, die die Prozessmaschine am besten verstehen - den Anwenderinnen und Anwendern. Wie könnte man das praktisch machen?

Scrum und Hardware: Es kommt auf die Basics an

Man kann Hardwareprodukte agil entwickeln. Zum einen kommt Scrum aus der Hardwareentwicklung. Die Softwerker haben die Hardwarekonzepte auf ihre Situation übertragen. Zum anderen hat Hardwareentwicklung heute ganz viel mit Software zu tun. Gerade in frühen Phasen kann man sich mit Simulationen noch viele Wege offen halten und mehrere Pfade parallel verfolgen. In diesem Beitrag empfehle ich eine Podcastfolge und ein Buch, für alle, die mit der Geschwindigkeit ihrer Hardwareentwicklung nicht zufrieden sind.