Praxis: Arten von Reviews

In der agilen Softwareentwicklung gibt es unterschiedliche Arten von Reviews. Doch nicht alle verfolgen die gleichen Ziele oder richten sich an die gleiche Zielgruppe. Je nach Kontext – ob auf Team-Ebene oder team-übergreifend – unterscheiden sich die verschiedenen Review-Formate in ihrer Durchführung, ihren Zielen und den beteiligten Stakeholdern.

In diesem Blog Post betrachten wir 4 wichtige Review-Arten genauer:

  • Das Code-Review,
  • das Sprint Review, sowie
  • das Scaled Review und die System Demo.

Code-Review: Qualitätssicherung auf Code-Ebene

Was ist ein Code-Review?

Ein Code-Review ist ein Peer-Review, bei dem ein Entwickler den Code eines anderen Entwicklers überprüft. Dieser Prozess kann formal oder informell, synchron oder asynchron stattfinden und ist ein zentraler Bestandteil moderner Softwareentwicklungspraktiken.

Ziele des Code-Reviews

  • Frühe Fehleridentifikation: Probleme im Code werden entdeckt, bevor sie in die Produktion gelangen
  • Qualitätssicherung: Sicherstellung, dass der Code den im Team und/oder Team-Übergreifend vereinbarten Standards entspricht
  • Wissensaustausch: Verteilung von Wissen über die Codebasis und Best Practices im Team
  • Kostenersparnis: Reduzierung der Kosten durch frühzeitige Fehlererkennung
  • Effizientere Entwicklung: Reduzierung technischer Schulden und Verbesserung der Code-Struktur

Zielgruppe

Die Zielgruppe für Code-Reviews sind die Dev-Teams bzw. Entwicklerteams selbst. 

Sprint Review: Feedback zum Produktfortschritt

Was ist ein Sprint Review?

Das Sprint Review ist ein klassisches Scrum-Event am Ende jedes Sprints. Hier präsentiert das Team seinen End-Anwendern und Stakeholdern das im Sprint Erreichte und sammelt Feedback.

Ziele des Sprint Reviews

  • Transparenz schaffen: Offenlegung des konkret nutzbar Erreichten
  • Ausrichtung an der Produktvision: Sicherstellung, dass das Entwickelte mit den Geschäftszielen übereinstimmt
  • Feedback einholen: Sammeln von Feedback der End-Anwender für neue und bestehende Product-Backlog-Items (Priorisierung und Art der Umsetzung)
  • Kontinuierliche Verbesserung: Identifikation von Anpassungsbedarf aktueller Überlegungen und Vorgehensweisen (bspw. Usability)
  • Zusammenarbeit fördern: Stärkung der Beziehung, insbes. des Vertrauens, zwischen Team, End-Anwendern und Stakeholdern

Zielgruppe

Das Sprint Review richtet sich an das Scrum Team (Dev-/Entwicklungsteam, Scrum Master, Product Owner) sowie an für das Team relevante End-Anwender und Stakeholder (Auftraggeber, Product Manager, Chief Product Owner, Management, …)

Scaled Review/System Demo: Koordination in Multi-Team-Umgebungen

Was ist ein Scaled Review?

In skalierten Scrum-Umgebungen, in denen

  • mehrere Teams an einem gemeinsamen Produkt arbeiten oder
  • mehrere Teams mit eigenen Produkten im Rahmen einer gemeinsamen Strategie arbeiten,

wird oft ein spezieller Review-Prozess genutzt, um Arbeit mehrerer Teams zu verbinden/”alignen”. Frameworks wie Scrum@Scale, LeSS (Large-Scale Scrum) und Nexus bieten hierzu jeweils eigene Ansätze:

  • Scrum@Scale: Scaled Review
  • SAFe: System Demo
  • LeSS: Sprint Review (=> Ergebnis der Arbeit mehrerer Teams)

Ziele des Scaled Reviews

  • Gemeinsamer Fortschritt: Das Zusammenspiel der Ergebnisse der Teams (in SAFe: ART) wird sichtbar und Feedback zu Anpassungsbedarfen möglich
  • Identifikation von Abhängigkeiten: Erkennen und Managen von Schnittstellen zwischen Teams
  • Vereinheitlichung der Produktvision: Sicherstellung, dass alle Teams auf dasselbe Ziel hinarbeiten
  • Vermeidung von Redundanzen: Minimierung von doppelter Arbeit und widersprüchlichen Lösungen

Zielgruppe

Die Zielgruppe variiert je nach Framework:

  • In Scrum@Scale: Das Product Owner Team unter Führung des Chief Product Owner
  • In Nexus: Ausgewählte Vertreter aller Teams und relevante Stakeholder
  • In LeSS: Alle Teams, die am Produkt arbeiten, und relevante Stakeholder

Unterschiede und Gemeinsamkeiten der Review-Arten

Review-TypFokusEbeneHauptzielHäufigkeit
Code-ReviewCode-QualitätTeam / TechnischBessere Code-QualitätKontinuierlich
Sprint ReviewFunktionalitätTeam / ProduktEnd-Anwender-FeedbackEnde jedes Sprints
Scaled Review /
System Demo
ZusammenspielMulti-Team / ProduktÜberprüfung des integrierten InkrementsEnde jedes Sprints
oder jeder Iteration

Was ist es?

Je nachdem was im Review gemacht wird, ist erkennbar um welche Art von Review es sich handelt:

0 1 >1
<=10% (=versehentlich) >10% (=absichtlich)
<1 1 >1

Fazit

Reviews sind ein unverzichtbarer Bestandteil agiler Entwicklungsprozesse – vom Code-Review bis hin zum umfassenden Scaled Review in skalierten Umgebungen. Jeder Review-Typ hat seine spezifischen Ziele und Zielgruppen und trägt auf seine Weise zur kontinuierlichen Verbesserung bei.

Die Kunst besteht darin, die richtige Balance zu finden:
Ziel und Zielgruppe der Reviews sollten klar sein, um ihren Zweck zu erfüllen. Ein gut implementierter Review-Prozess – auf jeder Ebene – fördert nicht nur die Qualität, sondern auch das gemeinsame Lernen und die Zusammenarbeit im Team.

Welche Review-Praktiken habt ihr etabliert? Welche Erfahrungen habt ihr mit Reviews, besonders in skalierten Umgebungen, gemacht?