Posts mit dem Label ExtremeProgramming werden angezeigt. Alle Posts anzeigen
Posts mit dem Label ExtremeProgramming werden angezeigt. Alle Posts anzeigen

Freitag, 21. August 2009

Dieser Blog ist tot. Ich blogge weiter auf dem «Agile Trail».

Pecha Kucha "Inkrementelles Design" (Folien und Video)

Auf der JAX '09 im Frühling diesen Jahres habe ich für it-agile in einer Pecha Kucha-Session auf dem Agile Day einen Vortrag "Inkrementelles Design" gehalten. Host war Stefan Roock (Homepage, Twitter, Xing). Das sind die Folien:

View more documents from Bernd Schiffer.

Das alles ist schon ein wenig länger her, aber jetzt hat die Konferenz-Organisation das Video auf JAX TV veröffentlicht. Danke JAX-Team! Hier das Video:


Ich rede zwar viel zu schnell, trotzdem: Viel Spaß damit :-)

Apropos Pecha Kucha I: Auf den XP Days Germany 2009 im November diesen Jahres gibt es gleich 9 Pecha Kucha-Vorträge in drei Blöcken (siehe Programm). Das sind für mich die Perlen dieser Konferenz, also nicht verpassen!

Apropos Pecha Kucha II: Auf der WJAX '09, auch im November diesen Jahres, gibt es wieder eine Pecha Kucha-Session, die ich zusammen mit Martin Heider (Xing, Twitter) auf dem Agile Day halten werde. Thema: "Mein agiler Koffer - Reisetipps mit Pecha Kucha".

Links:

Mittwoch, 10. Juni 2009

Dieser Blog ist tot. Ich blogge weiter auf dem «Agile Trail».

Call for Sessions für XP Days Germany 2009


Die XP Days Germany 2009 (Webseite) finden vom Donnerstag, 26. November 2009, bis Samstag, 28. November 2009, statt, dieses Jahr wieder in Karlsruhe. Am Donnerstag ist wieder Tutorial-Tag, Freitag die eigentliche Konferenz, und am Samstag treffen sich die Agilen aus dem deutschsprachigen Raum auf dem Community Day.

Auf den Community Day freue ich mich schon ganz besonders: Erst letztes Jahr eingeführt war er mein persönliches Highlight der XP Days 2008. Vergleichbar mehr wie Unkonferenzen (Wikipedia). Mal schauen, ob dieses Jahr wieder ein Open Space (Wikipedia) auf dem Community Day veranstaltet wird.

Wer zum Programm der XP Days beitragen möchte, der schaue sich den Call for Sessions an. Neben den üblichen Themen wie XP, TDD, Scrum und Agiles Management ist dieses Jahr auch Kanban und Lean Management gefragt.



Neu in diesem Jahr - und das wird super - werden die Session-Blöcke zu Pecha Kucha (Wikipedia). Diese Vortragsformen sind 6:40 Minuten lang. Es werden 20 Folien präsentiert, jede einzelne genau 20 Sekunden lang. Gute Pecha-Kucha-Voträge zeichnen sich durch eine ungeheure Prägnanz aus und machen Lust auf Mehr zu dem Thema. Für das Publikum sind sie spannend und kurzweilig zugleich. Ich hoffe auf viele Einreichungen in diesem Format.

Das Review ist auch wie im letzten Jahr offen. Will heißen: Wer mag, der kann die eingereichten Sessions begutachten, bewerten und kommentieren. Jeder kann das, auch dann, wenn man selbst nicht an den XP Days teilnehmen will oder selbst eine Session eingereicht hat. Einzig eine Anmeldung im Conf-Tool der XP Days Germany ist dazu erforderlich.

Disclaimer: Für die XP Days Germany 2009 bin ich Mitglied des Programm-Komitees.

Donnerstag, 18. Dezember 2008

Dieser Blog ist tot. Ich blogge weiter auf dem «Agile Trail».

Slackstories und Slacktasks

