Best Practices für verteilte agile Teams
Hinweis: Dieser Blog-Beitrag basiert auf einem kürzlich durchgeführten OutSystems Webinar, in dem Best Practices für verteilte agile Teams diskutiert wurden. Ich habe die Session zusammen mit meinen Kollegen Trevor Hosch, Cari Mackay und Goncalo Santos durchgeführt. Die Beiträge bilden die Grundlage für diesen Artikel.
Die Corona-Pandemie hat uns vor Augen geführt, wie agil wir wirklich sind.
Viele von uns, die in agilen Teams arbeiten, haben das Jahr 2019 mit einem guten Gefühl bezüglich unserer Fortschritte in Sachen Agilität beendet. Wir verfügen über ein tiefgreifendes Verständnis der Agile-Prinzipien und haben sie für uns angepasst, um die Leistung unserer Teams zu maximieren. Doch Anfang 2020 hat die Corona-Pandemie unsere Welt auf den Kopf gestellt.
Wir alle wissen, dass Co-Location ein zentraler Punkt des Agile Manifesto ist. Auch bei kreativen Tätigkeiten wie der Entwicklung digitaler Produkte und der Erstellung von Software-Applikationen ist die Arbeit an einem Ort eine allgemein anerkannte Best Practice.
Für einige agile Teams steht Agilität in direkter Abhängigkeit von einem gemeinsamen Arbeitsort. Für agile Teams, die an die entsprechenden Vorteile gewöhnt sind, ist die Anpassung an die physische Isolation des Home Office eine besondere Herausforderung.
So funktioniert die Arbeit mit verteilten agilen Teams
Achten Sie in der Zeit des Wandels besonders auf die Zufriedenheit des Teams, gute Zusammenarbeit, Produktivität und natürlich auf die Zufriedenheit der Kunden. Achten Sie genau auf Veränderungen in den Einstellungen und der Agilität Ihres Teams, die sich auf Ihre Gesamtleistung auswirken können.
Ganz gleich, ob Sie bereits Erfahrung mit Remote-Arbeit haben oder nicht – mit den folgenden Best Practices für verteilte agile Teams können Sie Ihre Leistung und Produktivität verbessern.
Teamarbeit und Kollaboration
Wenn Sie bestimmen, wie Sie Ihr agiles Team am besten bei der Remote-Arbeit unterstützen können, sollten Sie sich zunächst fragen, wie die Kommunikation und Zusammenarbeit aussehen wird.
Ein wichtiger erster Schritt besteht darin, sicherzustellen, dass Sie die richtigen Tools und die passenden Praktiken für diese Tools haben. So kann es hilfreich sein, zu vereinbaren, wann und warum verschiedene Tools wie E-Mail, Instant Messaging und Videokonferenzen eingesetzt werden sollen. Eine einheitliche Herangehensweise in Ihrem Team ermöglicht eine effizientere und effektivere Kommunikation.
Selbst introvertierte Mitarbeiter haben ein Bedürfnis nach sozialer Interaktion. Deshalb ist es sehr wichtig, im Instant Messaging als Personen und nicht nur als bloße Namen zusammenzuarbeiten. Fordern Sie Ihr Team dazu auf, bei Teambesprechungen ihr Video einzuschalten. Ermutigen Sie Ihre Mitarbeiter, über Videokonferenzen zu kommunizieren, um eine persönlichere Verbindung zu schaffen und differenzierteres Feedback zu ermöglichen.
Lassen Sie Ihrem Team so oft wie möglich Zeit, persönliche Kontakte zu knüpfen und die Atmosphäre aufzulockern. Hierbei helfen Themen wie Fitness, Haustiere, Musik, Bücher oder Reisen (wenn sie denn wieder möglich sind). Der Lockdown ist für uns alle ein Stressfaktor – suchen Sie deshalb möglichst nach Wegen, sich auch persönlich und nicht nur über die Arbeit auszutauschen.
Selbst bei der Arbeit im Home Office sollten die richtigen Tools und die richtige Kommunikation auf natürliche Weise zu einem stärkeren Zusammengehörigkeitsgefühl führen und Ihre Teamkultur stärken. Ausgehend von dieser Grundlage können Sie dann eine gemeinsame Vision entwickeln und festigen. Die gemeinsame Vision ist die Gesamtheit der Probleme, die Sie beheben wollen, der Lösungen, die Sie entwickeln wollen, und der Werte, die Sie schaffen wollen.
Lassen Sie das Team entscheiden, was in die gemeinsame Vision einfließen soll. Ermutigen Sie Ihr Team, neben der Lösung, die Sie entwickeln, und den Problemen, die Sie beheben, auch Ziele für die Bereiche Kollaboration und Teamwork einzubeziehen. Eine gemeinsame Vision in funktions- und kulturübergreifenden Remote-Teams ist eine wichtige Grundlage für die Planung und Durchführung Ihrer Arbeit.
Mit einer guten Grundlage in den Bereichen Kommunikation, Kollaboration und Vision kann sich das Team darauf konzentrieren, wie es die tägliche Arbeit am besten erledigt. Ein guter Ausgangspunkt ist eine Diskussion über Verantwortlichkeiten. Denn Remote-Arbeit bietet die Vorteile von Flexibilität und Unabhängigkeit. Dabei ist es jedoch besonders wichtig, gemeinsam Verantwortlichkeiten zu vereinbaren. Nicht jedem fällt es im Home Office leicht, die eigene Zeit einzuteilen und konzentriert zu bleiben. Stellen Sie sicher, dass die Erwartungen in puncto Arbeitszeiten, Verfügbarkeit usw. klar sind, zugleich aber auch Zeit zum Abschalten bleibt.
Für technische Teams und Teammitglieder ist es besonders wichtig, eine klar definierte Projektvision, agile Zeremonien, Projektzeitpläne und regelmäßige Feedback-Sessions zu haben. Entwickler brauchen eine klare Vorstellung der Anforderungen. Zudem müssen Geschäftsanalysten und Produktverantwortliche leicht erreichbar sein, um einen häufigen Austausch zu gewährleisten. Sorgen Sie dafür, dass Ihre technischen Teammitglieder Fristen und Abhängigkeiten ihrer Arbeit klar kommunizieren. Dies ist in einem Remote-Arbeitsumfeld ebenso wichtig wie herausfordernd.
Im gesamten Prozess sollten Führungskräfte beobachten, wie die Teammitglieder mit der neuen Arbeitsweisen zurechtkommen – und regelmäßig Unterstützung anbieten. Außerdem sollten Führungskräfte darauf vorbereitet sein, Teammitglieder und Rollen bei Bedarf neu zu konfigurieren, um für bestmögliche Ergebnisse zu sorgen.
Aufbau und Betreuung eines guten Produkt-Backlogs
Bei der Entwicklung digitaler Produkte müssen Kommunikation, Zusammenarbeit und Vision zum Einsatz kommen. Leistungsstarke agile Teams können erst dann mit der Wertschöpfung beginnen, wenn sie über ein qualitativ hochwertiges Produkt-Backlog verfügen, das beschreibt, was sie entwickeln wollen.
Zu Beginn eines Projekts ist es wichtig, dass das Team ein gemeinsames Verständnis des Prozesses zur Erstellung und Verwaltung eines guten Produkt-Backlogs hat. Dies gilt für Teams, die an einem Ort oder remote arbeiten. Dennoch sollten Sie Ihren Prozess an die Herausforderungen und Möglichkeiten von verteilt arbeitenden Teams anpassen. Vielleicht nehmen Sie sich während der Sprint-Planung etwas mehr Zeit, um die Produktvision oder die Roadmap zu überprüfen. Oder der Product Owner oder ein wichtiger Business Sponsor betont die Ziele und den Wert des Engagements für das Team.
Zweitens sollten Sie regelmäßige und obligatorische Meetings zur Anpassung des Backlogs abhalten. Da informelle, spontane Interaktionen zwischen Teammitgliedern leicht übersehen werden, ist es wichtig, dass das Team regelmäßig und aktiv an Meetings zum Thema Backlog Refinement teilnimmt. Dazu braucht es klare Erwartungen an die Vorbereitung jeder Session.
Darüber hinaus empfiehlt es sich, Tools einzusetzen, die Ihr Team während Refinement- und Planungs-Sessions aktiv einbinden. Es passiert leicht, dass sich Teammitglieder im Home Office ablenken lassen oder sich langweilen und an anderen Dingen arbeiten, statt sich auf das Backlog zu konzentrieren. Videokonferenzen sind deshalb ein Muss. Der Einsatz von Techniken wie Planning-Poker-Tools, Thumbs-up/Thumbs-down-Reaktionen und die Leitung einer Story-Diskussion durch jedes Teammitglied können dabei helfen.
Zudem geschieht es leicht, dass remote arbeitende Teams den Blick für langfristige Ziele verlieren. Agile Teams müssen nicht nur die unmittelbaren Anforderungen der Sprint-Planung erfüllen, sondern auch ihr Backlog mit entwicklungsfähigen Stories füllen. Agile Teams, insbesondere Teams, die mit Low-Code arbeiten, sollten möglichst über mindestens 2 Sprints mit entwicklungsfähigen User Stories verfügen. Ein Backlog ist von entscheidender Bedeutung, um dem Team die Flexibilität zu geben, Sprints mit Stories unterschiedlicher Größe und Funktionen zu erstellen und gleichzeitig sicherzustellen, dass Entwickler immer genügend Stories zur Verfügung haben. Für verteilte agile Teams erfordert die Betreuung von 2 Sprints eine regelmäßige und fortlaufende Anpassung des Backlogs.
Nutzung von Low-Code für die verteilte agile Entwicklung
Remote arbeitende agile Teams, die Low-Code nutzen, profitieren von vielen Vorteilen.
Die Low-Code-Entwicklung geht wesentlich schneller voran als traditionelle Entwicklung. Deshalb müssen agile Teams eng zusammen und gleichzeitig zügig und effizient arbeiten. Dabei kommt ihnen zugute, dass Low-Code-Plattformen die Zusammenarbeit fördern und erleichtern.
Durch Visualisierungstools in Low-Code-Plattformen können technische und nicht-technische Kollegen mühelos remote zusammenzuarbeiten. Wenn etwa ein Entwickler eine funktionale Frage hat, während er eine User Story erstellt, kann er mit dem Workflow-Visualisierungstool einfach den Ablauf durchgehen. Vergleichen Sie dies mit dem Versuch, Codezeilen in einer Programmiersprache zu überprüfen, die der Business-Stakeholder möglicherweise nicht versteht.
Das gleiche Szenario gilt, wenn QA- und Entwicklungsteams Fehler analysieren und beheben. Probleme werden von weltweit verteilten Teams häufig in Echtzeit gelöst, neu veröffentlicht und validiert. Die verkürzten Zyklen und der geringe Aufwand beim Identifizieren, Melden, Klären, Beheben und Validieren von Problemen können die Geschwindigkeit und Effizienz des Teams deutlich steigern.
OutSystems kann verteilte agile Teams unterstützen
Für Entwickler, die remote arbeiten, bieten Low-Code-Plattformen mehrere Vorteile gegenüber der traditionellen „High-Code“-Programmierung. So haben Low-Code-Plattformen wie OutSystems von vornherein eine modulare Architektur. Dies erleichtert es Entwicklern, an verschiedenen Modulen zu arbeiten, ohne sich in ihrer Arbeit zu überschneiden
Das Erkennen und Auflösen von Abhängigkeiten ist für jedes Entwicklerteam eine Herausforderung. Für ein agiles Team, das nicht am gleichen Ort arbeitet, ist die Verwaltung von Abhängigkeiten umso wichtiger, um die Leistung des Teams nicht zu beeinträchtigen. Mit Low-Code-Plattformen wie OutSystems lassen sich Abhängigkeiten frühzeitig identifizieren und auflösen. Dies erleichtert es Entwicklern, Abhängigkeiten zu verstehen – auch wenn sie sich nicht mal eben mit einem Kollegen besprechen können. Letztlich bedeutet das frühzeitige Identifizieren von Abhängigkeiten, dass technische Schulden minimiert und kostspielige Überarbeitungen in späteren Sprints vermieden werden.
In Fällen, in denen Entwickler zeitgleich an denselben Modulen arbeiten müssen, vereinfachen Features wie die Versionskontrolle, der visuelle Vergleich von Code und die Aktivierung von Code-Zusammenführungen asynchrone und verteilte Entwicklungsarbeiten. Durch eine einfache und kontinuierliche Integration von Code mit Konflikterkennung und -lösung sind Probleme auch allein im Home Office schnell identifiziert.
Nutzen Sie OutSystems gleich jetzt!
Erstellen Sie Ihre erste App in wenigen Minuten– und das kostenlos!
Die Arbeit im Home Office ist für viele von uns die neue Realität. Für agile Teams, die es nicht gewohnt sind, in einem verteilten Team zu arbeiten, kann die Umstellung schwierig sein. Mit nur wenigen Maßnahmen profitieren Sie jedoch von den erheblichen Vorteilen der Remote-Arbeit und verbessern die Leistung Ihres agilen Teams weiter:
- Stellen Sie sicher, dass Sie über Werkzeuge für eine einfache und effiziente Kommunikation und Kollaboration verfügen.
- Definieren Sie die Vision, die Ziele und die Anforderungen für Ihr Produkt klar und deutlich.
- Nutzen Sie die Vorteile von Low-Code-Plattformen, um die Voraussetzungen für leistungsstarke agile Teams im Home Office zu schaffen.
Und: Nutzen Sie die Zeit, die Sie beim Pendeln sparen, um Sport zu treiben, zu lesen oder sich im Freien aufzuhalten!
Wenn Sie mehr über dieses Thema erfahren möchten, empfehlen wir Ihnen unser Webinar Agile Best Practices for Remote Teams. Darüber hinaus können Sie sich ein kostenloses Exemplar unseres Top Tips Guide zur Remote-Kollaboration bei Entwicklungsprojekten herunterladen.