Das Wissentransfer-Meeting
In unserem Scrum-Prozess nutzten wir lange ein Wissentransfer-Meeting, um das Wissen der Einzelnen besser im Team zu verteilen. Bei der Arbeit an einem sehr großen Projekt, welches bereits seit mehreren Jahren entwickelt wird, sammelt sich immer wieder Wissen bei bestimmten Personen. Um dieses Wissen auch an die anderen Team-Mitglieder zu verteilen, wurden in der Vergangenheit alle zwei Wochen ein bis zwei Themen von unterschiedlichen Mitgliedern vorgestellt.
Vom Wissenstransfer zur Codereview
Vor einigen Monaten starteten wir ein neues Projekt. Die Entwicklung begann also komplett von vorn. Während dieser Arbeit fiel es uns immer schwerer, neue Themen für das Wissenstransfermeeting zu finden.
Zu Beginn des neuen Projekts entstand relativ schnell viel neuer Code. Die Architektur war oftmals noch nicht genau durchdacht und auch einige Implementierungen waren sicherlich nicht perfekt. Vielen im Team fielen diese Probleme auf, doch einen richtigen Rahmen, um diese im Team zu diskutieren, gab es anfangs nicht.
Wir beschlossen daher, aus unserem Wissenstransfer-Meeting ein Codereview-Meeting zu machen. Dieses Meeting ist 45 Minuten lang und findet inzwischen wöchentlich statt.
Diskutiert werden zum einen Details zur Architektur und Implementierung, aber auch Projektsetup und Konfiguration. Die Themen werden zwischen den Meetings auf einer Seite in unserem internen Wiki gesammelt.
Durch die Kollaboration können sehr schnell Entscheidungen getroffen werden, die das ganze Team mit einbeziehen. Die Umsetzung der Punkte geht meist sehr schnell vonstatten, sodass sie problemlos während der Umsetzung der nächsten User-Storys angegangen werden können.
Fazit
Wichtig für die Codereview ist, dass sich alle Mitglieder einbringen und nicht die Kritik an der Arbeit des anderen im Mittelpunkt steht. Wir wollen das Projekt gemeinsam voranbringen.
Insgesamt trägt die Codereview inzwischen dazu bei, dass keine technischen Schulden im Projekt entstehen und dass die Codebasis leicht erweiterbar bleibt. Zudem können die einzelnen Team-Mitglieder immer wieder von den anderen lernen.