Kochen und agile Webentwicklung: Scrum Cooking

In der Welt der modernen Webentwicklung ist es ja heutzutage schon fast so schlimm Wasserfallmethoden zur Projektsteuerung zu verwenden, wie einem Teenager einen Papierbrief zu schreiben. Ob es richtig ist, dass die Wasserfallmethode (vor allem unter Entwicklern) einen so schlechten Ruf hat, muss an anderer Stelle diskutiert werden. Zweifelsohne haben aber agile Methoden wie Scrum und Kanban in großen Projekten mit langer Laufzeit entscheidende Vorteile.

Gestern abend haben wir nun versucht die agilen Methoden, mit denen wir seit längerer Zeit täglich Software entwickeln auf einen etwas profaneren Bereich unseres täglichen Lebens anzuwenden: auf das Zubereiten von Mahlzeiten. Wir haben die Tastatur gegen die Schürze getauscht und unseren Seminarraum in eine mobile Küche verwandelt. Dann hieß es Meal-Development statt Webdevelopment. Statt PHP, Scala, ZendFramework und TYPO3 und JavaScript gab es Messer, Töpfe, Kochplatten und Abwaschschwämme – statt Userstories Kochrezepte.

Birne-Helene statt php

Die Herangehensweise war denkbar einfach. Es gab zwei Teams. Diese haben jeweils in einem Sprint Vorspeise, Hauptgang und Nachspeise gekocht.

Softwareentwickler und Projekleiterin kochen Kaiserschmarrn

 

Wir haben immer ein Rezept erhalten, hatte wenige Minuten um Anforderungskarten zu schreiben und die Anforderungen in Teilaufgaben zu zerlegen. Dann hatten wir genau eine halbe Stunde Zeit um das jeweilige Menu zuzbereiten, für das andere Team den Tisch zu decken und die Speise zu servieren. Außerdem musste unser Arbeitsplatz: Der Kochtisch nach jedem Gang/ Sprint wieder picobello sauber sein. Dazu kamen dann immer wieder kleine Extra Anforderungen, wie ein Origami Tier falten oder fehlende Zutaten nachzukaufen. Zwischen den Kochsprints hatte wir immer eine halbe Stunde um das exzelente Essen zu genießen und dabei in einer scrum-typischen Retrospektive unseren Kochprozess zu analysieren.

Gelernt habe ich persönlich einige erstaunliche Dinge:

  • Alle Gänge haben trotz der knappen Zeit ausgezeichnet geschmeckt.
  • Die Selbstorganisation des Teams hat sehr gut funktioniert, aber es war auch auffällig, dass jeder sich in die Rollen fügt, die er oder sie im realen Arbeitsleben auch einnimmt. Die einen organisieren lieber, die anderen machen lieber…
  • Das Amdahlsche Gesetz gilt nicht nur in der Software Entwicklung, sondern auch beim Kochen. Der sequentielle Anteil der Aufgabe beschränkt auch beim Foodprocessing den maximalen SpeedUp. Kartoffeln müssen erst geschält, dann gerieben, dann zu Teig verarbeitet und dann zu Puffern gebraten werden. Dadurch wird eine halbe Stunde manchmal sehr sehr kurz. Im Projektmanagement ist dies zugegebenermaßen schon länger bekannt und nennt sich kritischer Pfad.

statt zu Programmieren werden hier Kartoffelpuffer mit gemüse entwickelt

Wie haben unsere Time-Boxen nicht immer gehalten. Wenn man selbst sein Kunde ist und es genug zu trinken gibt, stellt dies aber ein sehr viel geringeres Problem dar, als wenn man kritische Anwendungen entwickelt an deren Fertigstellung aufwendige Marketingprozesse hängen.

  • Nach dem ersten Sprint hatte einige Bedenken, dass es Stress statt Spaß wird. Am Ende waren sich aber alle einig, dass es vor allem Spaß gemacht hat.
  • Scrum kann aktiv zum Teambuilding beitragen.
  • Ein Scrum Cooking Workshop erfordert eine sehr gute Vorbereitung. Die hatten wir und die Erfahrung aus der Vorbereitung von Planungstreffen mit unseren Kunden hat dabei sicher sehr geholfen.

Fazit: Scrum geht auch im Alltag

Scrum Cooking ist eine sehr gute Workshopmethode um auch den Scrum Prozess auch den programmierfernen Geschäftsbereichen näher zu bringen. Es hilft aber auch spielerisch Prinzipien zu erkunden und tiefer zu verstehen, ohne durch das Tagesgeschäft abgelenkt zu sein. Guten Appetit:

statt Pull Request bei Git wurde ordentlich geschlemmt

 

About Olaf Stichtenoth

