Pair Programming
Was ist Pair-Programming?
Pair-Programming oder Programmieren in Paaren ist eine zentrale Technik aus dem eXtreme Programming (XP). Beim Pair-Programming sitzen zwei Entwickler gleichberechtigt an einem Rechner und arbeiten gemeinsam an einer Aufgabe. Die zwei Entwickler nehmen unterschiedliche Rollen ein, welche oft mit „Pilot“ und „Navigator“ bezeichnet werden. Der „Pilot“ schreibt den Code, während der „Navigator“ die Korrektheit des Codes und des Lösungsansatzes überwacht und parallel über Verbesserungen am Design nachdenkt. Weil beide Entwickler gleichberechtigt sind, gibt es keine feste Aufgabenteilung. Deshalb wechselt der „Pilot“ alle paar Minuten zum „Navigator“ und der „Navigator“ wird zum „Piloten“. Auch zwischen den Paaren werden die Partner kontinuierlich gewechselt. So wird sichergestellt, dass jedes Teammitglied alle Teile des Projektes kennenlernt.
Welche Vorteile bietet Pair-Programming?
![]() |
Untersuchungen (siehe unten) zeigen, dass der Einsatz von Pair-Programming die Qualität des Codes deutlich steigert. Dies liegt unter anderem am ständigen Codereview und dem sofortigen Feedback des „Navigators“. Gleichzeitig erhöhen sich die Entwicklungskosten nur minimal. Da Fehler umso teurer sind, je später sie entdeckt werden, können die Folgekosten erheblich minimiert werden. Außerdem zeigt sich, dass Entwickler durch Pair-Programming mehr Spaß an der Arbeit haben. Sie lassen sich weniger von privaten Interessen ablenken und haben mehr Vertrauen in den fertigen Code. Der Wechsel zwischen den Paaren bewirkt außerdem, dass sich das Projektwissen im gesamten Team gleichmäßig verteilt und es weniger „Spezialisten“ gibt. Dadurch wird der sogenannte Truckfaktor minimiert: Dieser gibt die Wahrscheinlichkeit an, mit der ein Projekt scheitert, wenn einer der Entwickler von einem Truck überfahren wird. Beim Pair-Programming geben die erfahrenen Entwickler ihre Kenntnisse an die weniger erfahrenen weiter. Auch die Kommunikation im Team wird durch das kontinuierliche Wechseln der Paarungen stark verbessert.
Kann man auch ohne Pair-Programming agil sein?
Selbstverständlich kann man auch ohne Pair-Programming agil vorgehen. Man muss dann allerdings bedenken, dass die oben beschriebenen Vorteile mit anderen Mitteln erreicht werden müssen. Dann sind z.B. konsequent Code-Reviews durchzuführen und mehr Dokumentation zu erstellen, weil sonst Wissensinseln entstehen.
Unser Angebot zu Pair-Programming
- Wir erstellen Individualsoftware mit Entwicklern, die im Pair-Programming sehr erfahren sind.
- Wir Coachen und betreuen Ihre Entwicklerteams beim Pair-Programming.
- Wir bieten Schulungen über agile Vorgehensweisen inklusive Pair-Programming.
Treten Sie mit uns in Kontakt.
Literatur
- Williams, Laurie: The Collaborative Software Processs, University of Utah, 2000.
- Nosek, John T.: The Case for Collaborative Programming, In: Communications of the ACM Vol. 41, Nr. 3, S. 105 - 108, 1998.







