Bei INNOQ bewerten wir im Rahmen von Architektur-Reviews Software- und Systemarchitekturen unserer Kunden. Diese führen wir sowohl vor Ort, als auch als Remote-Review durch. In diesem Beitrag wollen wir einen Einblick geben, wie ein solches Remote-Review funktioniert und welche Voraussetzungen erfüllt sein müssen. Wie auch bei anderen Projekten machen wir bei Reviews durchweg gute Erfahrungen mit dem Remote-Format.

Remote Reviews
Remote Reviews

Vorteile

Durch die Unabhängigkeit von der Organisation physischer Räume und dem Wegfall von langwierigen Terminplanungen können Reviews spontaner und flexibler gestaltet werden. Wir können Review-Termine in kleinere Zeiteinheiten unterteilen, die sich besser in den normalen Arbeitsalltag integrieren lassen. Besonders Unternehmen mit mehreren Standorten profitieren davon, dass alle Teilnehmenden unter gleichen Bedingungen an den Terminen teilnehmen. Durch die gewonnene Flexibilität und Ortsunabhängigkeit können wir bei Bedarf auch leichter auf die Erfahrung unserer Kolleg*innen zurückgreifen, die nicht direkt am Review teilnehmen. Weiterhin bleiben alle Beteiligten in ihrer gewohnten Arbeitsumgebung und nutzen diese für das Review, um einen authentischeren Einblick in ihre Arbeitsabläufe, Prozesse und Probleme geben zu können.

Voraussetzungen

Bevor wir ein Angebot für ein Review abgeben erfassen wir die Rahmenbedingungen unseres Kunden und können anschließend bewerten welches Review-Format passend ist. Für die Remote-Option müssen ein paar Voraussetzungen erfüllt sein. So ist für die Durchführung eines Remote-Reviews die Verfügbarkeit einer Videokonferenz-Lösung eine Grundvoraussetzung. Da eine solche von den meisten Unternehmen aktiv genutzt wird, stellt dies in der Regel kein Problem dar. Wir passen uns hier den Kunden an und stellen bei Bedarf eine eigene Lösung zur Verfügung. Um eine möglichst gute Verständigung zu gewährleisten benötigen Teilnehmende eine grundlegende Audio-Ausstattung; ein einfaches Headset oder eine Freisprecheinrichtung helfen hier bereits.[1] Wir haben die Erfahrung gemacht, dass es einfacher ist, wenn die Teilnehmenden einzeln aus einem ruhigen Raum teilnehmen, statt sich gemeinsam aus einem Konferenzraum heraus einzuwählen. Hierdurch kommt es zu einem besseren Verständnis und einem direkten Blickkontakt zwischen den Teilnehmenden.

Während eines Reviews nutzen wir unterschiedliche Werkzeuge zur Analyse von Entwicklungs- und Geschäftsprozessen, der Domäne, Schnittstellen, Quelltext und Dokumentation. Dafür benötigen wir Zugriff auf die für das Review erforderlichen Informationen. Hier ist es ideal, wenn wir direkten Zugriff auf die Systeme der Kunden erhalten. Sicherheitskritische Informationen können auch verschlüsselt übertragen und beispielsweise über VPN oder PGP abgesichert werden. Ist es nicht möglich den Code direkt zu teilen muss der Zugriff über Mitarbeiter*innen des Kunden erfolgen. Diese geben über Screen-Sharing Einblick in den Quell-Code und nutzen bei Bedarf Tools zur statischen Code-Analyse.

Ablauf

Ein Remote-Review unterscheidet sich zunächst nicht von einem Vor-Ort-Review. Bei jedem Review steht am Anfang ein Kick-off-Workshop. Hier holen wir alle am Review Beteiligten ab, indem wir das Ziel und den Zweck des Reviews zusammen mit den Auftraggebenden noch einmal klären. So stellen wir sicher, dass alle ein gemeinsames Verständnis vom Gegenstand des Reviews haben. Danach schaffen wir uns ein Bild über das zu untersuchende System und dessen Kontext, wie etwa die Einbettung im Unternehmen, die zu erfüllenden Geschäftsziele sowie die unterstützenden wirtschaftlichen und technischen Prozesse.

Dazu präsentieren die Stakeholder die zuvor genannten Themen per Screen-Sharing in Form von Präsentationen, einer Führung durchs System oder vorhandener Dokumentation. Dies gestaltet sich in der Regel sogar effizienter als bei einem Vor-Ort-Review, da die Mitarbeiter*innen an ihrem Arbeitsplatz sitzen und direkten Zugriff auf die gewohnten Systeme und Informationen haben.

Uns ist es wichtig alle Schlüsselpersonen und ihre Bedürfnisse persönlich kennenzulernen, um das System als Ganzes zu verstehen und bewerten zu können. Darauf aufbauend identifizieren wir gemeinsam mit dem Kunden Architekturtreiber, Qualitätsziele sowie die ersten Pain Points des Systems. Abhängig vom Sachverhalt werden Organisation, Prozesse, Schnittstellen, Infrastruktur und Risiken näher analysiert. Besonders hier bietet sich die Nutzung eines digitalen Whiteboards an, um ad-hoc Sachverhalte visualisieren zu können und so ein gemeinsames Verständnis zu schaffen.

Je nach Umfang des Reviews wird die Analyse in Form von Interviews oder weiteren Review-Terminen mit Stakeholdern fortgesetzt. Dabei gehen wir tiefer ins Detail und erarbeiten Lösungsoptionen. Bei Interviews setzten wir weiterhin auf die vorher schon genutzte Videokonferenzlösung. Hier gehen wir auf die individuelle Situation der Stakeholder ein und identifizieren so zugrundeliegende Probleme und erarbeiten erste Lösungsoptionen. Dafür bieten Interviews einen vertraulichen Rahmen, in dem auch Themen zur Sprache kommen können, die für eine große Runde zu aufwändig oder sensibel sind. Dadurch erleichtert sich die Suche nach Ursachen. Im Fall von Remote-Reviews lassen sich Interviews dabei schneller und unkomplizierter ansetzen. Außerdem ergibt sich durch die höhere zeitliche Flexibilität die Möglichkeit auch alle Personen, die beitragen können, anzuhören.

Bei einem umfassenderen Review bereiten wir kontinuierlich Informationen auf. Wir analysieren diese und machen die neu gewonnen Erkenntnisse für den Kunden transparent. Auf dieser Grundlage können wir das weitere Vorgehen immer wieder neu bewerten und kurzfristig anpassen. So kann aus der Analyse der Bedarf für weitere Interviews oder Workshops hervorgehen. Bei Remote-Reviews stellen wir diese Dokumente digital zur Verfügung, so können Kunden kontinuierlich auf die Ergebnisse zugreifen und sich so einen Überblick über den Fortschritt des Reviews verschaffen.

Am Schluss steht eine Abschlusspräsentation, die wir per Videokonferenz vorstellen. Dabei besprechen wir die Ergebnisse, diskutieren offene Punkte und stimmen das weitere Vorgehen ab. Ergänzend zur Präsentation erstellen wir bei Bedarf einen qualifizierten Bericht.

Fazit

Mit Remote-Reviews können wir bei INNOQ schneller auf dringende Fragestellungen von Kunden bzgl. Softwarearchitekturen und -organisation eingehen und entsprechend beraten. Wenn die Voraussetzungen erfüllt sind, kommt der Kunde so schneller und effizienter zu Ergebnissen.

  1. Die in den meisten Laptops verbauten Mikrofone sind leider ungeeignet und erschweren die Verständigung und damit die Produktivität des Reviews  ↩