Requirements-Workshops in verteilten Softwareprojekten

Gastbeitrag von | 13.02.2023

Die Pandemie hat unsere Arbeitslandschaft für immer verändert; die Arbeit in hybriden Teams ist die Regel und Co-Location die Ausnahme. In einer Umfrage von Fach- und Führungskräften in der Softwareindustrie haben wir nach Herausforderungen in verteilten Softwareprojekten gefragt. Während der Entwicklungsprozess durch etablierte Tools und Methoden nahezu unverändert funktioniert, entstehen zusätzliche Herausforderungen im Requirements Engineering.

In diesem Blogbeitrag erläutere und bewerte ich die Handlungsfelder für erfolgreiche Softwareprojekte in einer verteilten Umgebung. Im Anschluss stelle ich den Bezug zum Requirements Engineering her und zeige Ihnen, wie Sie einen angemessenen Verteilungsgrad für die Kernaktivität der Anforderungserhebung in verteilten Softwareprojekten identifizieren können.

Drei Handlungsfelder für erfolgreiche verteilte Softwareprojekte

Um verteilte Softwareprojekte erfolgreich zu gestalten, müssen Sie in den drei Handlungsfeldern Prozesse, Technologie und Kultur agieren.

Prozesse

Klar definierte Prozesse helfen Ihnen, die Grenzen der Verteilung zu überwinden. Dabei ist es egal, ob einzelne Rollen verteilt sind, Sie in verteilten Teams oder vollständig verteilt arbeiten. Die Transparenz über den Fortschritt in der Bearbeitung von Aufgaben hilft Ihnen, dass alle den Fortschritt stets im Blick behalten können. Dadurch werden unproduktive Warte- und Liegezeiten minimiert, Durchlaufzeiten sinken. Wenn Sie bereits agil arbeiten, sind Sie klar im Vorteil. Kleingeschnittene und klar abgegrenzte Aufgaben mit eindeutigen Zuständigkeiten je Phase im Softwareprozesses sind der Motor für einen reibungslosen Ablauf Ihrer Projekte.

Prozesse sind nach meiner Einschätzung weniger kritisch für den Erfolg verteilter Softwareprojekte als die eingesetzte Technologie und die Kultur.

Technologie

Standardisierte Tools und eine einheitliche Infrastruktur bilden die Grundlage für reibungslose Prozesse. Das dritte Chat-Programm und das fünfte Video-Konferenz-System sind mehr als lästig und führen zu Unproduktivität und Defokussierung. Es muss eine digitale Teamsphäre geschaffen werden, d. h. das Team muss einen „Raum“ besitzen, in dem es sich bewegen kann und in der alle Informationen an einem Ort verfügbar sind. Die Teamsphäre muss auch für den persönlichen Austausch und die soziale Interaktion ausgelegt sein, die sonst in der Kaffeeküche stattfindet. Optimieren Sie Ihr Onboarding für neue Teammitglieder und legen Sie Wert auf Schulungen. Außerdem sollten Sie kontinuierlich hinterfragen, ob die verwendeten Technologien optimal zum Einsatzzweck passen. Beispielsweise ein digitales Whiteboard Ihrer Kollaborationsinfrastruktur zu nutzen, das nur rudimentäre Funktionen bietet, anstatt einen spezialisierten Anbieter zu verwenden, mag einfacher sein, wird aber zu schlechteren Ergebnissen und geringer Akzeptanz führen.

Technologie ist der Enabler für die Verteilung. Ihre Herausforderungen liegen in der Auswahl optimaler Tools, dem Standardisieren und der Schulung Ihrer Mitarbeiter. Also bleibt die Kultur als Hauptherausforderung für erfolgreiche verteilte Softwareprojekte.

Kultur

