eXtreme Programming (XP)

Was ist XP?

Das Charakteristikum von eXtreme Programming (XP) besteht im zyklischen Vorgehen auf allen Ebenen: von der Programmierung über die tägliche Abstimmung im Entwicklerteam bis hin zum gemeinsamen Anforderungsmanagement mit dem Kunden.

 

  • Sekundentakt: Das Programmieren in Paaren (Pair-Programming) führt dazu, dass sich die Entwickler ständig gegenseitig kontrollieren und auf Fehler oder umständliches Design aufmerksam machen. 
  • Minutentakt: In XP wird testgetrieben entwickelt, die UNIT-Tests werden also vor dem Code geschrieben, so dass eine permanente Überprüfung des Codes stattfindet.
  • Stundentakt: Neu entwickelte Komponenten werden mehrmals täglich in das lauffähige Gesamtsystem integriert (Continuous Integration). So lassen sich Fehler schneller finden – denn je später Fehler entdeckt werden, um so aufwändiger sind sie zu beheben.
  • Tagestakt: In XP findet ein tägliches Treffen statt, auf dem das Entwicklungsteam kurz über den Projektfortschritt reflektiert und Fehlentwicklungen vermeidet. Weil das Treffen im Stehen stattfindet (durch die mangelnde Bequemlichkeit werden die Teilnehmer zur Prägnanz „gezwungen“), heißt es auch Standup-Meeting.
  • Wochentakt: XP legt größten Wert auf kurze Iterationszyklen von wenigen Wochen. So erhält der Kunde immer wieder lauffähige Systemversionen, um diese zu testen und seine fachlichen Anforderungen auf den neuesten Stand zu bringen. Es werden also nicht die Anforderungen umgesetzt, die zu Projektbeginn einmal definiert wurden, sondern entwickelt wird immer genau das, was in der aktuellen Situation den größten Geschäftswert für den Kunden erzielt. Deshalb werden in regelmäßigen Abständen neue Iterationspläne erstellt.
  • Monatstakt: Anders als in klassischen Projekten, in denen es nur ein großes Release am Ende der Projektlaufzeit gibt, werden in XP-Projekten regelmäßig – am besten monatlich – neue Releases produktiv gestellt. Durch die kurzen Releasezyklen kann sehr früh ein Teil-Geschäftswert generiert werden. XP-Projekte werden deshalb sehr viel früher selbstfinanzierend als klassische Projekte. In Abständen von wenigen Monaten werden daher aktuelle Releasepläne erstellt, in denen die nächsten Iterationen festgehalten werden.

 

 

Welche Vorteile bietet XP?

Die Vorteile des zyklischen Vorgehens in XP liegen auf der Hand:

 

  • Durch das inkrementelle Vorgehen und die und monatliche Auslieferung kann die neue Software zu einem frühen Zeitpunkt produktiv gehen und seine Kosten schnell wieder hereinholen – im besten Fall sogar noch während der Projektlaufzeit.
  • Der Code selbst wird in sehr hoher Qualität erstellt und bleibt dank testgetriebener Entwicklung stets änder- und erweiterbar, womit auch in großen Systemen die Voraussetzung geschaffen wird, um Refactorings durchzuführen.
  • Nicht zuletzt hat XP eine positive Wirkung auf den Teamgeist und die Motivation der Entwickler: sie identifizieren sich mit dem hochwertigen Code und feiern Erfolgserlebnisse, wenn wieder eine neue Version ausgeliefert werden kann.

Allerdings muss man sich darüber im Klaren sein, dass XP eine anspruchsvolle Methode darstellt und eine Reihe von Hürden zu nehmen sind, bevor die genannten Vorteile erreicht werden können.

 

Unser Angebot zu XP

Wir können auf eine inzwischen 8-jährige Erfahrung mit XP in vielen erfolgreichen Projekten zurückblicken. Diese Erfahrung geben wir in Schulungen und Coachings an IT-Manager und Entwickler weiter, die XP bei sich einführen möchten.

Wir bieten Inhouse-Schulungen zu XP und individuelles Coaching an - treten Sie einfach mit uns in Kontakt.