Montag, 23. Juni 2025
Why We Confuse Building to Learn with Building to Earn
Ich bin ein Fan der Vorträge von Jeff Patton, zum einen wegen der inhaltlichen Tiefe, zum anderen wegen seines besonderen Stils, Life Visualisierungen für seine Ausführungen zu erstellen. In diesem Fall zum Thema des Minimum Viable Product (MVP).
Spannend an diesem Vortrag ist unter anderem, dass er durch die Erläuterung des MVP scheinbare Gewissheiten der agilen Produktentwicklung in Frage stellt, zum Beispiel die Definition of Done - aber nicht etwa, weil er in dieser Idee keinen Sinn sieht, sondern weil er aufzeigen kann, dass sie nur Teile dessen abdeckt, was man unter agil verstehen kann.
Donnerstag, 10. Oktober 2024
Rapid Prototyping on Steroids
Auf den ersten Blick ist das hier einer dieser Holy Shit-Momente. In gerade einmal fünf Minuten erstellt Henrik Kniberg hier mit Hilfe eines KI-Chatbots einen funktionsfähigen Prototypen einer mobile App in mehreren Versionen, samt Dokumentation und einem initialen Backlog mit den nötigen Anforderungen um daraus eine voll funktionsfähige erste Version zu erstellen. Früher wäre damit ein ganzes Team einen ganzen (Design-)Sprint lang beschäftigt gewesen, jetzt geht es in wenigen Momenten.
Wenn man weiss wie derartige Chatbots funktionieren relativiert sich die Leistung ein bisschen. Das Demonstrationsobjekt ist eine To Do-Listen-App, von denen es bereits unzählige gibt, deren Code hier Teil des Traningsmaterials der KI gewesen ist. Würde man sie dort einsetzen wo Prototypen normalerweise gebraucht werden, in der innovativen Neuentwicklung nämlich, wäre kaum Trainingsmaterial vorhanden und das Resultat wäre entsprechend wenig beeindruckend.
Trotzdem bleibt das Ergebnis dieser Vorführung natürlich beachtlich. Um das Potential dieser Technologie voll nutzen zu können, wird es darauf ankommen, zu wissen, wo sie einsetzbar ist und wo nicht. So werden sich beispielsweise die wenig innovativen Teile einer neuen Anwendung (Login, Profilseite, etc.) schnell generieren lassen, so dass mehr Zeit für die wirklich innovationsbringenden Tätigkeiten bleibt. Alleine das kann schon sehr viel bewirken.
Am Ende sollte trotzdem in jedem Fall klar sein, dass der auf diese Art entstandene Code mindestens durch ein gründliches Refactoring gehen, wenn nicht sogar neugeschrieben werden sollte, bevor er veröffentlicht wird. Wenn nicht, dürften einige unschöne Überraschungen bevorstehen. Selbst das kann im Vergleich zu einer vollständigen Selbstentwicklung aber immer noch deutlich effektiver und effizienter sein. Die Zukunft hat bereits begonnen.
Donnerstag, 11. Juli 2024
Agile Success Stories: Das Compliance-MVP
Man soll ja Erfolge nicht nur feiern, sondern auch in Erinnerung behalten, denn wer sich ständig mit dem Beseitigen von Impediments und dem Kampf gegen Change Fatigue und Konzern-Trolle beschäftigen muss, kann sonst leicht in Frustration abrutschen. Um es nicht dazu kommen zu lassen, möchte ich von einer weiteren "agilen Erfolgsgeschichte" erzählen, die sich einmal im IT-Systemhaus einer grossen Bankengruppe zugetragen hat, bei der Entwicklung eines neuen Onlinebanking-Systems.
Agiles Arbeiten steckte dort noch in den Anfängen, und wie in vielen anderen Unternehmen auch wurde noch davon ausgegangen, dass es sich dabei nur um eine neue Arbeitsweise für die Software-Entwicklung handeln würde. Andere Organisationseinheiten reagierten nur mit einer Mischung aus Amüsiertheit und Entrüstung, als angeregt wurde, dass auch sie ihren Arbeitsmodus ändern sollten. Ihre Ideen waren klar: sie wollten im Voraus definieren, was sie wollten, und dann warten bis es fertig war.
Was zu ihrer Überraschung anders war, war aber, dass ihnen schon früh mitgeteilt werden konnte, wie (un)realistisch ihre Vorstellungen waren. Durch feature- statt komponentenorientierte Entwicklung, frühe Integration und automatisiertes Testen war der reale Arbeitsfortschritt klar erkennbar, und durch eine grobe Schätzung der noch offenen Anforderungen auch die noch nötige Zeit, beziehungsweise die vermutlichen Liefertermine der fehlenden Features. Und nätürlich - die waren später als gewünscht.
Die ersten Reaktionen darauf waren abwiegeln und abstreiten. Es wäre doch noch viel zu früh für solche Aussagen, die Roadmap wäre schliesslich von Experten gemacht worden, die Entwicklungs-Teams müssten nur bereit sein, "etwas Gas zu geben", dann würde der Zeitplan wieder passen. Und so weiter. Allein - alle drei Wochen bestanden die Entwickler in den Sprint Reviews auf ihren schlechten Botschaften. Im ersten Quartal, im zweiten, im dritten, und am Anfang des vierten.
Wenige Monate blieben damit noch bis zum geplanten Go Live in der ersten Tochtergesellschaft, und plötzlich wollten auch die anderen Organisationseinheiten agil werden. Besonders ein Begriff hatte es ihnen auf einmal angetan: das Minimum Viable Product (MVP), in ihrem Verständnis ein nur auf das absolut Notwendige reduzierter Funktionsumfang, mit dem der anvisierte Termin noch irgendwie zu halten sein müsste. Den wollten sie haben, und den glaubten die Entwickler auch liefern zu können.
In der Folgezeit wurden die Anforderungen Seite um Seite zusammengestrichen. Opulente Redaktions-Workflows? Erstmal nicht. Der komplette Nachbau aller Features des alten Systems im Neuen? Völlig übertrieben. Die Umstellung aller internen CMS-Seiten auf die Fonts, Formen und Farben des Corporate Design? Unnötig. Etc. Am Ende blieb nur ein letztes der unrealistisch grossen Arbeitspakete übrig, das angeblich nicht verhandelbar war. Das so genannte Reporting Center.
Dieses letzte laut Compliance-Abteilung zwingend nötige Feature sollte sicherstellen, dass sich nachvollziehen liess, welcher interne Mitarbeiter wann welche Änderungen in dem Onlinebanking-System vorgenommen hatte. Zu diesem Zweck sollte es möglich sein, sich alle Änderungen anzeigen zu lassen, sie nach Zeitraum, Bearbeiterrolle oder betroffenem Teilsystem zu filtern und grafisch aufbereitet anzeigen zu lassen. "Wenn es das nicht gibt, macht uns die Bafin den Laden zu", hiess es.
Als zwei Wochen vor Weihnachten absehbar wurde, dass auch diese Drohung nicht zu einer wundersamen schnellen Fertigstellung führen würde, fiel auf einmal auch hier das neue magische Wort. "Gibt es nicht auch davon ein MVP, und wenn ja, welches?" Und es gab eines - eine aus dem System exportierte Tabelle aller Bearbeitungsvorgänge, mit dem Angebot der Entwickler, ggf. beim Verständnis zu helfen. Und ein inoffizielles Vorfühlen bei der Bafin ergab: für die erste Version würde das reichen.
Und damit war es geschafft. Das Go Live in der ersten Tochtergesellschaft konnte wie geplant stattfinden, und nicht nur das. Die dort mit dem MVP-System arbeitenden Mitarbeiter konnten gefragt werden, wie sie mit dem System zurechtkamen, ihnen konnte gesagt werden, welche Features sonst noch geplant waren, und was sie vermutlich kosten würden. Und völlig überraschend kam das Feedback, dass viele davon gar nicht benötigt würden und stattdessen etwas Anderes sinnvoll wäre.
Dem Vernehmen nach ist das etwas überdimensionierte Reporting Center irgendwann doch gekommen, aber trotzdem enthält diese Geschichte einigen von dem, was agiles Arbeiten so wirkungsvoll macht: frühe Auslieferung, hohe Transparenz, ständiges Feedback, ein MVP, aus dem man mehr über die echten Bedürfnisse echter Anwender lernen kann und eine Anpassung der Pläne an die Realität (statt des Versuchs das Gegenteil zu erzwingen). Und all das in einer stark regulierten Branche.
Freitag, 11. Februar 2022
A long time ago, in an agility far far away ...
Es gibt einige ältere Dinge die so cool sind, dass sofort zwei Reaktionen hochkommen wenn man sie sieht: 1) "Wow, das gibt es schon so lange?" Und 2) "Oh Mann, warum wurde davon nicht viel mehr gemacht?"
Die Seite Something Agile Lean Something gehört auf jeden Fall in diese Kategorie, denn auf Ihr wurden schon 2015 eine Reihe von Begriffen aus dem agilen Kosmos mit gezeichneten Star Wars-Lego-Figuren erklärt. Leider sind insgesamt nur acht Panels zusammengekommen, die sind aber alle wirklich sehenswert. Hier ist mein Favorit, die Erklärung verschiedener Typen von MVPs:
| Zum Vergrössern auf die Grafik klicken |
Dieses und die anderen Panels können auf der Seite somethingagileleansomething.com in hoher Auflösung heruntergeladen werden, alle unter der Creative Commons-Lizenz CC BY-NC-ND 2.0.
Fehlt noch etwas um den Popkultur- und Methoden-Nerd vollkommen zu begeistern? Natürlich, ein Easter Egg. Bitte noch einmal alle Augen auf die oben zu sehenden "MVP-Flavors". In ihnen gibt es eine Referenz auf eines der bekanntesten MVPs der Technik-Geschichte. Noch nicht gefunden? Die Auflösung gibt es hier.
Dienstag, 15. Dezember 2020
Minimum Viable Products (MVPs)
![]() |
| Grafik: Wikimedia Commons / Teemu Leinonen - CC BY-SA 4.0 |
Es ist einer der grossen Klassiker: verschiedene Menschen unterhalten sich über einen Begriff, jeder geht davon aus, dass alle das Selbe darunter verstehen aber in Wirklichkeit hat jeder sein eigenes Verständnis, so dass alle aneinander vorbeireden. Das habe ich schon an verschiedenen Beispielen aufgezeigt, und heute kommt ein weiteres dazu: das Minimum Viable Product (MVP). Auch hinter dem können sich sehr unterschiedliche Ansätze verbergen, und zwar die Folgenden:
I. Der Proof of Concept (PoC)
Rein formal kein MVP im eigentlichen Sinn, da hier noch kein benutzbares (→ viable) Ergebnis entsteht. Der in den 60er Jahren bei der NASA geprägte Begriff lässt sich als "Machbarkeitstest" ins Deutsche übersetzen. Ein erfolgreicher PoC beweist "nur", dass ein Vorhaben technisch machbar ist, validiert aber nicht ob es für das geplante Produkt auch einen Bedarf gibt. Ein Proof of Concept kann rudimentärster Art sein, z.B. indem er beweist, dass ein Material einer bestimmten Belastung standhält oder dass eine Datenauswertung gegen kein Persönlichkeitsrecht verstösst.
II. Der Riskiest Assumption Test (RAT)
Der erste Ansatz der auf Eric Ries zurückgeht, der Ende der 2000er Jahren mit seinem Lean Startup-Framework den Begriff des MVP bekannt gemacht hat. Er geht davon aus, dass vor dem ersten eigentlichen MVP grundlegende Annahmen geklärt werden können, z.B. die ob sich überhaupt jemand für die (Produkt)Idee interessiert. Das kann z.B. durch Fokusgruppen-Marktforschung geschehen oder durch Experten-Interviews. Ries bezeichnete diese Grundannahmen als "Leap-of-Faith-Assumptions", durch Rik Higham wurden sie später als "Riskiest Assumptions" popularisiert, die durch Riskiest Assumption Tests validiert werden können.
III. Das Low Fidelity MVP (Low-Fi MVP)
Das erste MVP im eigentlichen Sinn. Eric Ries versteht darunter eine extrem rudimentäre Version eines Produkts, deren einziger Zweck das Validieren von Kunden- oder Nutzer-Interesse ist. Legendär ist das Low-Fi MVP des online-Schuhhändler Zappos, das nur aus einer Website mit Schuh-Fotos und einer Bestelladresse bestand. Auf der Website Robot Mascot gibt es eine schöne Übersicht über weitere Varianten, die dort auch erklärt werden: Customer Interview, Social Media-Auftritt, Aktivität in Online-Foren, Landing Page, Split-Testing, Erklärvideo, Papier-Prototyp, Ad Campaign, "Fake Door", Audience Building und Micro-Survey.
IV. Das High Fidelity MVP (High-Fi MVP)
Ebenfalls eingeführt durch Eric Ries sind die High Fi-MVPs zwar noch immer rudimentär, in der Erstellung aber bereits deutlich anspruchsvoller. Z.B. für Prototypen in der Hardware-Fertigung gedacht wird das Produkt hier digital simuliert oder mit relativ hohem Fertigungsaufwand in geringer Stückzahl erstellt, etwa für öffentliche Vorführungen auf Messen. Aufwändige MVPs für komplexe rein digitale Produkte existieren aber ebenfalls. Auch hier gibt Robot Mascot eine Übersicht und Erklärung für verschiedene Varianten: Digitale Prototypen, 3D-Modelle, “Wizard of Oz” MVPs, “Concierge”-MVPs, The “Piecemeal”-MVPs, Crowdfunding und Single Featured MVPs.
V. Das Minimum Marketable Product (MMP), bzw. Earliest Loveable Product (ELP)
Eine wesentlich fortgeschrittenere (und ironischerweise auch wesentlich ältere) Variante des MVP. Eingeführt 2001 durch Frank Robinson, den Erfinder des Begriffs Minimum Viable Product, beschreibt sie einen Produktumfang der zwar noch klein ist, trotzdem aber bereits gut genug entwickelt ist um an den Markt gebracht werden zu können. Beispiele dafür wären die ersten, noch sehr minimalistischen Versionen von Facebook (ein Studenten-Verzeichnis) und Twitter (eine Chatgruppe). Robinson benutzte seinerzeit noch den MVP-Begriff in diesem Sinn, nachdem der durch Eric Ries umgedeutet wurde gab es Versuche von Neubenennungen 2011 durch Roman Pichler (MMP) und 2015 durch Henrik Kniberg (ELP).
VI. Der Meilenstein-MVP
Gehört am wenigsten in diese Aufzählung, tritt in der Realität aber immer wieder als Missverständnis auf. Wie der Name schon sagt - es ist nicht anderes als der alte Meilenstein, also eine mehr oder weniger sinnvoll geschnittene Kombination aus Arbeitspaket und Deadline, die jetzt nur einen neuen Namen trägt. Ein starker Indikator für Cargo Cult.
Donnerstag, 25. Juni 2020
Paper Prototyping
![]() |
| Bild: Flickr / Rosenfeld Media - CC BY 2.0 |
Montag, 28. Januar 2019
Minimum viable Team
![]() |
| Bild: Pexels / Benji Mellish - Lizenz |
Ein banales Beispiel macht das deutlich: in stark regulierten Branchen wie im Banken- oder Börsenbereich sind zahlreiche Gesetze und Vorschriften einzuhalten. Werden sie missachtet können Aufsichtsbehörden wie die Bafin oder die EZB Strafen verhängen oder sogar Produkte vom Markt nehmen. Es empfiehlt sich also, neue Produktinkremente von Juristen, Verbraucher- und Datenschützern freigeben zu lassen. Diese ins Team zu nehmen würde die Grössenbegrenzung sprengen, sie draussen zu lassen die Crossfunktionalität beeinträchtigen.
Wenn man dem Reflex wiedersteht die Teams einfach grösser zu machen bleibt nur eine Alternative: selten benötigte Aufgaben aus den Randbereichen des eigenen Tätigkeitsbereiches werden an Unterstützer- oder Spezialistenteams ausgelagert. Zurück bleibt eine Gruppe, die für die häufig durchgeführten Kerntätigkeiten verantwortlich ist, gewissermassen ein "Minimum viable Team". Die meisten agilen Teams gehören diesem Typ an, es stellt sich aber die Frage - welche Fähigkeiten sind in einer solchen Einheit unverzichtbar?
Ausgehend davon, dass die meisten agilen Teams Software produzieren ist die naheliegende Antwort die, dass es Software-Entwickler sein müssen. Mit den Worten von Extreme Programming-Begründer Ron Jeffries: "If you want a program, you can't get one without a programmer. All the designers and PMs and all those very important skills are stymied until someone can write the program." Mit anderen Worten: nahezu alles lässt sich in der IT von aussen zuliefern, nur die IT selbst nicht. Scheint offensichtlich - oder?
Wie so häufig gilt auch hier die Antwort: kommt drauf an. In den meisten Fällen liegt Jeffries zwar richtig, in einer frühen Phase der Produktentwicklung kann es aber sein, dass auch in einem Software-Kontext noch kein Entwickler nötig ist. Der initiale Tauglichkeits- oder Marktfähigkeitsbeweis ist oft noch ohne sie zu bewältigen. Ein scheinbarer Widerspruch, aber eben nur ein scheinbarer. Wie er aufzulösen ist kann man im lesenswerten Artikel "How to Build an MVP App Without Writing Code" erfahren.
Natürlich sind die hier genannten Beispiele der Bank-IT und der MVP-Apps Extremfälle, mit denen die meisten Teams nie zu tun haben werden. Der Punkt sind aber auch nicht diese beiden speziellen Konstellationen an sich. Wirklich wichtig ist die Frage die sie verdeutlichen: wenn ein Team nicht alles selbst erzeugen kann, was ist dann in keinem Fall verzichtbar? Sich diese Frage zu stellen (und das mit wirklicher Unvoreingenommenheit und Ergebnisoffenheit) ist das was zu einem wirklichen Minimum viable Team führen kann.
Donnerstag, 10. Mai 2018
Minimum Work in Progress
![]() |
| Bild: Flickr / Vic - CC BY 2.0 |
Die überall bekannte Dimension, die oft auch mit dem generellen Begriff des Limited WIP gleichgesetzt wird ist die des Maximum Work in Progress. Diese Obergrenze und ihren Sinn näher zu betrachten wäre ein Thema für sich, verkürzt gesagt verhindert sie Multitasking und trägt dazu bei, dass Arbeit nicht unkontrolliert einfliessen und sich irgendwo im System stauen kann. Auch für sich alleine erbringt sie einen Mehrwert, kann aber nur einem Teil der möglichen Fehlentwicklungen auffangen.
Was durch eine WIP-Obergrenze nur eingeschränkt reguliert werden kann ist die Gefahr, dass irgendwo im System Leerlauf entsteht. Die tritt unter anderem dann auf, wenn zeitweise alle verfügbaren Kräfte auf eine einzige Stelle des Wertstroms konzentriert werden, etwa auf das Releasen. Wenn infolgedessen die Arbeit in einem früheren Abschnitt (etwa der Software-Entwicklung) vorübergehend eingestellt wird, kann es sein, dass ein mittlerer Teil (z.B. die Qualitätssicherung) plötzlich nichts mehr hat was er verarbeiten kann. Bis von weiter vorne neue Zwischenergebnisse kommen herrscht dann an dieser Stelle Stillstand.
Ein Mittel um einen solchen kostspieligen Leerlauf zu verhindern (auch im Stillstand müssen Gehälter bezahlt werden), ist die Einrichtung weiterer WIP Limits, nur in diesem Fall an der Untergrenze. Ein solches Minimum Work in Progress sorgt dafür, dass bei ihrem Erreichen sofort neue Arbeit nachgezogen werden muss, selbst wenn das auf den ersten Blick nicht dringend erscheint. Die nachfolgende Station ist dadurch ebenfalls immer in der Lage Arbeit nachzuziehen sobald sie freie Kapazitäten hat.
An dieser Stelle muss auch klar sein, dass ein Minimum WIP nicht nur Probleme lösen sondern sie im schlimmsten Fall sogar erzeugen kann. Wenn es dazu führt, dass einer oder mehrere Abschnitte eines Produktionsprozesses zu 100 Prozent ausgelastet sind, sind mitunter verstopfte Warteschlangen die Folge. Optimalerweise sorgt es daher nicht nur dafür, dass jederzeit Arbeit nachgezogen werden kann, sondern es lässt auch Spielraum für neue, ungeplante Arbeit. Minimum WIP und Maximum WIP sollten nicht gleich groß sein, sondern immer einen Korridor dazwischen freilassen.
Mittwoch, 25. November 2015
Viable, testable, unsable & loveable Products
![]() |
| Bild: Wikimedia Commons/Visitor7 - CC BY-SA 2.0 |
Zu den interessanteren Beiträgen der letzten Tage gehörte für mich ein Bericht über den Auftritt von Henrik Kniberg, über den ich ja schonmal geschrieben hatte, auf der Agile Tour Bangkok. Im Wesentlichen ging es dabei um skaliertes Agile, und er scheint da viele richtige und wichtige Sachen gesagt zu haben. Was mir aber besonders aufgefallen ist, ist ein Seitenaspekt den ich ähnlich sehe: die Kritik am Konzept des Mimimum viable Product (MVP, kleinstes lebensfähiges Produkt).
Die Grundidee des MVP ist zunächst einmal völlig richtig: statt alles auf einmal zu wollen und daran zu scheitern oder statt das Produkt "schichtweise" aufzubauen (DB → Backend → Frontend), wodurch es erst ganz zum Schluss benutzbar wird, geht man einen anderen Weg - man erstellt eine kleine, aber nutzbare Komponente (z.B. eine Webseite mit einer Service-Telefonnummer), dann eine zweite (z.B. ein Kontaktformular), dann eine dritte, eine vierte, etc. Jede Erweiterung ist idealerweise die kleinstmögliche durch die eine neue Funktion entsteht. Die Folge sind kleinere Merges, kleinere Test Runs, kleinere Seiteneffekte, weniger Bugs und größere Stabilität. Das Problem daran: dem Kunden/Auftraggeber sind die vielen kleinen Schritte nicht immer einfach zu verkaufen, und oft muss man sich in Reviews anhören, dass es kaum, gar nicht oder nur schleichend vorangehen würde, im schlimmsten Fall, dass man unfertige oder unbrauchbare Produkte präsentieren würde.
Kniberg versucht dem zu begegnen indem er das Minimum viable Produkt differenziert betrachtet und in verschiedene Untertypen aufteilt:
- Der erste Typ ist das Earliest testable Product
Beispielsweise könnte das die allererste Form eines CMS sein, die zunächst nur mit unformatiertem Text befüllbare Seiten anlegt. Testbar, aber noch weit davon entfernt den Ansprüchen der Benutzer gerecht zu werden. - Der zweite Typ ist das Earliest usable Product
Um beim Beispiel zu bleiben: Der Text der erstellten Seiten ist formatierbar, es lassen sich Bilder und Videos einbetten, die Redakteure können damit bereits arbeiten, selbst wenn noch einiges fehlt. - Typ drei ist das Earliest loveable Product
Freigabe-Workflows, Verschlagwortung, Social Media-Einbindung und Autorenprofile - jetzt ist eigentlich alles da um an den Markt zu gehen. Es geht zwar noch mehr, aber vermarkten lässt sich das Ganze bereits.
Der Vorteil an diesem Vorgehen: man kann mit den verschiedenen Untertypen die verschiedenen Teil-Zielgruppen da abholen wo es Sinn macht - etwa die IT-Abteilung des Kunden mit dem Earliest testable Product, die Redakteure mit dem Earliest usable Product und das Marketing mit dem Earliest loveable Product. Jeder bekommt in etwa das was er will, keiner bekommt etwas vorgesetzt was ihn völlig über- oder unterfordert, Konfliktpotential entsteht gar nicht erst. Und in der Praxis ist so etwas bereits jetzt in gewisser Weise üblich, was sich zum Beispiel darin ausdrückt, dass die Geschäftsführung nur zu den Reviews im Vorfeld größerer Releases kommt. Während sich das aber eher selbst reguliert bieten Knibergs Untertypen die Gelegenheit Erwartungsmanagement zu betreiben und die verschiedenen Stakeholder dorthin zu bekommen wo es Sinn macht und wo sie auch selber sein möchten.
Nachtrag 26.01.2016:
Kniberg hat seine Gedanken nochmal ausführlich selbst aufgeschrieben.