Beim Planen rate ich meinen Teams, das Wetter von Gestern als Startwert zu benutzen. Wenn das Team sich verschätzt und weniger schafft in einem Sprint, als es ursprünglich angenommen hat, dann ist das okay und es bedarf keiner Überstunden. Allerdings muss dem Team Gelegenheit gegeben werden, besser werden zu können. Dafür benutze ich Slackstories und Slacktasks.

Mal angenommen, im ersten Sprint schafft das Team 10 Storypunkte. Bei der Planung vom zweiten Sprint benutze ich das Wetter von Gestern und lasse das Team wieder Stories im Werte von 10 Punkten einplanen. Der Ausgang für den nächsten Sprint verbirgt sich hinter drei potentiellen Türen:
  1. Tür: Das Team schafft genau 10 Storypunkte. Gut, dann plant es für den darauffolgenden Sprint wieder 10 Storypunkte ein.
  2. Tür: Das Team schafft weniger als 10 Storypunkte, vielleicht nur 9. Nicht gut, und das Team plant im darauffolgenden Sprint nur 9 Storypunkte ein.
  3. Tür: Das Team schafft mehr als 10 Storypunkte. Aber halt, wie soll denn das funktionieren...?!
Genau, da gibt's ein Problem mit dem Wetter von Gestern. Wenn das Team immer nur so viel einplant, wie es das letzte Mal geschafft hat, dann kann es sich nicht verbessern. Tatsächlich aber sollte das Team sich immer besser selbst organisieren und aus seinen Retrospektiven lernen, so dass es immer mehr Storypunkte innerhalb eines Sprints abschließt.

Aus diesem Grunde rate ich meinen Teams, immer mehr Stories einzuplanen, als sie beim letzten Sprint geschafft haben, die sogenannten Slackstories. Ein Verhältnis von normalen Stories zu Slackstories, mit dem wir bislang gut gefahren sind, ist 5:1, also 20 % Überplanung mit Slackstories.

Slackstories sind die Stories, die gerade eben nicht mehr in den Sprint gepasst haben. Sie sind diejenigen Stories, die im übernächsten Sprint Eingang finden würden. Daher ist es auch kein vergeudeter zeitlicher Aufwand, der in die Planung gesteckt wird: Wenn die Slackstories nicht fertig gestellt werden, sind sie die höchstpriorisiertesten Stories für den folgenden Sprint, und nur selten sind sie das nach einem Sprint nicht mehr, weil der ProductOwner sich anders entschieden hat.

Tasks, die aus Slackstories stammen, nennen wir Slacktasks. Slackstories und Slacktasks markieren wir mit einem eingekreisten S auf der Storykarte. An Slackstories arbeitet das Team erst, wenn alle anderen Stories fertig gestellt sind. Es kommt ein gutes Gefühl im Team auf, wenn man gegen Ende des Sprints Tasks einer Slackstory bearbeiten darf: Das Team weiß dann, dass es in die "Gewinnzone" gefahren ist und die Teamgeschwindigkeit steigen wird.

Sonntag, 23. November 2008

Dieser Blog ist tot. Ich blogge weiter auf dem «Agile Trail».

Wetter von gestern

Wie viel Stories schafft ein Team in einem Sprint? Da kann man viel Aufwand betreiben, um das zu planen, oder einfach das Wetter von gestern zu Rate ziehen. Dieses Prinzip stammt aus dem Extreme Programming. Es hilft mir in fast jedem SprintPlanning weiter.



"Stormy Weather!" von Khalid Almasoud


Der Legende nach (beschrieben in Kapitel 8 von "Planning Extreme Programming" von Kent Beck und Martin Fowler) gab es mal einen Wetterdienst, der einen Haufen Geld investierte, um das Wetter besser vorhersagen zu können. Das Ergebnis waren Vorhersagen mit einer 70 %igen Wahrscheinlichkeit. Irgendwann hat dann jemand herausgefunden, dass man diese Wahrscheinlichkeit auch dann erreicht, wenn man vorhersagt, dass das heutige Wetter genauso sein wird wie das von gestern. Praktische Simplizität.

