WSJF Priorisierung für Backlogs

WSJF
Von Sebastian Schneider // 18.02.2022 // 0 Kommentare

Der WSJF (Weightest Shortest Job First) ist eine Priorisierungsmethode. Du kannst diese Methode oder Technik dazu nutzen unterschiedliche Dinge in eine Reihenfolge zu bringen. Oft wird das für Projekte oder Backlogs getan. Du kannst dir aber auch verschiedene andere Dinge vorstellen, die du nach den sogenannten Verzögerungskosten priorisieren möchtest.

Wo der WSJF herkommt

Der Weightest Shortest Job First stammt aus der Feder von Don Reinertsen, aus dem Buch The Principles of Product Development Flow. Dort beschreibt Reinertsen - seit über 30 Jahren im Geschäft der Produktentwicklung tätig - Prinzipien, die für die Produktentwicklung Gültigkeit haben. Und in eben diesem Buch, stellt er auch die Verzögerungskosten, die nun Grundlage für den WSJF sind.

Scaled Agile Framework

Leider oft angenommen, doch nie wahr: das Scaled Agile Framework hat weder den WSJF erfunden noch eingeführt. Wie so oft beim SAFe werden viele Dinge vom Markt kopiert und in das Framework integriert. So ist es auch mit dem WSJF hier geschehen.

Was das Scaled Agile Framework allerdings gemacht hat, ist die Berechnung für den WSJF zu konkretisieren. So findet sich eine besondere, erweiterte Berechnung des CoD (Cost of Delay).

Was ist der WSJF genau?

Eine Priorisierungsmethode, die eine Zahl als Ergebnis erzeugt, die die Reihenfolge in dem Backlog (oder allgemein: der zu priorisierenden Elementen) darstellt. Dabei erfolgt die Sortierung nach den sogenannten Verzögerungskosten, als den Kosten die entstehen, wenn du etwas nicht tust.

Die Voraussetzungen

In diesem Abschnitt schaue ich mit dir auf die Voraussetzung vom WSJF. Denn auch der Weightest Shortest Job First ist kein Silver Bullet und passt nicht immer. Sprich: du brauchst auch ein paar Rahmenbedingungen, die unbedingt gegeben sein sollten, damit dein Erlebnis mit dem WSJF auch wirklich aufgeht.

Wunsch nach Verzögerungskosten zu priorisieren

Nicht zu selten habe ich Diskussionen, warum der WSJF nicht oder nicht genau so, wie beschrieben, angewendet werden kann. Ich will jetzt gar nicht auf die einzelnen Gründe eingehen, oft kommt als Ergebnis eine Überraschung heraus.

Es wurden sich keine oder nur unzureichende Gedanken gemacht, was die Priorisierung aussagen soll. Bei dem Weightest Shortest Job First wird nach den sogenannten Verzögerungskosten priorisiert.

Möchte also auch dein Unternehmen nach den Verzögerungskosten priorisieren, dann tut es gut daran, den WSJF nicht anzupassen. Doch dazu später mehr.

Kenntnis über die zu priorisierenden Themen

WSJF Einträge verstehen

In vielen Unternehmen herrscht nach wie vor ein folgendes oder ähnliches Bild. Es gibt Menschen in der Organisation, die etwas möchten und entscheiden sollen. Diese Menschen haben oft leider kein ausreichend tiefes Verständnis über das, was priorisiert werden soll. Schlimmer noch, es wird dann wieder in die Priorisierung eingegriffen. Damit der WSJF (wie übrigens jede andere Priorisierung auch) funktioniert, solltest du wissen, was du priorisierst.

Wenig Abhängigkeiten zwischen den Elementen

WSJF Abhängigkeiten

Wenn wir viele Einträge mit vielen Abhängigkeiten haben, dann wirst du am WSJF nur bedingt Freude haben. Das liegt aber nicht am WSJF selbst oder der Methode, sondern garantiert daran, dass du kein wirklich agile inkrementelles und interaktives Vorgehen anwendest. Damit haben wir also ein gewisse Voraussetzung, dass du innerhalb bestimmter Zeitabschnitte in der Lage bist, Wert zu erzeugen.

Lösen von der Ressourcen-Denke

WSJF Wert und Ressourcen

