Extreme Programming
Kategorie: Projektmanagement
Definition
Extreme Programming (XP) ist eine agile Projektmanagement- und Softwareentwicklungsmethode. Sie eignet sich besonders für kleine bis mittelgroße Teams und Projekte mit häufig wechselnden Anforderungen.
XP legt den Schwerpunkt auf die Programmierung, kurze Entwicklungszyklen und eine enge Zusammenarbeit innerhalb des Teams.
Eigenschaften von Extreme Programming
• Agile Projektmanagementmethode
• Iteratives Vorgehen
• Kurze Entwicklungszyklen
• Fokus auf Softwareentwicklung
• Geeignet bei häufigen Anforderungsänderungen
• Starke Einbindung des Teams und der Kunden
Sprint
Die Arbeit erfolgt in kurzen Iterationen (Sprints).
Typische Dauer:
1 bis 2 Wochen
Am Ende eines Sprints steht ein funktionsfähiges Teilergebnis zur Verfügung.
Die fünf Werte von XP
Einfachheit
Der Code und die Lösung sollen möglichst einfach gehalten werden.
Kommunikation
Kontinuierlicher Austausch innerhalb des Teams.
Feedback
Regelmäßige Rückmeldungen durch Team und Kunden.
Respekt
Wertschätzung und Vertrauen innerhalb des Teams.
Mut
Mut zu Veränderungen, Verbesserungen und Refactoring.
Pair Programming
Beim Pair Programming arbeiten zwei Entwickler gemeinsam an einem Computer.
Driver:
Schreibt den Code.
Navigator:
Denkt über die Lösung nach, erkennt Fehler, schlägt Verbesserungen vor und achtet auf die Gesamtarchitektur.
Vorteile:
✓ Höhere Codequalität
✓ Weniger Fehler
✓ Wissensaustausch innerhalb des Teams
Mob Programming
Mob Programming ist eine Erweiterung des Pair Programmings.
Dabei arbeiten mehr als zwei Entwickler gemeinsam an derselben Aufgabe und demselben Code.
Continuous Integration
Continuous Integration (CI) bedeutet, dass abgeschlossene Aufgaben sofort in das Gesamtprojekt integriert werden.
Dadurch werden Integrationsprobleme früh erkannt und die Software bleibt jederzeit lauffähig.
Die Integration erfolgt häufig mehrfach pro Tag.
Werkzeuge für Continuous Integration
Beispiele:
• GitHub Actions
• Azure Pipelines
• Jenkins
• GitLab CI/CD
Vorteile von XP
✓ Hohe Flexibilität
✓ Schnelle Reaktion auf Änderungen
✓ Hohe Codequalität
✓ Frühes Feedback
✓ Geringeres Fehlerrisiko durch Pair Programming und CI
Nachteile von XP
✗ Höherer Kommunikationsaufwand
✗ Nicht optimal für sehr große Teams
✗ Pair Programming benötigt mehr Personalaufwand
✗ Starke Mitarbeit aller Teammitglieder erforderlich
Typische Prüfungsfrage
Frage:
Was versteht man unter Pair Programming?
Antwort:
Beim Pair Programming arbeiten zwei Entwickler gemeinsam an einem Computer. Eine Person programmiert, während die andere den Code überprüft, Verbesserungsvorschläge macht und die Gesamtlösung im Blick behält.
Merksatz für die Prüfung
Extreme Programming (XP) ist eine agile Methode mit kurzen Entwicklungszyklen, Pair Programming und Continuous Integration. Ziel ist eine hohe Softwarequalität bei gleichzeitig hoher Flexibilität.