Das Team schafft also vermutlich genau so viel im kommenden Sprint, wie das, was es im letzten Sprint geschafft hat. Und genau so viel plant das Team dann auch ein im SprintPlanning. Diese Prinzip finde ich erfrischend einfach und immer wieder erstaunlich zutreffend.

Anzumerken sei noch, dass dieses Prinzip immer nur ein Startwert sein kann. Wenn im letzten Sprint die Hälfte der Entwickler sich einen Magen-Darm-Virus eingefangen haben, die Geschwindigkeit der Entwicklung entsprechend niedrig war und nur 5 von 10 geplanten Stories fertig gestellt wurden, dann wäre es höchst unwahrscheinlich, dass im nächsten Sprint auch nur 5 Stories fertig gestellt werden. Analog würde man ja auch nicht annehmen, nur weil heute ein Jahrhundertsturm durchs Land wütet, dass der morgen noch einmal vorbeikommt. Hier bin ich bislang ganz gut gefahren, wenn ich das Wetter von Vorgestern zum Planen heranziehe.

Freitag, 21. November 2008

Dieser Blog ist tot. Ich blogge weiter auf dem «Agile Trail».

XpDays 2008

Oha, da habe ich doch glatt verpennt, auf die XpDays 2008 aufmerksam zu machen. Shame on me! Und dabei sind die schon nächste Woche. Egal, dann bin ich halt einer der letzten, der erwähnt, dass die XpDays dieses Jahr wieder so richtig gut zu werden scheinen.

Das Programm hat's in sich: Donnerstags war sonst immer das Vorgeplänkel mit Workshops, doch dieses Jahr sind auch hier schon Sessions verfügbar. Parallel zu den Sessions läuft ein Agiler Schnupperkurs in Form eines Workshops, durch den Jens Coldewey und ich führen, und zwar ohne PowerPoint. Da freue ich mich schon drauf, finde es aber auch schade, dann keine Zeit für die Donnerstags-Sessions zu haben. Egal, das wird hoffentlich wieder ausgeglichen mit dem Extreme poetry & Buzzword Roulette von Martin Heider und Christine Neidhardt. Bin mal gespannt, was und wie das wird :-)

Tags darauf ist dann der Hauptteil der Konferenz: Begrüßung plus 19 Sessions plus Keynote werden angeboten. Johannes Link wird etwas über TDD, Ajax und Web 2.0 erzählen, Henning Wolf wird Agile Methoden einführen, Frank Westphal berichtet über Getting Real von den 37 Signals, dann komme ich mit einer Session über Werte, und Andreas Höfers Session "Vergleich erfahrener und unerfahrener Entwicklerpaare" ist ein Geheimtip: Wenn die annährend so interessant wird wie letztes Jahr, dann kann ich einen Besuch bei Andreas' Session nur emfehlen!

Na, noch nicht genug? Ein Novum in diesem Jahr ist der Community-Day am Samstag! Da freue ich mich schon ganz besonders drauf, denn das Format des Community-Day wird Open Space sein, und wer so etwas schon einmal mitgemacht hat, der weiß, dass es sehr kurzweilig, informativ und vor allem effizient ist.

Ich erwarte in diesem Jahr auch viele Scrummer auf den XpDays anzutreffen. Das Programm-Kommitee konnte sich noch nicht durchringen, die XpDays in so etwas wie AgileDays umzubenennen, aber immerhin haben die XpDays jetzt die Tagline All About Agile, und da dürfen dann auch endlich die Agilen jeder Methode ruhigen Gewissens teilnehmen ;-)

Laut Stefan Roock, dieses Jahr Vorsitzender des Programm-Kommitees, sind die XpDays fast ausgebucht. Ich persönlich mag die XpDays sehr gerne und sie sind jedes Jahr aufs Neue ein Highlight in meinem Kalender. Ich hoffe, wir sehen uns dort?

Zu guter Letzt: Es gibt einen XpDays-Blog unter http://xpdayblog.it-agile.de/blog

Dienstag, 15. Juli 2008

Dieser Blog ist tot. Ich blogge weiter auf dem «Agile Trail».

3. Deutschsprachiges Scrum-Meeting

