Wie macht man Code Reviews?

Menschen sitzen an ihren Laptops

Es ist wie ein Minenfeld. Ehe man sich versieht, knallt es.

Wie macht man Code Reviews? Wie schafft man es, dass Code Reviews ihren primären Zweck erfüllen, ohne dass sich das Team zerfleischt. Ich konnte in mehreren Teams erfahren, wie sensibel das Thema ist.

Im Team werden Code Reviews eingeführt weil man die Qualität erhöhen möchte. Alle im Team fragen sich nun, wie macht man richtige Code Reviews? Nun schauen wir einmal durch die Brille von Martin. Er arbeitet seit drei Jahren als Entwickler und hat einige erfolgreiche Projekte im Kerbholz. Martin schnappt sich eine Aufgabe und will diese sorgfältig und gut erledigen. Er hat sich sogar einige neue Techniken beigebracht und wendet diese zum ersten mal an. Aus seiner Perspektive ist das der beste Code, den er jemals geschrieben hat und klopft sich innerlich auf die Schulter. Martin macht einen Pull-Request.

Auftritt Andreas, er hat mit 15 angefangen zu programmieren und ist bereits über 30 — also ist er der “Alte”. Andreas schaut sich Martins Code an und entdeckt etwas sonderbares. Diese neue Technik widerspricht der Architektur und da Andreas dafür sorgen will, dass die Codebasis konsistent bleibt lehnt er den Pull-Request ab.

Es kommt zu einem Streit

Wir haben das schon immer so gemacht.

Bedeutet: Mach meine schön gepflegte Architektur nicht kaputt

Diese Technik ist aus einem hervorragenden Buch.

Bedeutet: Jemand der ein Buch geschrieben hat, ist garantiert besser als du!

Dieser Code macht keinen Sinn.

Bedeutet: Ich verstehe deinen Code nicht und will es auch nicht verstehen

Wir müssen uns weiter entwickeln

Bedeutet: Du bist zu alt und hängst an der Vergangenheit fest

Einige Regeln können helfen, damit Konflikte gar nicht erst entstehen. Wir legen Regeln fest, wie man Code Reviews gesittet macht.

Wie macht man code reviews? Qualität = WTF/Min
  • Die innere Einstellung ändern. Codereviews sind Feedbacks und helfen einen dabei, sich weiter zu entwickeln. Es ist eine Win-Win Situation, wenn man sie so betrachtet. Gehe in das Review mit der Einstellung, dass der Andere sich Zeit für dich nimmt. Es ist ein Geschenk wofür man dankbar sein muss. Nehme an, dass der Andere nur das Beste im Sinn hat.
  • Es sollte nicht länger als 60 Minuten dauern. Es ist anstrengend und ein zu langer Review führt zum Konzentrationsverlust. Gestatte dir eine Pause, damit du mit erholten Augen weiter machen kannst. Es ist besser, öfter Reviews zu machen die kurz und knackig sind.
  • Maximal 400 Zeilen prüfen. Aus dem selben Grund, warum man sich ein Zeitlimit setzt. Es stellt sicher, dass du deine Aufmerksamkeit nicht verlierst.
  • Gebe konstruktives Feedback. Versuche, in deinem Feedback konstruktiv zu sein und nicht kritisch. Du kannst dies tun, indem du Fragen stellst, anstatt Erklärungen abzugeben. Und denke daran, neben deinem konstruktiven Feedback auch Lob auszusprechen.
  • Kommuniziere die Erwartungen im Voraus. Durch die Kommunikation von Zielen und Erwartungen spart jeder Zeit. Reviewer wissen, wonach sie suchen müssen — und sie können ihre Zeit im Code Review Prozess sinnvoll nutzen.
  • Das Feedback soll zur Diskussion anregen: Es ist keine Diktatur. Man kann sich die meisten Feedbacks zum Codereview als Vorschlag und nicht als Befehl vorstellen. Es ist in Ordnung, mit dem Feedback eines Prüfers nicht einverstanden zu sein. Aber du musst erklären, warum du es so umgesetzt hast.

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.