Teilweise hängt es davon ab, wie Sie die Paarprogrammierung durchführen. In einigen Fällen schreibt der Treiber des Paares Code, während das zweite Mitglied des Paares die Entwurfs- und Implementierungsdetails des Systems beobachtet und diskutiert. Eine weitere Instanz der Paarprogrammierung besteht darin, dass beide Personen gleichzeitig Code schreiben. Eine Person schreibt die implementierte Funktionalität und die andere entwickelt und schreibt aktiv Testcode auf der Einheits- und Integrationsebene. Dabei werden wiederum die Entwurfs- und Implementierungsdetails des Systems erörtert.
Unabhängig von der Art der Paarprogrammierung dient es effektiv als kontinuierliche Codeüberprüfung . Der Code wird von zwei Personen überwacht, die auf Fehler achten, bevor sie in eine spätere System- / Abnahmetestumgebung oder in das Feld gelangen. Sie haben auch zwei Personen, die einen bestimmten Teil des Systems sehr gut verstehen, um als Redundanz zur Minimierung Ihres Busfaktors zu dienen . Sowohl das frühzeitige Erkennen von Fehlern als auch die Verbreitung von Systemwissen im Team reduzieren die Kosten für den Aufbau eines Systems.
Die Wissensverbreitung beschränkt sich nicht nur auf das Fachwissen des Teams. Je nachdem, um wen es sich bei dem Paar handelt, können Informationen zwischen einem älteren Mitglied des Unternehmens und einem neuen Mitglied über andere Dinge, die über das Projekt hinausgehen, übertragen werden - Codierungsstil, Unternehmenskultur, Erwartungen usw. Es kann auch jemandem, der mit einer Technologie oder einem Tool besser vertraut ist, ermöglichen, sein Wissen über diese Technologie oder dieses Tool in einer realitätsnahen Umgebung zu teilen.
Wie Sie bereits erwähnt haben, hilft dies auch dabei, die Entwickler fokussiert und im Fluss zu halten . Zusätzlich zum Fluss unterbrechen viele Personen mit geringerer Wahrscheinlichkeit mehrere Personen, die an etwas arbeiten, als eine einzelne Person, die an etwas arbeitet. Wenn Sie an einem Schreibtisch vorbeigehen und dieser alleine arbeitet, Sie aber mit ihm sprechen müssen, können Sie anklopfen und mit ihm sprechen. Dies ist weniger wahrscheinlich, wenn Sie zwei oder mehr Personen sehen, die zusammenarbeiten oder eine Diskussion führen - Sie werden sie nicht unterbrechen. Unterbrechungen kosten Zeit und mehr Zeit bedeutet höhere Kosten. Es ist im besten Interesse des Unternehmens, die Produktivität der Mitarbeiter zu maximieren.
Es gibt jedoch einige Herausforderungen, die überwunden werden müssen, um die Paarbildung durchführbar zu machen. Betrachten Sie Dinge wie Persönlichkeitskollisionen oder die Auswahl der Paare, um das Wissen richtig zu verteilen. Es gibt auch Überlegungen, wann Paare genau gedreht werden müssen. Zufällig vorgenommene Pair-Programmierung wird wahrscheinlich nicht effektiv sein, da dies geplant ist. Abhängig von der Zusammensetzung Ihres Teams ist es möglicherweise nicht effektiv, Personen zu verbinden.