banner

Sie sind hier

Asynchronous Pair Programming

Track: 
Main Track (Agile Reengineering)

Eine zentrale Qualitätssicherungstechnik der agilen Entwicklung ist Pair Programming. Dabei arbeiten zwei Entwickler gemeinsam an einem Rechner. Pair Programming ist eine Form von kontinuierlichem Code-Review: Während der eine tippt, inspiziert der Tandempartner den Code und kann sofort auf Probleme oder Schwächen hinweisen. Dadurch werden viele Fehler vermieden und der Code wird einfacher und leichter verständlich. Warum machen dann viele Teams kein Pair Programming?

Oft sind Entwickler, die als Tandempartner in Frage kommen, nicht im gleichen Raum oder arbeiten zu unterschiedlichen Zeiten. Oder empfinden den doppelten Personalaufwand für viele Entwicklungsaufgaben als übertrieben. Oder kommen einfach besser zurecht, wenn jeder seine eigene Tastatur hat. Das sind nachvollziehbare Gründe, kein Pair Programming zu machen – aber keine guten Gründe, auf die Vorteile von kontinuierlichem Code-Review zu verzichten.

In diesem Vortrag stelle ich einen leichtgewichtigen Ansatz für kontinuierliche Code-Reviews vor, bei dem Programmierung und Review voneinander entkoppelt sind. Programmierer und Reviewer können dadurch selbst bestimmen, wann, wo und wie schnell sie arbeiten. Jeder Entwickler im Team ist, für unterschiedliche Änderungen, sowohl als Programmierer, als auch als Reviewer tätig und lernt so aus beiden Perspektiven. Dadurch schaffen kontinuierliche Code-Reviews die Basis für effektive Kommunikation technischer Themen im Team.

Bei der Entwicklung des Open-Source Programmanalysewerkzeugs ConQAT setzen wir diese Reviews seit 6 Jahren zur Qualitätssicherung aller Code-Änderungen ein. Freiwillig. Wir sind überzeugt, dass sie der Hauptgrund für die Wartbarkeit und Flexibilität von ConQAT sind. Ich stelle unsere frei verfügbaren Review- Werkzeuge vor und diskutiere die Erfahrungen, die wir in 6 Jahren kontinuierlichem Code-Review gesammelt haben.

Referenten: 
Firma: 
cqse
Biografie: 

Elmar Jürgens promovierte an der Technischen Universität München über Erkennung, Auswirkungen und Umgang mit Klonen und erhielt dafür 2011 den Software-Engineering-Preis der Ernst Denert-Stiftung. Als Mitgründer der CQSE GmbH unterstützt er Unternehmen bei der Analyse und Verbesserung der Qualität ihrer Softwaresysteme. Neben seiner Tätigkeit als Berater entwickelt er aktiv am Open-Source-Programmanalysewerkzeug ConQAT mit.