Olaf Stichtenoth ist Gründer und CEO der secu-ring GmbH. Er ist Experte für die erfolgreiche Realisierung digitaler Lösungen. Sein Hauptinteresse liegt in der Verbindung von Digitalisierung und Optimierung von Geschäftsprozessen. Dabei verfolgt er grundlegend den Gedanken der Reduktion und der Schnelligkeit. Dazu sagt er selbst: "Beschränkung und Erprobung wird auf Grund der besseren Kostenbilanz der Planung, Erstellung und dem Ausrollen auf lange Sicht den Rang ablaufen."

6 responses on “Kochen und agile Webentwicklung: Scrum Cooking

  1. Alex

    Meiner Meinung nach ist die Frage nach dem fertigen Produkt eine Definitionssache. Wenn das fertige Produkt das Menu ist, sind die Teile Vorspeise, Hauptgang, Nachspeise entsprechende Teilentwicklungen / User Stories die im Sprint umgesetzt werden. Am Ende ist das Scrum-Cooking ein Rollenspiel zum Lernen der Vorgehensweise im Scrum und hervorragend geeignet für Assessment-Center.

  2. Olaf Stichtenoth Post author

    Darüber ob Kochen perfekt in Scrum passt oder nicht, lässt sich natürlich streiten. Es ist ja z.B. auch nicht möglich das Gekochte zu refakturieren. Es wird gegessen, was genau genommen ein zerstörender Test ist. Allerdings ist es ja auch in der Softwareentwicklung nicht so, dass jeden Sprint das gleiche Produkt erstellt wird, sondern immer wieder neue Erweiterungen oder auch Reduktionen dazu kommen. Nichts desto trotz ist ja der Erstellungsprozess immer wieder sehr ähnlich. Bestimmte Bestandteile der Kochsprints waren auch immer wieder gleich, z.B. Tisch decken, Arbeitsplatz wieder aufräumen, abspülen, Herdplatten früh genug anschalten (die Platten waren etwas schwach), …

    Beim Scrum Cooking geht es natürlich auch in erster Linie darum spielerisch mit Scrum umzugehen und Scrum mal auf einer anderen Ebene, frei vom Alltagsstress eines Softwareentwicklers, zu erfahren.

    Die Retrospektiven sind natürlich auch etwas anders abgelaufen als die sehr strukturierten Retrospektiven in unseren Entwicklungsteams. Aber wir haben jeden Kochsprint analysiert, Abläufe optimiert und Fehler reduziert. Gefühlt war auf jeden Fall die Vorspeise am stressigsten und die Nachspeise am entspanntesten.

  3. Olaf Stichtenoth Post author

    Frank S. hat auf Facebook gefragt: “Aber so richtig passt das Kochen eigentlich nicht ins Scrum-Konzept, oder? Der iterative Ablauf passt nicht so ganz – nach jedem Sprint habt ihr etwas komplett fertiges und im nächsten fangt ihr wieder etwas neues an. Klingt mehr wie Projektmanagement mit Scrumelementen. Wie hat das bei euch mit der Retrospektive funktioniert?”

  4. Berit-KitzingBerit-Kitzing

    Auch mir als Organisatorin des Scrum Cookings bei secu-ring hat es sehr geschmeckt und vor allem sehr viel Spaß gemacht. Euch allen ein großes Dankeschön für diesen lustigen und leckeren Abend.

    Getreu dem Motto vor dem Spiel ist nach dem Spiel habe ich mir noch ein paar Gedanken zur Optimierung gemacht, die folgende wären:
    – mehr Werkszeuge zur Verfügung stellen (z.B. Sparschäler, Pfannen…): damit sind auch größere Mengen an Kartoffeln, Möhren usw. in kurzer Zeit schaffbar
    – Anforderungskarten vorschreiben: spart Zeit
    – mehr Musik: verschafft zusätzliche Motivation und erhöht den Spaßfaktor
    – mehr Raum für eine echte Retrospektive im gesamten Team, vielleicht sogar verschriftlichen: ermöglicht ständige, spürbare Verbesserungen
    – Anzahl der zu kochenden und auszuteilenden Portionen halbieren, sodass sich jedeR TeilnehmendeR nach jedem Sprint aussuchen kann, was er bzw. sie essen möchte: damit wird der Stressfaktor etwas verringert, der Magen geschont und die Essensmüdigkeit auf später verschoben
    – mehr Zeit für das Schätzen in Story Points für die einzelnen Anforderungen wie Kochen, Tisch decken, Tisch dekorieren… einräumen: somit werden die einzelnen Schritte des Scrum-Prozesses ernst genommen und helfen das Verständnis von Scrum zu festigen
    – weiteres Spiel (wir spielten Boris Glogers Ball Point Game zu Beginn des Teamevents) zwischendurch: macht Spaß, lockert und regt die Kommunikation im Team zusätzlich an

    Fällt Euch noch mehr ein? Schreibt mir oder kommentiert hier direkt.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.