Wie viele andere Priorisierungsmethoden auch, sortiert der WSJF nach Wert. Sprich es geht nicht darum, Ressourcen zu verplanen (jedenfalls im Zuge der Priorisierung nicht). Die Liste orientiert sich zwar anhand der "Größe" (Zahl im Nenner der SAFe Formel) aber nicht an allokierten Ressourcen.

Die Vorteile

Geschwindigkeit

Der WSJF ist schnell. Du hast damit die Möglichkeiten die Anzahl der Features (oder Projekte, ...) schnell zu bewerten. Zwar hängt das wieder rum davon ab, wie du den CoD bestimmst, aber grundsätzlich kann es mit der Technik, die das SAFe vorschlägt (relative Priorisierung mit Fibonacci Reihe), sehr zügig durchgeführt werden.

Einfachheit der Methode

Um den Weightest Shortest Job First anwenden zu können, benötigt es echt nicht viel. Ganz im Gegenteil. Wir brauchen nur wenige Minuten und du verstehst absolut, wie dieser funktioniert. Damit kannst du viele Menschen, unabhängig von deren Ausbildung und Position, in die Priorisierung einbinden.

Stabil trotz Manipulationsversuchen

Gerade wenn du die im SAFe verwendete Berechnung des CoD's verwendest, dann ist es meisten schwer, die Bewertung zu manipulieren. Probiere es ruhig mal aus - einzelne Komponenten in der Berechnung ändern wenig an deinem Ergebnis. Der Große Hebel ist die Größe.

Nutze einmal die nachstehende Tabelle und sortiere sie dir nach der Spalte "WSJF Index". Diese Spalte zeigt dir die Reihenfolge in deinem Backlog.

Probiere nun mal folgendes aus: Die ersten vier wichtigsten Feature (16,17,05 und 19) können im nächsten Sprint / Iteration / Zeitabschnitt erledigt werden. Du möchtest jetzt aber unbedingt, dass dein Feature (der Eintrag 02) nach vorne kommt. Rechne dir mal durch, welche Anstrengungen dafür notwendig sind!

Auch wenn du bei der WSJF Priorisierung nun andere Werte hast und mein Beispiel auch immer hinkt, so wirst du in der Realität immer ein ähnliches Muster feststellen: Es ist gar nicht so leicht Product Backlog Items zu "überholen"

PBI

Business Value

Time Criticality

Risk Reduction / Opportunity Enablement

Job Size

WSJF Index

01 Feature

13

8

5

5

5,200

02 Feature

20

8

5

5

6,600

03 Feature

1

1

1

1

3,000

04 Feature

3

1

8

8

1,500

05 Feature

8

3

3

1

14,000

06 Feature

3

5

3

2

5,500

07 Feature

2

2

3

8

0,875

08 Feature

1

2

2

5

1,000

09 Feature

3

8

1

3

4,000

10 Feature

5

13

8

5

5,200

11 Feature

8

2

1

13

0,846

12 Feature

20

2

13

20

1,750

13 Feature

3

1

8

8

1,500

14 Feature

3

8

3

8

1,750

15 Feature

2

13

2

3

5,667

16 Feature

8

20

13

2

20,500

17 Feature

5

8

5

1

18,000

18 Feature

20

8

5

13

2,538

19 Feature

3

5

3

1

11,000

20 Feature

1

3

2

2

3,000

Schafft Transparenz über Bewertung und Verständnis

Alleine nur wenn Organisationen das erste Mal gemeinschaftlich klar vor Augen haben, wie die gesamte Organisation Wert und einzelne Komponenten der Berechnung sehen, zeigt oft ein spannendes und wichtiges Bild. Es ist nämlich die Klarheit und Transparenz über die Bewertung und das Verständnis, welches richtig geschaffen wird.

Der Weightest Shortest Job First in der Praxis

Lass uns einmal durchspielen, wie eine Priorisierung in der Praxis tatsächlich aussehen würde und auf was du in diesem Zusammenhang immer achten musst.

Verständnis schaffen

Bevor du eine Priorisierungsmethode verwendest, solltest du sie auch kennen. Wenig überraschend ist es, das alle Beteiligten verstehen müssen, was sie zu tun haben. Das musst du durch gewisse Informationsformate zur Verfügung ermöglichen. Bis heute gilt aber auch hier: Die Teilnehmer müssen aktiv in das Ausprobieren gehen und die Methode erleben.

