Direkt zum Hauptbereich

You ain't gonna REPLACE it...


"You ain't gonna need it!" oder auch kurz YAGNI ist mittlerweile vielen ein Begriff (Die konsequente Anwendung ist eine andere Sache). Dieses Prinzip aus dem Extreme Programming, welches besagt, dass einer Anwendung erst eine Anwendung hinzugefügt werden soll, wenn diese wirklich benötigt wird.

Gerade am Anfang der Einführung von iterativer Entwicklung ist ein anderes Prinzip aber auch sehr wichtig:
YAGRI oder auch "You ain't gonna replace it!"

Dies soll daran erinnern, dass der gerade geschriebene Code evtl. noch in 10 oder mehr Jahren so existieren wird. Daher sollte jede Zeile Code  gut durchdacht werden und entsprechend sorgfältig implementiert.

Nur weil am Anfang eines Projektes Dinge anders oder in einfacherer Ausführung umgesetzt werden, um den aktuell meisten Nutzen zu erzielen, als der jeweilige Entwickler oder gar das gesamte Team sich zu dem Zeitpunkt die Endversion vorstellen, heißt das nicht das der gerade geschriebene Code eh ersetzt wird. Aber gerade diese Annahme habe ich schon oft gehört:
"Ich hab das mal eben so gemacht, werden wir im nächsten Sprint ja eh wieder anders machen..."
Das kann passieren, muss aber halt nicht zwingend. Und dann überlebt das mal eben so fürs wegwerfen gemachte in alle Ewigkeit und  jeder  stolpert immer wieder drüber oder schlimmer baut seine Workarounds drum herum.

Also denkt auch an YAGRI!

Kommentare

Beliebte Posts aus diesem Blog

Eine Retro im Kreis

Für die letzte Retro habe ich die Tische und Stühle alle beseite gestellt um dann mit Klebeband (Malercrep) drei unterschiedlich große Kreise um einen Mittelpunkt zu kleben. Der innerste Ring war groß genug, dass das gesamte Team da drin Platz finden konnte.

Für die erste Phase der Retro habe ich Kärtchen mit den Zahlen 50, 40, 30, 20 in den Ringen verteilt. Die 50 in der Mitte und dann absteigend nach außen. Um so eine Zielscheibe anzudeuten.

Der Wasserfall ist immer noch vorherrschend in der Softwareentwicklung

In den letzten Jahren sind viele "neue" Bewegungen auf der Bildfläche des Mainstream-Bewusstseins der Softwareentwicklung erschienen. Und viele aktuelle Studien berichten, dass die Agilität den Wasserfall abgelöst hat. In allen Softwareunternehmen und viele der Entwickler die ich treffe reden zumindest viel über Agilität.

Wenn aber mal einen Schritt zurück macht sieht das (ideal) Bild eher so aus:

Die neue Lösung wird mit Design Thinking gefunden und definiert. In der Entwicklung ist dann eher die Rede von agile (meist Scrum) und selten SoftwareCraftsmanship. Von der Betriebsseite heißt es nun DevOps. Aber dazwischen gibt es immer noch Brüche und es existiert keine Ganzheitlichkeit.

Jahrzehnte lang haben wir in der Softwareentwicklung geglaubt und es so auch allen Kunden beigebracht, dass die "Cost of Change Curve" gilt und daher der Wasserfall als Vorgehen perfekt ist.
(Was nun was bedingt, lass ich mal dahingestellt)

Dadurch haben sich natürlich auch die Struktur…

Speed Temenos auf dem AgileDay der JAX

Letzte Woche hatte ich die Gelegenheit auf dem AgileDay der JAX zu sein. Neben Vorträgen am Vormittag mit Beiträgen zu Retrospektiven agile in Konzernen sowie einer spezifischen Implementierung in einem Unternehmen stand nach der Mittagspause ein Speed Temenos mit Olaf Lewitz und Christine Neidhardt auf dem Programm. Zur Unterstützung hatten sie sich Unterstützung über die Softwerkskammer organisiert, so dass die Anwesenden von insgesamt 20 Facilitatoren betreut wurden.

Bei Temenos handelt es sich um einen "geschützten Raum" in dem Menschen Offenheit und Vertrauen erleben können. Das Speed Temenos mit seinen 3 Phasen, in welchen es um die Persönliche (Berufliche) Vergangenheit, den Ist-Zustand und die Vision für die Zukunft geht hilft über Geschichten erzählen, sich selbst zu reflektieren und Gemeinsamkeiten in der Gruppe zu entdecken. Details sind auf http://trusttemenos.de/ viel besser erklärt als ich es hier kann.

Ich hatte Temenos mit Olaf bereits auf der Play4Agile 201…