Receive Updates

No spam guarantee.

Pair Programming – vier Augen sehen mehr als zwei

Pair Programming

Die meisten Programmierer sind es gewohnt, allein an einem Rechner zu sitzen und ihre Aufgaben eigenverantwortlich zu lösen. Planung, Durchführung und Kontrolle stammen aus einer Hand. Ebenso liegt die gesamte Verantwortung auf den Schultern des Solo-Programmierers. Mit der Methode des Pair Programming (Paarprogrammierung) wird diese Last auf mehrere Schultern verteilt, da zwei Programmierer sich eine Arbeitsstation teilen und das Projekt gemeinsam bewältigen. Dieses Prinzip entstammt dem Bereich des Extreme Programming, wo die Fertigstellung eines Projektes im Vordergrund steht – unabhängig von der gewählten Methode, dieses Ziel zu erreichen.

Der Hauptgrund für das paarweise Programmieren liegt auf der Hand: Durch die gegenseitige Kontrolle sollen Fehler möglichst schon im Vorfeld vermieden und teure nachträgliche Änderungen ausgeschlossen werden. Doch praktische Erfahrungen mit der Paarprogrammierung haben gezeigt, dass diese Methode noch weitere Vorteile bietet.

Für gewöhnlich findet die Arbeit in wechselseitigem Rhythmus statt, wobei einem der beiden Programmierer jeweils die Rolle des Aufpassers und Unterstützers zukommt, während sein Partner den Code schreibt. Dies führt zu einer im Schnitt um 15 Prozent reduzierten Fehlerquote gegenüber Einzelprogrammierern, da ein neutraler Beobachter meist sofort auf Fehler aufmerksam wird, die dem aktiven Programmierer im Workflow entgehen könnten. Durch die gegenseitige Kontrolle wird auch die allgemeine Disziplin gesteigert, was zu einem weitaus effektiveren Arbeiten führt. So wird auch der Faktor der Bequemlichkeit weitestgehend ausgeschaltet, da vor allem bei der Fehlerbehebung stets an der korrekten Stelle des Codes gearbeitet wird. Der gesamte Programmcode wird auf diese Weise effizienter gestaltet, was einen besseren Code und durchschnittlich 20 Prozent kleinere Programme hervorbringt. Darüber hinaus können die Teammitglieder sich gegenseitig motivieren und antreiben, was zu deutlich kürzeren Pausen, weniger Unterbrechungen und einem allgemein höheren Arbeitstempo führt.

Jeder Programmierer hat seine Fachgebiete, Stärken und Schwächen. Im Pair Programming ergänzen sich die Partner somit gegenseitig und verhindern weitestgehend, dass ein einzelner Entwickler an einem unvorhergesehenen Problem hängenbleibt. Die permanente gegenseitige Absprache sorgt gleichzeitig für einen laufenden Wissensaustausch. Neben dem Lerneffekt ist somit sichergestellt, dass alle Beteiligten über den gleichen Wissensstand bezüglich der Codebasis verfügen.

Ein Großteil der Programmierer, welche bereits Erfahrung mit der Paarprogrammierung sammeln konnten, gab an, mehr Spaß an der gemeinsamen Arbeit zu haben. Da in größeren Firmen meist auch die Besetzung der Programmierpaare von Zeit zu Zeit geändert wird, kann das Pair Programming im ferneren Sinne sogar als Instrument für effizientes Teambuilding angesehen werden. Interessanterweise hat sich auch gezeigt, dass Programmier-Paare seltener von anderen Kollegen unterbrochen werden, als Entwickler, die allein am Rechner sitzen.

Natürlich ist das Pair Programming keine Wunderlösung für jeden Zweck. Bei besonders kleinen oder einfachen Projekten macht es womöglich keinen Sinn, zu zweit zu arbeiten. Gegenseitige Antipathie bringt Streit hervor und kann die Idee hinter der Paarprogrammierung ins Gegenteil verkehren und das gesamte Team lähmen. Es ist also sehr wichtig, dass die Partner auch auf menschlicher Ebene miteinander auskommen, damit ein professionelles Arbeitsklima gewahrt bleibt. Auch sollten die Teammitglieder sich auf einen gemeinsamen Programmierstil einigen. Treffen hier völlig unterschiedliche Philosophien aufeinander und ist keiner bereit auf den anderen zuzugehen, macht ein paarweises Arbeiten womöglich keinen Sinn.

Abschließend bleibt festzuhalten, dass das Pair Programming zwar eine gewisse Vorbereitung erfordert, da sich neue Partner zunächst aneinander gewöhnen und ihre Vorgehensweise planen müssen – jedoch ein weitaus effektiveres und schnelleres Arbeiten möglich ist, sobald sich das Paar eingespielt hat. Gesteigerte Produktivität, eine geringere Fehlerquote und saubere Codes sind die Früchte gelungener Paarprogrammierung.

Comments are closed.