Ich sehe bis heute Menschen in Organisationen, die es schaffen sich dem Wissen zu entziehen, nie an einer Schulung dazu teilgenommen haben und trotzdem in der Position sitzen, diese Priorisierung durchzuführen. Funktioniert nicht. Achte darauf, dass du selbst Klarheit darüber hast, ob alle Beteiligten das Thema verstanden haben.

Die Einträge selbst Verstehen

Zunächst einmal müssen alle wissen, was es zu priorisieren gibt. Das ist wenig überraschend, stellt viele große Unternehmen dennoch vor Probleme. Doch dazu später mehr. Denn du musst die Themen für die Priorisierung auch verstehen. Interessanter Weise verstehen das alle, wenn es um Scrum und ein Product Backlog geht. Weniger verstehen es viele Menschen scheinbar, wenn es um die Priorisierung in der Skalierung geht. Gerade beim Scaled Agile Framework finde ich immer und immer wieder Situationen vor, in denen die mit dem WSJF zu priorisierenden Themen nicht bei allen Teilnehmern bekannt sind. Das für unweigerlich zu Problemen, was nicht der Methode geschuldet ist!

Einträge vorbereiten

Die eigentliche Vorbereitung mit dem Weightest Shortest Job First ist nicht aufwendig, wenn sie so durchgeführt wird, wie gedacht. Denn alle Einträge, die zu bewerten sind benötigen lediglich den Cost of Delay und die Job Size.

Was du aber auf jeden Fall benötigst ist ein Verständnis deiner Features, Projekte oder Backlog Items allgemein. Dafür macht es Sinn dir ein entsprechendes Format zu überlegen und das gemeinschaftlich zu verstehen und zu verwenden. Gerade größere Unternehmen oder Unternehmen mit bestimmten Rahmenbedingungen wie Rechte & Normen tun sich damit deutlich leichter.

Priorisierung durchführen

Die Priorisierung kannst du in der Regel auch nach einem einfachen, festen Muster durchführen.

  • Führe für alle zu bewertenden Backlog Items zuerst alle Bewertungen für eine Komponente durch (z.B. Business Value oder den CoD). Hast du 10 Einträge, dann startest du mit 10x der gleichen Komponente  (z.B. Business Value oder den CoD)
  • Finde für die Komponente das kleinste Element als Referenz (wenn du es nicht findest, nutze Magic Estimation, eine Technik für agiles Schätzen). Halte fest, dass dieses Backlog Item nun für deine Komponente den kleinsten Wert hat.
  • Bewerte alle anderen Backlog Items der gleichen Komponente dagegen relativ mit der Fibonacci Reihe. Halte auch hier die Ergebnisse direkt im Product Backlog Item fest.
  • Nimm dann die nächste Komponente und verfahre wieder wie oben, halte auch diese Werte fest

Fehler und Mythen vom Weightest Shortest Job First

In meiner Arbeit mit großen Unternehmen findet sich der Weightest Shortest Job First oft in der Anwendung. Interessanterweise oft aber falsch angewendet. Manchmal aus dem Nichtwissen heraus, manchmal eher, weil man denkt, "man müsse das mal anpassen, weil es so bei uns nicht funktioniert".

Ich werde einfach mal die Fehler sprechen lassen und nicht Erläuterungen. Schau dir die Fehler an und reflektiere doch einfach mal gegen deinen WSJF.

Die zu priorisierenden Elemente sind nicht bekannt

Alles was du priorisieren möchtest, musst du auch kennen. Jedenfalls zu einer bestimmten Granularität. Immer wieder stelle ich bei der Priorisieurng fest, dass Entscheidungen für eine Priorisierung aber nicht getroffen werden können. Meistens liegt das an vielen Delegationen von Entscheidungen und Wissen.

WSJF ist ungenau

Immer wieder höre ich diese Aussage. Man könne den WSJF nicht verwenden, da das Ergebnis viel zu ungenau ist. Man zweifelt an der mathematischen Genauigkeit oder sogar daran, dass die WSJF Methode nicht vergleichbar und rekonstruierbar ist.

  • Es geht nicht darum genau zu sein. Es darum, eine ausreichende Genauigkeit zu bekommen, damit eine Einschätzung möglich ist.
  • Durch eine ständige Priorisierung der Einträge, sind Fehleinschätzungen nicht lange relevant und auch nicht schlimm.