Am 11.07.2008 trafen sich gut 40 Scrummer zum 3. Deutschsprachigen Scrum-Meeting in Unterföhring bei München. Dort sitzt die Allianz Shared Infrastructure Services, der IT-Dienstleister des bekannten deutschen Versicherungsunternehmens. Die versorgen momentan unter der Leitung von Simon Roberts ihre Projekte mit Scrum und waren Sponsor des Scrum-Meetings.

Das Meeting wurde im Open-Space-Format durchgeführt: Zu Anfang sammelte Krishan Matthis, der zusammen mit Simon den Tag organisiert hat, die Themen. Verteilt auf drei Räume und Säle wurde dann mit den Füßen abgestimmt, welche Themen in welchem Ausmaß gehört und diskutiert werden wollten.

Gleich zu Anfang war ich zusammen mit Hans-Peter Korn Session-Owner eines Timeslots zum Thema Teamdynamik. Hans-Peter ließ mir den Vortritt uns so trug ich zum erweiterten Tuckman-Model vor. Das Tuckman-Model zeigt Erklärungen für die Dynamik und bestimmte Phänomene innerhalb einer Gruppe auf und kann zur Kommunikation über und der Analyse von Gruppen herangezogen werden. Über die Namen der Phasen (Norming, Storming, Forming, Performing und Reforming) ist das erweiterte Tuckman-Model nach Eberhard Stahl zu großem Bekanntheitsgrad gelangt. Dazu sind die Folien online oder können gleich hier angeschaut werden:



Nachdem ich also ein Model zur Gruppendynamik vorgestellt habe, begann Hans-Peter seinen Session-Teil mit dem George-Box-Zitat "All models are wrong; some models are useful." Das versprach nach dieser Einleitung, mindestens interessant zu werden.

Konkret stellte Hans-Peter das Cynefin-Model vor. Er zeigte daran, dass die meisten Projektsituationen statt kompliziert oder einfach und damit analysierbar, eher komplex oder chaotisch und damit gar nicht oder nur sehr schwer analysier- und regelbar sind. Soweit ich es verstanden habe, argumentierte dann Hans-Peter über den Radikalen Konstruktivismus (Wahrnehmung ungleich Realität), dass teamdynamische Modelle (wie etwa auch das Tuckman-Model) als eine Art selbst erfüllende Prophezeiung durch ihre bloße Kenntnis den Betrachter zu falschen Schlüssen leitet, so nach dem Motto "Wenn ich einen Hammer habe, dann ist alles ein Nagel." Für Hans-Peter scheint es mir so, als ob statt Regeln von umfangreichen Modellen lediglich ganz grundlegende Eigenschaften für ein Team gelten, etwa "die grundsätzliche Übereinstimmung des Teams mit dem 'Sinn' des Teams als Ganzes" (Zitat aus seinem Skript zur Session). Umfangreiches Material hat Hans-Peter online zur Verfügung gestellt.

Das ist eine für mich ungeheuer spannende Sache, und ich bin ein wenig unglücklich, dass unsere gemeinsame Session nach 90 Minuten bereits vorbei war, ohne dass wir in eine tiefere Diskussion hätten einsteigen können. So sehe ich bislang noch einen Widerspruch in Hans-Peters Argumentation, denn einerseits rät er, Abstand von Modellen im Allgemeinen zu nehmen, andererseits basiert seine Argumentation ebenfalls auf zwei Modellen, dem Cynefin-Model und den allgemeinen Eigenschaften eines Teams. Leider konnten wir auch im weiteren Verlauf des Meetings uns nicht darüber austauschen. Muss ich unbedingt noch nachholen.

Nach dem Mittag bin ich zuerst bei Simon und Krishan in einer Session gewesen, in der sie die Frage nach wichtigen Skills für einen Scrum-Master stellten und damit eine rege Diskussion in Gang brachten. Ich habe nichts mitgeschrieben aus dieser Session, kann hier keine Liste aller Skills präsentieren, und erinnere mich an Skills wie das Verstehen der Abhängigkeiten von Werte, Prinzipien, Techniken. Authentizität war ein anderer genannter Skill. Nach 45 Minuten bin ich da dann raus und in eine andere Session.

