Extreme Programming ist nicht umsonst und nicht für jeden geeignet. Wir haben einen Schnellcheck für Sie vorbereitet, ob XP für Sie in Frage kommt:

Voraussetzung 1: Die Firmenkultur

Voraussetzung für XP ist die richtige Firmenkultur. Mitarbeiter und Führung müssen offen für neue Ansätze sein und akzeptieren können, dass die Entscheidungsgewalt für den nächsten Entwicklungsschritt je nach Business-Value beim Kunden liegt.

Ebenso zählen räumliche Nähe und persönliche Offenheit. Team und Kunde müssen wechselseitig stets greifbar sein, global verteilte Entwicklung mit spärlichem Kundenkontakt ist bei XP nicht vorgesehen. Vielmehr muss das Team inklusive des Kunden bereit sein, die gemeinsame Verantwortung für den Erfolg zu übernehmen (Whole Team). Darüber hinaus verlangt XP von den Entwicklern, dass sie häufig zu zweit in wechselnden Paaren vor demselben Bildschirm arbeiten können (Pair Programming) und dass es keinen persönlichen Code und keinen persönlichen Besitz im Projekt gibt (Collective Ownership). Jeder Projektbeteiligte (Chefs inklusive) muss bejahen, dass Programmieren eine Tätigkeit ist, die kein Beteiligter mehr als 40h in der Woche ausüben kann (Sustainable Pace).

Voraussetzung 2: Die Erfahrung

XP benötigt zur Umsetzung erfahrene Entwickler mit hoher Sozialkompetenz, die teamfähig sind und gegenseitiges Vertrauen und Offenheit gegenüber Kritik mitbringen. Sie müssen bereit sein, technischen Ehrgeiz jederzeit zurückzustellen und in jedem Moment die einfachste Lösung zu implementieren (Simple Design). Anderseits, wenn die Zeit gekommen ist, müssen Sie jederzeit fähig sein, Kritik sowohl zu üben als auch anzunehmen, denn schlechter Code muss so oft als möglich verbessert werden (Refactoring). Damit das funktionieren kann, müssen Sie überzeugt sein, frühzeitig Energie in die Implementierung von Software-Tests zu stecken (Test-driven Development) und sich auf gemeinsame Standards im Codieren einigen können (Coding Standards). Ein Team, das zu unerfahren ist, diese Prinzipien voll zu bejahen, ist nicht für XP geeignet.

 

Voraussetzung 3: Lernbereitschaft und extreme Konsequenz

Stehen Sie vor einem überschaubaren Vorhaben, dessen Anforderungen klar sind oder ausreichend stabil bleiben und über dessen Gelingen Sie sich sicher sein können? Dann vergessen Sie XP.  Stehen Sie vor einem Vorhaben, das aus Ihrer Sicht nur von einer Vielzahl von Beteiligten gelöst werden kann? XP ist nichts für Sie. Suchen Sie den kurzfristen Erfolg mit XP, stehen aber am Anfang dieser Prinzipien? Das geht nicht, ein Team braucht Zeit zur Etablierung von Extreme Programming.

"XP ist eine kompakte Methode zur Entwicklung von Software in kleinen bis mittelgroßen Teams, deren Arbeit vagen oder sich rasch ändernden Anfoderungen unterliegt."
– Kent Beck

XP ist auch dann ungeeignet, wenn Sie „ein bisschen XP“ machen wollen. Die Prinzipien hinter XP stützen sich gegenseitig und wären für sich allein genommen zum Scheitern verurteilt. Der Code kann nicht die Haupt-Dokumentation sein, ohne Refactoring, Simple Design, Coding Standards und Pair Programming zu machen. Mehr noch: XP fordert extreme Konsequenz.

  • Wenn Code Reviews gut sind, dann begutachten wir ständig Code (Pair Programming).
  • Wenn Design gut ist, dann machen wir es zur täglichen Aufgabe (Refactoring).
  • Wenn kurze Iterationen wichtig sind, dann machen wir sie wirklich kurz. Sekunden, Minuten und Stunden, statt Wochen, Monate und Jahre.

Spüren Sie die Konsequenz?

Sie bringen diese Voraussetzungen mit und möchten mehr über Extreme Programming erfahren? Lesen Sie doch unsere kompakte Kurzfassung der Inhalte dieser Entwicklungsmethodik:

XP Grundlagen