Bedürfnisse von Menschen zu erkennen und zu verstehen, gelingt in verteilten Teams deutlich schlechter. Das Wahrnehmen der Mimik, Gestik und der Stimmung von Teammitgliedern beschränkt sich auf Meetings. Ich sehe nicht, mit welcher Körpersprache die Kollegin ins Büro kommt, ich sehe nicht, wie der Kollege am Schreibtisch sitzt und nehme auch nicht wahr, wie guten Morgen gesagt wird. Es ist also viel schwieriger, den Menschen zu greifen und zu verstehen, um auf ihn eingehen zu können. Um diese Eindrücke einzusammeln, ist eine Menge zusätzlicher Zeit für Kommunikation und Interaktion notwendig. Diese Zeit muss geschaffen werden bzw. vorhanden sein, damit der soziale Klebstoff im Team nicht spröde wird und schlussendlich bricht.

Mithilfe einvernehmlich vereinbarter Regeln im Team gelingt es, eine „Ein-Team-Kultur“ zu erschaffen, und so den vielschichtigen Fragestellungen im Handlungsfeld Kultur zu begegnen.

Herausforderungen im verteilten Requirements Engineering

Requirements Engineering besteht aus den vier Kernaktivitäten: Ermittlung, Dokumentation, Prüfung und Abstimmung sowie Verwaltung von Anforderungen. Die Anforderungserhebung ist der Prozess, bei dem die für das jeweilige Projekt erforderlichen Anforderungen von verschiedenen Interessengruppen gesammelt werden, um ein gemeinsames Verständnis über das umzusetzende System zu erlangen. Es ist somit die wichtigste Kernaktivität, da sie die Grundlage für alle folgenden Aktivitäten und den restlichen Softwareprozess ist.

In der Praxis ist die wohl häufigste Form der Anforderungsermittlung der Workshop. Dieser eignet sich besonders gut, um in interdisziplinär besetzten Stakeholder-Gruppen ein gemeinsames Verständnis herzustellen. Das Herstellen des gemeinsamen Verständnisses ist essenziell, weil unterschiedliche Hintergründe, Erfahrungen und Ziele der Stakeholder zu individuellen mentalen Modellen führen, die das gemeinsame Verständnis beeinträchtigen: Missverständnisse sind vorprogrammiert. Allerdings ist der Aufwand für Vorbereitung, Durchführung und Nachbereitung von Workshops nicht gering, sodass Workshops häufig für komplexe Fragestellungen durchgeführt werden und mehrere Stunden bzw. Tage dauern. Wenn Workshops verteilt durchgeführt werden, steigt die Gefahr von Missverständnissen.

Gefahr von Missverständnissen in Remote-Workshops

In der Verteilung ist das Herstellen des gemeinsamen Verständnisses noch schwieriger als in der Präsenz, weil die Aufmerksamkeitsspanne der Stakeholder sinkt und das Ablenkungspotenzial steigt.

Wie Sie den Herausforderungen von verteiltem Requirements Engineering mit Workshops begegnen können

Einige Grundlagen für das Durchführen verteilter Workshops werden Ihnen bekannt sein und sind mittlerweile der Standard: Alle haben die Kamera an, Sie machen regelmäßig Pausen und aktivieren Ihre Teilnehmer.

Ein großer Vorteil von verteilten Workshops ist es, dass Sie (Mehr-)Tages-Workshops einfacher auf mehrere Sessions an verschiedenen Tagen aufteilen können. Außerdem können Sie bestimmte Stakeholder selektiv zu Workshopthemen einladen, anstatt sie tageweise teilnehmen zu lassen.

Zusätzlich habe ich in den letzten Jahren Erfahrungen gesammelt, die vielleicht weniger offensichtlich sind.

Fokussierung und strukturiertes Vorgehen

Um einer sinkenden Aufmerksamkeitsspanne entgegenzuwirken, ist es hilfreich, einer guten Struktur zu folgen und Themen fokussiert zu bearbeiten. Das Vehikel hierzu ist eine angemessene Vorbereitung und eine konsequente Moderation des Workshops.

Wir organisieren Workshops gerne mit einem Kanban-Bord. Jedes Thema kommt auf eine Karte und steht zu Beginn in der Spalte To-do. Durch ein Work-in-Progress-Limit von eins gelingt die Fokussierung. Das sequenzielle Abarbeiten der Themen mithilfe des Kanban-Bords schafft die nötige Transparenz über den Fortschritt.