Simon Roberts wechselte auch, wollte er doch zusammen mit Boris Gloger eine Session über die Rollen in Scrum halten. Über seine neuen Rollen in Scrum hat Boris bereits vor Wochen auf der Mailingliste der Deutschsprachigen Scrum-Community geschrieben, und da habe ich ihn nicht verstanden, aber auch keine Zeit zum Nachfragen gehabt. Auf dem Meeting in Unterföhring nun hoffte ich, ein wenig Licht ins Rollendunkel zu bekommen - war aber dann höchstens ein leichtes Flackern.

Boris präsentierte zunächst seine neuen Scrum-Rollen (Model: 3+3 Rollen): Neben den ursprünglichen Rollen Product-Owner, Scrum-Master und dem Team gibt es die glogerschen Rollen End-User, Kunde und Management. Rollen, so habe ich Boris verstanden, sind für ihn Container für Verantwortung, die im Prozess, nicht in der Firma, definiert sind. Die Verantwortung für den Product-Owner ist dabei der Return-On-Investment (ROI), die des Scrum-Masters die Prozesseinhaltung, die des Teams die Produktentwicklung. Die Verantwortung des End-Users ist die Benutzbarkeit des Produktes, die des Kunden das Budget und die des Managements der Einsatz des Prozesses (Scrum eben). Zwecks Unterscheidung erklärte Boris, dass Product-Owner, Scrum-Master und das Team zusammen das Scrum-Team genannt werden (laut Ken Schwaber so auf der englischsprachigen Mailingliste vor ein paar Wochen definiert).

Boris hatte mit einigem Gegenwind aus der Zuhörerschaft zu schaffen. So wurde nicht deutlich, warum es gerade diese drei neuen Rollen sein sollten, denn es wäre stark situationsabhängig, welche zusätzlichen Rollen für einen speziellen Scrum-Anwendungsfall definiert werden müßten. Außerdem, so wurde gegen das 3+3-Rollen-Model argumentiert, würde es die Einfachheit des ursprünglichen Scrum-Rollen-Models opfern, was nach Meinung einiger überhaupt erst Scrum so populär hat werden lassen.

Mich irritierte auch der Begriff "Scrum-Team" im Gegensatz zum Team. Stelle ich mir sehr schwer in der Referenzierung bei gesprochener Rede vor: "Reden wir vom Team..." - "Welches Team meinst Du? Das Scrum-Team oder das Team-Team?" - "Das Team eben, die Entwickler." - "Ah, okay, das Team-Team also." - "Nein, nur das Team." - "Ok, aber nicht das Scrum-Team." - "Nein, nicht dieses Team." - "Sondern das andere Team?!" - "..."
Fast wie ein Monty-Python-Sketch ("Spam Spam Spam Spam...").

Simon stellte daraufhin sein Model 3+1-Rollen vor. Seine These: Ja, es gäbe weitere Rollen neben den drei ursprünglichen Scrum-Rollen, aber welche das genau seien, das wäre abhängig vom genauen Kontext. Simon war das Minimieren der sozialen Komplexität sehr wichtig. Daher bezeichnete er diese zusätzlichen Rollen insgesamt als +1 oder "others", reduziert eben auf eine einzige Rolle, die mehrere Personen umfassen kann. Damit lässt er bewußt offen, welche Rollen das sind und auch, wie viele. Er stellt lediglich fest, dass es diese zusätzlichen Rollen gibt.

Meiner Ansicht nach adressiert das 3+1-Model nicht nur die vom Publikum vorgetragenen Bedenken, sondern belässt das Scrum-Rollen-Model hinreichend einfach; daß es noch andere Rollen geben kann neben den drei ursprünglichen, ist eigentlich logisch aus Sicht eines anpassbaren Prozesses, wie es Scrum zu sein behauptet. Simon hat es lediglich einmal explizit festgestellt: 3+1.

