Die Fibonacci-Folge und der Kegel der Unsicherheit
Share
Die Fibonacci-Folge und der Kegel der Unsicherheit sind zwei Konzepte die in der agilen Entwicklung immer wieder vorkommen. Sie zielen auf das Herzstück agiler Schätztechniken ab. In diesem Artikel erfahren Sie, warum dies der Fall ist, woher beide Konzepte stammen, und warum die Fibonacci-Folge die Unsicherheit auf ideale Weise darstellt.
Inhaltsverzeichnis
Der Kegel der Unsicherheit
1958 veröffentlichte die American Association of Cost Engineers ein standadisiertes Schätzklassifizierungssystem für den Bau und das Engineering der chemischen Industrie. Hierbei wurden Unsicherheitsbereiche für Kostenschätzungen eingeführt. 1981 übernahm Barry Boehm diesen Ansatz für das Software-Engineering in seinem Buch „Software Engineering Economics“. 16 Jahre später, 1997, prägte Steve McConnell in seinem Buch „Software Project Survival Guide“ schließlich den Ausdruck „Cone of Uncertainty“.
Der Kegel der Unsicherheit drückt eine einfache Tatsache aus. Je weiter ein Ereignis in der Zukunft liegt, desto weniger wissen wir darüber. Daher sind unsere Schätzungen zu diesem Ereignis ungenau, verschwommen oder sogar falsch. Je näher wir einem Event kommen, desto mehr lernen wir darüber. Dies ermöglicht es uns, bessere Vorhersagen und Annahmen über dieses Ereignis zu treffen. Wenn wir einem Ereignis sehr nahe sind, besteht fast kein Zweifel darüber, was passieren wird. Sei es beispielsweise in einer Stunde, in einer Minute oder in der nächsten Sekunde. Letztendlich ist nach eintreten eines Ereignisses jede Unsicherheit verschwunden. Wir wissen nun alles darüber. Nun, wir wissen vielleicht nicht alles persönlich, aber das Ereignis ist Geschichte und kann nicht mehr geändert werden.
The Kegel der Unsicherheit in Hurrikan-Vorhersagen
Dieser Ansatz wird auch verwendet, um die möglichen Auswirkungen von Hurrikanen zu beschreiben. Während diese über den Atlantik ziehen ist noch nicht klar wo sie letztendlich auf Land treffen werden.
Das Bild zeigt den Kegel der Unsicherheit für den Hurrikan Dorian aus der Hurrikansaison 2019. Wie zu sehen ist, erweitert sich der mögliche Korridor des Hurrikans, je weiter er vom aktuellen Standort des Hurrikans entfernt ist. Dies ist auf die Unsicherheit hinsichtlich der Wettereinflüsse auf den zukünftigen Weges des Hurrikanes zurückzuführen. (In Wirklichkeit überquerte der Hurrikan Florida nicht, sondern bog nach Norden ab. Er passierte die gesamte Ostküste der Vereinigten Staaten und hielt nicht an bis er Kanada erreicht hatte).
Kostenschätzungen im Software Engineering
Diese Unsicherheit kann auch beim Software-Engineering beobachtet werden. Wenn Entwickler aufgefordert werden die Lieferkosten für bestimmte Anforderungen zu schätzen funktioniert dies oftmals nur bedingt gut. Je weiter die Ingenieure von der tatsächlichen Implementierung dieser Anforderungen entfernt sind, desto unsicherer und ungenauer werden ihre Schätzungen sein. Sie kennen die Details und Probleme in Bezug auf die spezifische Implementierung noch nicht. Die oben genannten Autoren fanden alle die mehr oder weniger gleichen Unsicherheitsfaktoren hinsichtlich der Kostenschätzungen.
Je weiter ein Entwickler vom tatsächlichen Zeitpunkt der Implementierung entfernt ist, desto größer sind die Unsicherheit und die Risiken. Dies erfordert die Suche nach einem Schätzmodell, das dies entsprechend berücksichtigt. Daher ist ein Ansatz, der den Kegel der Unsicherheit abbildet, äußerst wünschenswert.
Ein linearer Schätzungsansatz
Versuchen wir zunächst einen linearen Schätzungsansatz. Dies sollten wir alle aus Umfragen kennen. „Auf einer Skala von 1 bis 10, wie glücklich bist du mit / wie gut bist du / wie sehr magst du … und so weiter“.
Das Bild zeigt die Darstellung einer linearen Skala gegen den Kegel der Unsicherheit. Die lineare Skala bildet sicherlich so etwas wie einen Kegel. Dieser passt jedoch nicht gut genug zum Kegel der Unsicherheit, um als ein lohnender Schätzungsansatz angesehen zu werden.
Die T-Shirt Größen Methode
Ein weiterer gängiger Ansatz ist die Schätzung der T-Shirt-Größen (S / M / L / XL). Mal sehen, wie diese T-Shirt-Größen zum Kegel der Unsicherheit passen.
Wie sich zeigt bilden sie keinen Kegel. So wie einige T-Shirts nicht zu ihrem Träger passen, passen die T-Shirt-Größen nicht zum Kegel der Unsicherheit. Tatsächlich erzeugen sie nicht einmal einen echten Kegel. T-Shirts sind, wie zu sehen ist, alle (mehr oder weniger) gleich groß.
Die Fibonacci-Folge
Jeder, der einmal an einem Planning Poker teilgenommen hat, kennt die bei diesen Events verwendeten Spielkarten. Diese Karten zeigen die Nummern der Fibonacci-Folge. Diese Folge wurde von Leonardo da Pisa, genannt Fibonacci, postuliert. Sie ergibt sich wenn jede Zahl die Summe ihrer beiden Vorgänger ist (beginnend mit 0 und 1).
Diese Schätztechnik funktioniert sehr gut für Scrum-Teams und ist die am weitesten verbreitete Schätzmethode. Die entscheidende Frage ist aber, warum dies eine gute Methode ist.
Die Fibonacci-Folge und der Kegel der Unsicherheit
Werfen wir nun einen Blick darauf, wie sich die Fibonacci-Folge gegen den Kegel der Unsicherheit auftragen lässt. Ist sie in der Lage, das Risiko und ungenaue Annahmen für weit entfernte, zukünftige Ereignisse abzudecken?
Wie zu sehen ist, deckt die Fibonacci-Folge den Kegel der Unsicherheit tatsächlich sehr gut ab. Die angepassten Zahlen, die beim Planning Poker verwendet werden weichen etwas vom Kegel ab. Sie sind dennoch sehr gut geignet um das Risiko und die Unschärfe abzubilden.
Es gibt einen weiteren interessanten Aspekt, der aus diesen Darstellungen hervorgeht. Eine User Story oder Anforderung, die mit 13, 20 oder sogar 40 Punkten geschätzt wird, ist noch nicht zur Implementierung bereit. Dies ist der Zeitpunkt, in der Entscheidungen über Produktdesign und Architektur getroffen werden. Auf dem Weg zur Realisierung und Umsetzung müssen diese Anforderungen jedoch noch weiter verfeinert werden. Nur dann wird genug über sie bekannt sein, um sie mit geringem Risiko implementieren zu können.
Abschließende Gedanken
Die Fibonacci-Folge ist Agilisten als Hauptwerkzeug für die agile Schätzung beim Planning Poker bekannt. Es funktioniert so gut, weil ihre Zahlen den Kegel der Unsicherheit hervorragend abbilden. Dies ermöglicht es, das Risiko und das fehlende Wissen in frühen Entwicklungsstadien zu erfassen. Je näher wir der Implementierung kommen und die Anforderungen weiter verfeinert werden, desto klarer werden die Dinge. Schließlich wird mehr gelernt, Risiko und Unsicherheit werden verringert und zuverlässigere Annahmen können getroffen werden.