Eine Agile Methode in der Softwareentwicklung ist das Extreme Programming (Abgekürzt XP).
Extreme Programmierung besteht aus sehr vielen kleinen kontinuierlichen Schritten. Die Iterationen dauern in der Regel 1-2 Wochen.
XP ist sehr strukturiert und stellt Teamarbeit, Offenheit und stete Kommunikation in den Vordergrund.
Optimal geeignet ist XP wenn man davon Ausgeht, dass der Kunde die Anforderungen an die Software zu Projektbeginn noch nicht vollständig kennt, strukturieren kann oder wenn das Entwicklerteam nicht über alle Informationen verfügt um den Aufwand bis zum Projektende vollständig zu schätzen.
XP wird angetrieben durch die Testgetriebene Entwicklung (TDD), Paarprogrammierung und das Restrukturieren des Codes.
Unerfahrene Entwickler Teams können mit XP Probleme haben, da der Wert aus den resultierenden test oder dem Restrukturieren des Codes noch nicht wertgeschätzt wird, daher sollte XP eine bewusste Entscheidung unter Wertschätzung der Möglichkeiten sein.
Im ersten Durchgang (der ersten Iteration) geht es um konkrete Ziele für die Entwicklung, dann folgt das Schreiben der automatisierte Test. Nun folgt die Codierung, die gewöhnlich als Paar Programmierung durchgeführt wird, die Codierung ist mit Abschluss der automatisierte Test beendet.
Die nächste Phase besteht aus Design und Architektur sowie der Restrukturierung des Codes.
Am Ende steht eine unvollständige, aber funktionale Software zur Verfügung.
Die folgenden Iterationen laufen identisch nur ersten Phase ab, hier wird sich dann aber auf wichtige Funktionen der Software konzentriert.