PROJEKT-LOG - Klassisch agiles Projektmanagement und mehr
  • Start
  • Autoren
  • Impressum
  • Top Agile Tools

Sprache | Language

  • Deutsch
  • English

Autoren

  • Robert Wiechmann 315
  • Sven Röpstorff 21
  • Katja Roth 6
  • Ralf Wirdemann 3
  • Susanne Reppin 3

Kategorien

  • Agile Softwareentwicklung (128)
  • Allgemein (121)
  • Internet (28)
  • Interview (16)
  • Kanban (10)
  • Lean (9)
  • Literatur (11)
  • Management (36)
  • Präsentation (56)
  • Projektmanagement (42)
  • Scrum (81)
  • Software (20)
  • Studien & Umfragen (2)
  • Termine (18)
  • Tools (38)
  • Umfrage (2)
  • Zertifizierung (9)
  • Zitate (30)
  • Zusammenarbeit (16)

Partner




Letzte Artikel

  • Besser kommunizieren
  • Product Owner im Potrait: Niklas Sum
  • Frohe Weihnachten
  • Jahresrückblick 2011 plus Gewinnchance
  • Meine Pünktlichkeit drückt aus, dass mir deine Zeit so wertvoll ist wie meine eigene. [Helga Schäferling]

Archiv

  • Januar 2012
  • Dezember 2011
  • November 2011
  • Oktober 2011
  • September 2011
  • August 2011
  • Juli 2011
  • Juni 2011
  • Mai 2011
  • April 2011
  • März 2011
  • Februar 2011
  • Januar 2011
  • Dezember 2010
  • November 2010
  • Oktober 2010
  • September 2010
  • August 2010
  • Juli 2010
  • Juni 2010
  • Mai 2010
  • April 2010
  • März 2010
  • Februar 2010
  • Januar 2010
  • Dezember 2009
  • November 2009
  • Oktober 2009
  • September 2009
  • August 2009
  • Juli 2009
  • Juni 2009
  • Mai 2009

Top Agile Tools



Informationen


 RSS Feed abonnieren

Follow @projekt_log




Creative Commons License

Schlagwörter

Agil Agile Agile Softwareentwicklung Backlog Blog Buch Empfehlung Estimation Framework Führung GTD Informationen Internet Interview Kanban Kommunikation Konferenz Lean Management Methode News Online Organisation PPT Product Owner Produktivität Projekt Projektmanagement Präsentation präsentieren Quote Scrum Software Spruch Team Tipps Tool Tools User Stories User Story Video Vortrag XP Zitat Zusammenarbeit

Letzte Kommentare

  • IT Freelancer on Besser kommunizieren
  • Robert Wiechmann on Besser kommunizieren
  • IT Freelancer on Besser kommunizieren
  • Robert Wiechmann on Jahresrückblick 2011 plus Gewinnchance
  • Hass Chapman on Jahresrückblick 2011 plus Gewinnchance
  • Sven Röpstorff on Story Maps - Selbsterklärende Product BacklogsStory Maps - Let your product explain itself
  • Christoph Oberle on Story Maps - Selbsterklärende Product BacklogsStory Maps - Let your product explain itself
  • Sven Röpstorff on Story Maps - Selbsterklärende Product BacklogsStory Maps - Let your product explain itself
  • Toby Baier on Story Maps - Selbsterklärende Product BacklogsStory Maps - Let your product explain itself
  • Jane Doe on Lieber Sprint, ich hasse Dich ...Dear sprint, I hate you ...


Unterstützen Sie uns



Interessante Artikel

  • Spaß mit Agiler Softwareentwicklung
  • Der richtige Einsatz von Schriften in Präsentationen
  • Zeitmanagement – ein Experiment Teil 2Zeitmanagement – ein Experiment Teil 2
  • Agile rockt! 10 Jahre Agiles ManifestAgile rocks! 10 years Agile Manifesto
  • AgileEE 2010 - Ein Rückblick
  • Frohe OsternHappy Easter
  • Virtuelle Scrum KonferenzVirtual Scrum Conference
  • Post-its mit Herz
  • User Stories für das Product Backlog (Teil 2|2)
  • Leseempfehlungen der Woche [2010-09-19]

Twitter

Schulden vermeiden

01.01.2010

Innerhalb meines laufenden Projekts musste ich leider in meiner Rolle als Scrum Master die schmerzliche Erfahrung machen, was es bedeutet, eine nicht klar definierte und allgemein gültige Definition of Done (DoD) zu haben. Dies führte uns im Projekt soweit, dass die Entwickler sich den zunehmend auftretenden Fehlern nicht mehr stellen konnten. Dieses Szenario endete in einem Stabilisierungssprint, in dem die angehäuften „technischen Schulden“ beglichen werden mussten. Wie kam es dazu?