Weg von den Rollen: Neben der Teilnahme an und der Interaktion in den Sessions gab's noch ausreichend Gelegenheit, alte Bekannte wiederzusehen, neue Mitglieder der Scrum-Community kennen zu lernen und viel Flurfunk zu lauschen. Die Organisation war wieder vom Feinsten: Danke an Krishan und Simon! Kost und Logis des Sponsors Allianz waren sehr angenehm. Insgesamt gab's sehr viel positives Feedback in der Abschlussrunde der Veranstaltung für diesen Tag.

Eine Diskussion möchte ich nicht unerwähnt lassen: Über die Scrum-Community im Deutschsprachigen Raum und die restliche deutschsprachige Agile Szene, insbesondere, aber nicht nur, die XPler. Es gibt von beiden Seiten Stimmen, die jeweils eine zurückhaltende bis ablehnende Einstellung bei der jeweils anderen Community zu sehen glauben.

Einerseits sehen einige XPler kein Entgegenkommen auf Scrummer-Seite: Da wurde ein Sessionvorschlag abgelehnt, der weitere agile Praktiken diskutieren wollte, wenn denn Scrum erstmal in einer Firma/einem Projekt/einem Team etabliert ist. Oder es wird die Zurückhaltung im Sinne von Nichtbesuch bis Nichtteilnahme von Scrummern auf bzw. an den XpDays im November diesen Jahres bemängelt.

Andererseits sehen einige Scrummer kein Entgegenkommen auf XPler-Seite: Da wird sich gefragt, warum sich keine XPler in der deutschsprachigen Scrum-Community blicken lassen. Oder warum auf den XpDays Scrum scheinbar nur eine untergeordnete Rolle spielen soll.

Einige dieser Ansichten scheinen für mich dabei auf Missverständnissen zu beruhen. So sind einige XPler bereits Teil der deutschsprachigen Scrum-Community, etwa Joseph Pelrine, der Scrummer in Europa schlechthin, und derjenige, der seine Wurzeln in XP hat und immerhin zum Gründungsmeeting der Deutschsprachigen Scrum-Community damals in Frankfurt einlud. Jens Coldewey, Urgestein der Agilen Szene, war auf dem diesjährigen Treffen dabei, und es hörte sich stark danach an, als ob es nicht sein letztes Mal sein sollte. Andreas Thiel und Fahd Al-Fatish fallen mir noch als scrummende XPler ein. Auch ich habe meine Wurzeln in XP und bin von Anfang an bei der deutschsprachigen Scrum-Community dabei gewesen.

Die XpDays sind tatsächlich von jeher scrumaffin: Vor dem Hauptkonferenztag werden z.B. CSM-Kurse angeboten, viele Scrummer nehmen an der Veranstaltung teil und es gab in der Vergangenheit auch einige Scrum-Sessions auf den XpDays. Interessant an dieser Stelle: Im Programm der XpDays des letzten Jahres gab es zwei Sessions, die explizit Scrum thematisierten - gegenüber auch zwei Sessions, die explizit XP thematisierten. Ausgeglichener kann es wohl kaum zugehen.

Tatsächlich sehe ich ein großes Problem in der Namensgebung dieser Veranstaltung, die da mit vollem Namen lautet "XP-Days - Konferenz für Entwickler und Projektmanager über eXtreme Programming und agile Softwareentwicklung". Da steckt Agile SE nur noch als Appendix im Untertitel der Veranstaltung und klammert damit - bestimmt nicht mit Absicht, aber immerhin - potentiell Scrummer aus oder stellt sie scheinbar in die zweite Reihe. Die Veranstaltung wird quasi überall nur mit "XpDays" referenziert, und da geht auch noch das letzte bisschen "agil" im Titel flöten. Es wird aus meiner Sicht Zeit für die AgileDays, damit Scrum gleichberechtigt neben XP und Chrystal und FDD und Wiesiealleheißen auftreten kann, für "Ideen, die vor allem der gemeinsamen Sache helfen."

Über das 3. Deutschesprachige Scrum-Meeting schrieben auch
Weitere Infos gibt's auf dem Wiki der Deutschsprachigen Scrum-Community.