Auch hier kann ich nur empfehlen: Erstmal so starten wie angedacht, ausprobieren und Erfahrungen machen. Danach über Anpassungen denken und sprechen.

Fibonacci Folge ignorieren

Immer wieder gerne gemacht und Grund für viele unnötige Diskussionen und Ungenauigkeiten. Es ist Unsinn, wenn mir jemand sagt, er kann mit steigender Größe / Komplexität / Dauer / ... genau so gut schätzen, wie Dinge, die klein sind. Das war noch nie so, hat nie funktioniert und wird auch nie funktionieren. 

  • Du kannst mir leicht die Kosten für eine Reise zwischen deinem Wohnort und der nächst größeren Stadt (ein)schätzen.
  • Die Kosten für eine Reise von Frankfurt nach Tokio wird schwieriger. Du wirst (wenn du nicht intensiver Kenner bist) immer schlechter schätzen, als die kleine kurze Strecke.
  • Je genauer du die Kilometer zwischen Frankfurt und Tokio abschätzen möchtest, desto mehr Wissen benötigst du: Welches Verkehrsmittel, mit Übernachtung oder ohne, wie viel Geld kannst du investieren und so weiter.
  • Die Relationen wirst du aber sehr viel schneller feststellen können. Und auch mit der Einordnung um wie viel das größer ist, fällt oft gar nicht so schwer.

Kann man den WSJF anpassen?

Immer und immer wieder finde ich Anpassungen in der Praxis, die leider überhaupt nicht funktionieren. Die spannendere Frage grundsätzlich ist aber, kann man und wenn ja wie, den Weightest Shortest Job First anpassen?

Gehen tun ja bekanntlich alles. Ob es sinnvoll und zielführend ist, steht immer auf einem anderen Blatt. So wie das SAFe gemacht hat (CoD genauer definieren), kannst du grundsätzlich auch deinen CoD definieren.

Ich habe bei den ganzen Diskussionen irgendwann aufgeben und gemerkt, ich versuche Menschen zu überzeugen - was meistens nicht gut ist und mir schlecht gelingt 😉 Was sich aber immer und immer wieder erfolgreich darstellt ist es, ein Experiment zu starten und die Ergebnisse zu überprüfen.

Vorlage für den Weightest Shortest Job First kostenlos herunterladen

Ich habe dir hier einige Vorlagen erstellt, die du immer gerne verwenden kannst, um deine Einträge per WSJF zu priorisieren. Am besten gleich ausprobieren!

Product Backlog Items WSJF Template

Mit dieser einfachen Vorlage hast du die Formel bereits im Sheet enthalten. Du kannst diese hier in der Vorschau sehen oder aber auch dir das Sheet herunterladen bzw. kopieren.

Cheat-Sheet WJSF Komponenten

WSJF Checkliste Download

Wenn du dich im Scaled Agile Framework fragst, wie du die verschiedenen Komponenten sinnvoll belegen und interpretieren sollst, dann schau dir doch mal dieses Cheat-Sheet an. Ich gebe dir hier einige wichtige Impulse, damit die Nutzung in deinem Kontext gleich gut klappt.

Du findest es in meiner Wertikalwerk Academy!

Sebastian Schneider ist dem Framework Scrum - es war Liebe auf den ersten Sprint - bereits seit 2005 verfallen. Seitdem begleitet er Unternehmen (meist größere) bei der Transition in eine neue Arbeits- und Produktwelt.

Dafür findet er den richtigen Grad zwischen zielgerichteten systemischen Impulsen und dem nachhaltigen Coaching in der Organisation, um diese bei der Entwicklung und Optimierung des eigenen Kundenmehrwerts zu unterstützen und entwickelt mit ihnen Produkte, die ihre Kunden lieben.

Im richtigen Maß gehören dazu die effektive und effiziente Facilitation dazu, sowie agile Spiele und Simulationen, die sein Themenfeld auf einfache Art begreiflichen machen.

Auf Konferenzen, sei es im Fachbeirat oder als Akteur, gibt er gerne Erkenntnisse weiter und freut sich über Kontakte von Angesicht zu Angesicht.

>