Klingt doch ganz einfach, oder?
Der Zyklus, in dem funktionierende Software erstellt werden soll, beträgt bis zu 30 Tage. In der Regel werden Zyklen von 10 Tagen vereinbart. Somit wiederholt sich das ganze Vorgehen also alle zwei Wochen.
Was kann passieren?
Wird das agile Framework nicht richtig und konsequent eingesetzt, besteht die große Gefahr, dass das Scrum Team in einem Hamsterrad endet und rotiert und das Management im Hintergrund nur noch anfeuert. Dann haben wir „Scrumster“.
Scrumster ist also eine Situation, bei der etwas massiv aus dem Ruder gelaufen ist. Keiner der Beteiligten hat sich das so gewünscht oder beabsichtigt, dorthin zu gelangen. Aber trotzdem ist es passiert. Dann fragt sich jeder, woran es gelegen hat, dass man so ins Chaos geschlittert ist, ohne es zu bemerken, oder wer eigentlich Schuld daran hat.
Ursachenforschung betreiben
Jeder hat doch sein Bestes gegeben, oder? Waren etwa die alten Haudegen der Firma zu starrsinnig? Haben die unseren Ansatz zur agilen Softwareentwicklung unterlaufen und zum Scheitern gebracht?
Wie kann der drohende Kollaps vermieden werden? Welche Dinge führen überhaupt zu diesem Kollaps?
Eine Analyse ist es allemal wert, um hinter das Geheimnis des Scheiterns zu kommen. Und genau das wurde gemacht und in diesem Buch festgehalten, damit Sie, liebe Leserinnen und Leser, davon profitieren können.
Ihr Nutzen
Einmal erkannte Missverständnisse oder Fehlinterpretationen können Ihnen dadurch hoffentlich erspart bleiben. Wenn Sie weitere wertvolle Erfahrungen gemacht haben, die Sie mit anderen teilen wollen, würde ich mich über eine Nachricht von Ihnen freuen.
Der Aufbau dieses Buches
Das hier zusammengestellte Best-of der größten Irrtümer bei der Anwendung agiler Methoden ist sicherlich sehr subjektiv, die gewählte Reihenfolge sicherlich auch. Aber eine Veröffentlichung des ersten Entwurfs zu diesem Manuskript im Intranet unserer Firma bekam so viel positives Feedback und hat so viel Interesse geweckt, dass ich mich dazu entschlossen habe, die vorliegenden Erkenntnisse einem größeren Publikum zur Verfügung zu stellen.
Was erwartet Sie nun?
Auf den folgenden Seiten sind die häufigsten Gründe dafür, warum agile Methoden scheitern können, in einem illustren Countdown zusammengestellt.
TEIL II Der Countdown
Platz 10 - Working Software
Funktionierende Software ist schon im agilen Manifest proklamiert und eine Grundvoraussetzung agiler Methoden, um ermitteln zu können oder besser gesagt, um messen zu können, was man schon erreicht hat.
Bewährtes in neuem Look
Ganz neu ist diese Erkenntnis allerdings nicht. Ins klassische Projektmanagement übertragen handelt es sich hierbei um „earned values“ oder auf Deutsch den „Fertigstellungsgrad“, ein Werkzeug des Projektcontrollings, um den Projektfortschritt zu verfolgen. Eine Bewertung des Projektfortschritts erfolgt in agilen Methoden wie Scrum am Ende jedes Sprints.
Die agile Grundannahme
Jeder Sprint stellt eine Investition dar und verfolgt das Ziel, dem erhofften Ergebnis einen Schritt näher zu kommen.
Abbildung 5 Die agile Grundannahme
Nach jedem Sprint soll in agilen Vorgehensmodellen überprüft werden, was tatsächlich erreicht wurde. Das so entstandene agile Artefakt ist „working software“. Unsichtbar und nur in der unbewussten Wahrnehmung der Beteiligten befindet sich die agile Grundannahme. Es wird grundsätzlich davon ausgegangen, dass Investitionen, die „funktionierende Software“ als Ergebnis haben, dauerhaft erhalten bleiben, weil Software, die einmal funktioniert, keinem „Verschleiß“ unterliegt. Einmal von der Wartung dieser Software abgesehen, ist das die agile Grundannahme.
Trifft das eigentlich zu?
Ob diese Grundannahme tatsächlich zutrifft, hängt nun im Wesentlichen von Ihrem Umfeld ab, in dem Sie sich bewegen. Ein Sprint wird in aller Regel zunächst in einer Entwicklungsumgebung entstehen. Ob in dieser Umgebung auch die Bewertung hinsichtlich „working software“ angestellt wird oder nicht, bestimmt maßgeblich, ob schon alle nötigen Investitionen getätigt sind oder nicht.
Tipps zu Working SoftwarePrüfen Sie, welche unausgesprochenen Annahmen in Ihrem Umfeld existieren und finden Sie einen transparenten Umgang damit.
Legen Sie es doch fest
Der Begriff „working software“ muss also für Ihre Verhältnisse definiert werden, damit jedem klar ist, was er bedeutet und was eben nicht. Ein Beispiel hierfür könnte sein:
Working software bedeutet für uns, dass das Produkt in der Entwicklungsumgebung installiert und benutzbar ist.
Will man das noch deutlicher formulieren, kann man auch beschreiben, was nicht unter „working software“ zu verstehen ist:
Working software hat bei uns die Eigenschaften, dass diese noch nicht auf einer „Staging-Umgebung“ (Test-, Integrations-, Referenz- oder Produktivumgebung) bereitgestellt wurde, noch nicht an den späteren Betreiber übergeben wurde und noch nicht mit einem Bestell- und Abrechnungsprozess versehen ist und damit noch keinen kommerziellen Beitrag zum Geschäftsergebnis liefern kann.