Je nach Gruppengröße sollten Sie darüber nachdenken mit mehreren Moderatoren zu agieren. Eine Person konzentriert sich auf die Gruppe und deren Zusammenarbeit. Die andere Person steuert die Richtung und das Abstraktionsniveau in der Diskussion durch Impulse und kritische Fragen.

Auswahl eines angemessenen Verteilungsgrades

Verteilung ist nicht gleich Verteilung. In Workshops macht es einen Unterschied, ob einzelne Rollen remote sind, Sie in verteilten Teams arbeiten oder alle Teilnehmer remote sind. Welche Verteilungsform angemessen ist, sollten Sie aufgrund der Komplexität des Problems und der gelebten Remote-Kultur im Unternehmen entscheiden. Natürlich besitzen die technischen Möglichkeiten auch einen Einfluss, sind jedoch als Enabler zu sehen und den Verteilungsformen gegenüber agnostisch.

Angemessener Verteilungsgrad in Remote-Workshops

Je geringer die Komplexität einer Fragestellung ist, desto besser können Requirements-Workshops remote durchgeführt werden. Sofern die Teilnehmer es gewohnt sind, remote zu kollaborieren und die notwendigen Tools beherrschen, kann auch eine vollständige Verteilung passend für die Lösung der Fragestellung sein. Je komplexer die Fragestellung ist, desto mehr werden Sie von Co-Location profitieren. Sofern Ihre Remote-Kultur so ausgeprägt ist und Ihre Workshop-Teilnehmer sehr diszipliniert sind, dass Sie dieselben Ergebnisse erzielen wie in der Präsenz, können Sie komplexe Fragestellungen auch remote lösen. Nach meiner Erfahrung geht dies allerdings nur bis zu einem gewissen Grad, denn kontroverse Diskussionen funktionieren besser mit direkter Interaktion und persönlicher Kommunikation. Und auch ein Stift an einem Whiteboard ist intuitiver und schneller als das Nutzen eines entsprechenden Tools. Manchmal scheitert es dann eben doch an der Technologie.

Fazit

Remote ist gekommen, um zu bleiben und wird zum Glück aus unserem Alltag nicht mehr verschwinden. Der Softwareprozess läuft in weiteren Teilen reibungslos weiter, allerdings bleibt das Requirements Engineering in verteilten Softwareprojekten die kritische Phase. Durch Verteilung steigen die Herausforderungen und machen eine kritische Auseinandersetzung mit dem Kontext in den Dimensionen Prozesse, Technologie und Kultur notwendig, um den angemessenen Verteilungsgrad für das Lösen konkreter Fragestellungen bestmöglich zu unterstützen.

 

Hinweise:

Falls Sie mehr zum Thema „Erfolgreiche Softwareprojekte mit verteilten Teams“ erfahren möchten, können Sie sich gerne das kostenlose eBook für effiziente, produktive und kundenzentrierte Softwareprojekte im Zeitalter hybrider Zusammenarbeit herunterladen.

eBook Gezähmte Agilität
Wenn Ihnen der Beitrag gefällt oder Sie darüber diskutieren wollen, teilen Sie ihn gerne in Ihrem Netzwerk. Und falls Sie sich für weitere Tipps aus der Praxis interessieren, dann testen Sie gerne unseren wöchentlichen Newsletter mit neuen Beiträgen, Downloads, Empfehlungen und aktuellem Wissen. Vielleicht wird er auch Ihr Lieblings-Newsletter!
Dr. Simon Grapenthin
Dr. Simon Grapenthin

Dr. Simon Grapenthin ist Autor, Keynote Speaker und Management Consultant. Er promovierte an einem Lehrstuhl für Software Engineering der Universität Duisburg-Essen zum Erfolg von IT-Projekten. Aus der Promotion gründete er 2014 die Interaction Room GmbH, ein auf verteiltes Software Engineering spezialisiertes Dienstleistungsunternehmen. Er selbst berät, coacht und begleitet Fach- und Führungskräfte in Veränderungsprozessen und legt im Rahmen seiner Beratungsleistung, von Vorträgen und Veröffentlichungen den Fokus auf den professionellen Transfer wissenschaftlicher Erkenntnisse in die Praxis.