40
code-quality.de @FrankS Effektive Code Reviews

"Effektive Code Reviews" - Abendvortrag bei oose.de

Embed Size (px)

Citation preview

code-quality.de @FrankS

Effektive Code Reviews

Moin moin!

Frank SonsFrank Sons FrankS FrankS

http://code-quality.dehttp://code-quality.de

code-quality.de @FrankS

Agenda – Code Reviews

Teil 1: Methoden, Ziele und ProblemeTeil 1: Methoden, Ziele und Probleme

Teil 2: Rollen, Guidelines und ProzesseTeil 2: Rollen, Guidelines und Prozesse

code-quality.de @FrankS

Wichtig!

Stellt Fragen!Stellt Fragen!

Teilt eure Erfahrungen!Teilt eure Erfahrungen!

code-quality.de @FrankS

Teil 1: Methoden, Ziele und Probleme

Welche Methoden gibt es?Welche Methoden gibt es?

Was sind die Ziele?Was sind die Ziele?

Wo gibt es Probleme?Wo gibt es Probleme?

code-quality.de @FrankS

Wie macht ihr eure Code Reviews?

code-quality.de @FrankS

Ad hoc

code-quality.de @FrankS

Pair Programming

code-quality.de @FrankS

Review Tools - asynchron

code-quality.de @FrankS

Review Meeting

code-quality.de @FrankS

Team Review

code-quality.de @FrankS

Teil 1: Methoden, Ziele und Probleme

Welche Methoden gibt es?Welche Methoden gibt es?

Was sind die Ziele?Was sind die Ziele?

Wo gibt es Probleme?Wo gibt es Probleme?

code-quality.de @FrankS

Warum macht ihr eigentlich Code Reviews?

code-quality.de @FrankS

Motivation von Code Reviews

code-quality.de @FrankS

Was bringt es wirklich?

code-quality.de @FrankS

Teil 1: Methoden, Ziele und Probleme

Welche Methoden gibt es?Welche Methoden gibt es?

Was sind die Ziele?Was sind die Ziele?

Wo gibt es Probleme?Wo gibt es Probleme?

code-quality.de @FrankS

Kommt euch das bekannt vor?

Keine Struktur, keine ZieleKeine Struktur, keine Ziele

Klappt schon irgendwieKlappt schon irgendwie

Jeder für sich Glückssache!Jeder für sich Glückssache!

code-quality.de @FrankS

Was kann man machen?

Tatsächliche Ziele klar machenTatsächliche Ziele klar machen

Reviews im Prozess etablierenReviews im Prozess etablieren

Gemeinsames Qualitätsverständnis aufbauenGemeinsames Qualitätsverständnis aufbauen

code-quality.de @FrankS

Pause?

Oder Fragen?Oder Fragen?

code-quality.de @FrankS

Agenda – Code Reviews

Teil 1: Methoden, Ziele und ProblemeTeil 1: Methoden, Ziele und Probleme

Teil 2: Rollen, Guidelines und ProzesseTeil 2: Rollen, Guidelines und Prozesse

code-quality.de @FrankS

Fokus

Meetings und ToolsMeetings und Tools

code-quality.de @FrankS

Wie laufen eure Code Reviews ab?

code-quality.de @FrankS

Teil 2: Rollen, Guidelines und Prozesse

Welche Rollen gibt es?Welche Rollen gibt es?

Wonach schaut man eigentlich?Wonach schaut man eigentlich?

Wie bindet man es in die Prozesse ein?Wie bindet man es in die Prozesse ein?

code-quality.de @FrankS

Rollen im Review Meeting

AutorAutor

ReaderReader

ModeratorModerator

(Recorder)(Recorder)

code-quality.de @FrankS

Teil 2: Rollen, Guidelines und Prozesse

Welche Rollen gibt es?Welche Rollen gibt es?

Wonach schaut man eigentlich?Wonach schaut man eigentlich?

Wie bindet man es in die Prozesse ein?Wie bindet man es in die Prozesse ein?

code-quality.de @FrankS

Moderation ist wichtig!

Auf Annahmen achtenAuf Annahmen achten

Statt Schweigen: laut denken!Statt Schweigen: laut denken!

Diskussionen eingrenzenDiskussionen eingrenzen

code-quality.de @FrankS

Teil 2: Rollen, Guidelines und Prozesse

Welche Rollen gibt es?Welche Rollen gibt es?

Wonach schaut man eigentlich?Wonach schaut man eigentlich?

Und das läuft dann von alleine?Und das läuft dann von alleine?

code-quality.de @FrankS

Mit dem Meeting loslegen

Code gemeinsam aussuchenCode gemeinsam aussuchen

Regeln klar machenRegeln klar machen

Rollen verteilen Rollen verteilen

code-quality.de @FrankS

Auf den Fokus achten

Code MetrikenCode Metriken

Code VerständnisCode Verständnis

code-quality.de @FrankS

Muss man den Code verstehen?

code-quality.de @FrankS

Lesbarkeit und Verständlichkeit

Nur wer den Code versteht,kann auch die Probleme finden!

Nur wer den Code versteht,kann auch die Probleme finden!

code-quality.de @FrankS

Ein kleiner, aber feiner Unterschied

Coding Style GuideCoding Style Guide

Coding GuidelineCoding Guideline

code-quality.de @FrankS

Was würde in euren Guidelines stehen?

code-quality.de @FrankS

Guidelines können als Checkliste dienen!

code-quality.de @FrankS

Prozesse: oder das drumherum...

Welche Rollen gibt es?Welche Rollen gibt es?

Wonach schaut man eigentlich?Wonach schaut man eigentlich?

Und das läuft dann von alleine?Und das läuft dann von alleine?

code-quality.de @FrankS

Achtung!

Prozesse bedeutet immer: YMMV!Prozesse bedeutet immer: YMMV!

code-quality.de @FrankS

Code Review Meetings im Prozess

Im letzten Drittel vom SprintIm letzten Drittel vom Sprint

90 - 120min90 - 120min

Immer wieder anpassenImmer wieder anpassen

code-quality.de @FrankS

Code Review Tools im Prozess

Extra Status für TasksExtra Status für Tasks

Automatische Systeme helfenAutomatische Systeme helfen

Guideline dient als ChecklisteGuideline dient als Checkliste

code-quality.de @FrankS

Macht mehr aus euren Reviews

„Peer code reviews are the single biggestthing you can do to improve your code.“„Peer code reviews are the single biggestthing you can do to improve your code.“

Jeff Atwood – coding horror

code-quality.de @FrankS

Eure Fragen?