Mit Stabilisierungssprint meine ich, dass in diesem Sprint keine Features umgesetzt, sondern lediglich die Überarbeitung des bestehenden Codes und die Eliminierung von Fehlern vorgenommen wurde. Es häufen sich also durch alle vorherigen Sprints so viele Fehler an, dass die aktuelle Arbeit an neuen Features nicht mehr fortgeführt werden kann, da in Scrum gilt: Fehlerbehebung vor Neuentwicklung. Es musste die Notbremse gezogen werden. Ich habe dann kurzfristig eine Sitzung mit dem Team einberufen und ihnen die aktuelle Situation anhand der unten angefügten Präsentation erläutert. Das Meeting sollte dazu dienen die Teammitglieder für die aktuelle Situation zu sensibilisieren, die neue Defintion of Done festzulegen und ein Commitment aller Beteiligten zu erhalten.

Technische Schulden

Folie 1: Das Titelbild habe ich als Anspielung auf etwas Unfertiges, etwas schnell Beendetes oder auch etwas an dem mit Qualität gespart wurde gewählt.

Folie 2: Die Eingangsfrage lautete „Wie können wir zukünftig sicherstellen fertigen und funktionsfähigen Code zu entwickeln?“. Bedeutet „fertig“ auch wirklich der Code muss nicht mehr angefasst werden, die Architektur ist vorbereitet für zukünftige Entwicklungen – spricht der Kunde erhält was ihm versprochen wurde – oder ist der Code eigentlich noch „unfertig“?

Folie 3 & 4: Wird Unfertiges mitgeschleppt, beginnt man Schulden aufzubauen. Die Frage die man dabei stellen muss: „Warum macht man Schulden?“. Natürlich damit man sich aktuell etwas leisten kann, auf das man ansonsten verzichten müsste. In der Softwareentwicklung könnten dies Work arounds oder Nachlässigkeiten bei der Qualität (um Termine zu halten) sein. Im Review Meeting sind diese Fehler nicht sichtbar bzw. es können auch Umwege gefunden werden, diese nicht sichtbar zu machen. Die Fehler summieren sich somit über einzelne Sprints und führen zu dem oben beschriebenen Szenario.

Folie 5 & 6: Blickt man nun auf die Planung, wird eines deutlich. Der anhand der Velocity ermittelte Fertigstellungstermin ist nur ein Scheintermin, da mehr und mehr Arbeit bzw. Schulden angehäuft werden. Der eigentliche Termin verschiebt sich somit um Faktor „x“.

Folie 8: Die Folie zeigt Beispiele für „Done“-Kriterien, die in einer DoD enthalten sein können. Diese galten als Hilfestellung für das Team. Für diesen Teil des Workshops hatte ich am meisten Zeit eingeplant, um mit dem Team eine allgemeingültige und anerkannte Definition of Done zu entwickeln.

Zum Abschluss habe ich noch einmal auf den Vortrag von Robert C. Martin hingewiesen (siehe Artikel). Sein Beispiel bringt es im Grunde auf den Punkt – das Herz guter Software ist der Code. Und guter Code ist ein Versprechen an den Kunden.

Über den Autor

Momentan als Projektmanager und Agiler Coach in Hamburg tätig, unterstütze ich Scrum und Kanban Teams bei der Bewältigung ihrer alltäglichen Herausforderungen. Zudem bin ich mit dem Coaching von Mitarbeitern betraut und laufend bestrebt, in den Austausch mit Anwendern agiler Methoden zu treten.

  • Kategorie: Agile Softwareentwicklung|Präsentation|Scrum
  • Schlagworte: Definition of Done, DoD, Done, Technical Debt
  • Autor: Robert Wiechmann

Weitere Artikel zu diesem Thema

  • Messzahl für die Qualität des Codes
  • Wie stellt man sicher, keinen schlechten Code zu produzieren?
  • Ein Manifest für Softwareentwickler

2 Kommentare zu Schulden vermeiden

Avatar

Frederik

07.01.2010

Hallo Robert,

klasse Artikel! Bei dem Thema Schulden fehlt mir eigentlich nur noch wie man mit “alten Schulden” am Besten umgeht. Zum Beispiel wenn das Team eine Legacy Software übernimmt, muss man sich einarbeiten, man weiss (noch) nicht welche Probleme auftreten werden und wo man vielleicht grössere Baustellen aufräumen muss…

-Frederik

Avatar

Robert Wiechmann

08.01.2010

Hallo Frederik,
vielen Dank für deine Anmerkung, guter Punkt.

Baut man neue Features auf ein Fundament, welches zukünftigen Anforderungen nicht gerecht werden kann, ist ein Schuldenberg wahrscheinlich vorprogrammiert. Irgendwann skaliert die Software nicht mehr, man setzt Workarounds zur Stabilisierung ein oder muss ggf. Abstriche bei besseren Lösungsansätzen leisten…

Daher müssen im Grunde die alten Schulden von denen du sprichst, in die neuen Features und auch Schätzungen einfließen. Es reicht hier nicht, nur die neuen Funktionalitäten zu sehen, sondern ggf. gehört die Evaluation der bestehenden Architektur und des Codes dazu. Auch Refactorings des bestehenden Codes sind u.U. zu berücksichtigen.

Beste Grüße,
Robert

Kommentare

top

Copyright ® 2009-2011 - PROJEKT-LOG  RSS Feed abonnieren

ALL-INKL.COM - Webhosting Server Hosting Domain Provider