Agile Prozesse: Darum benötigen Sie Feedbackschleifen während und nach Sprints

Agile Feedback Blog Background Image

Nicht-Eingeweihte betrachten einen agilen Prozess als einen iterativen, inkrementellen und kollaborativen Ansatz der Softwareentwicklung. Das Ziel liegt auf der Hand: Geschäftsinteressen oder die Interessen externer Kunden und Partner sollen durch eine frühzeitige und kontinuierliche Bereitstellung von funktionsfähiger Software, die den erwarteten Geschäftswert und Anwendernutzen bietet, zielbringend verfolgt werden.

Agile Prozesse konzentrieren sich auf eine enge Zusammenarbeit zwischen der IT- und der Business-Abteilung. Ein Grundmerkmal dieser Prozessabläufe sind daher kurze Feedbackschleifen. Denn das regelmäßige Feedback von Stakeholdern und Endnutzern richtet sämtliche Handlungen des Entwicklerteams auf die beabsichtigten Ziele für die Lösung aus und stellt sicher, dass auch wirklich hochwerte Funktionen bereitgestellt werden. Feedbackschleifen ermöglichen es dem Team, Veränderungen auch noch zu einem späteren Zeitpunkt im Entwicklungsprozess zu berücksichtigen, sogar wenn ganz neue oder geänderte Anforderungen aufkommen.

Um diese regelmäßigen Feedbackschleifen zu gewährleisten und die Zusammenarbeit zu erleichtern, verfügen agile Prozesse über integrierte Checkpoints. Zum einen ermöglichen Daily-Scrum-Meetings des Entwicklerteams, dass Status-Updates untereinander ausgetauscht und Hindernisse identifiziert werden. Das Sprint-Review-Meeting bietet die Möglichkeit, einer größeren Gruppe, einschließlich Product Owner, Management und Endnutzern, bereits fertige Produktfunktionalitäten zu präsentieren. Neben der Beurteilung des Projekts basierend auf den Sprint-Zielen, kann die Gruppe im Review-Meeting Feedback zum aktuellen Stand der Anwendung geben und die noch nicht erfüllten Vorgaben benennen, die im nächsten Sprint-Planungs-Meeting berücksichtigt werden sollen. Schließlich gibt es noch die Sprint-Retrospektive, die es dem Entwicklerteam erlaubt, auf das Projekt zurück zu blicken und zu bewerten, was gut gelaufen ist und was in künftigen agilen Projekten verbessert werden muss.

Agile Process ChartMit Feedback nicht zu lange warten

Bis zum Ende des Sprints zu warten, um Feedback einzuholen, ist viel zu lang – vor allem, wenn es um die Rückmeldungen von Business-Stakeholdern und Endnutzern geht. Denn bei Softwareentwicklung kann der sogenannte „Butterfly-Effekt“ auftreten: Das bedeutet, dass kleine Änderungen in der Frühphase des Entwicklungsprozesses zu großen Unterschieden in einer fortgeschrittenen Phase des Projekts führen können. Dies gilt besonders für Anwendungen, bei denen nicht klar definiert ist, welche Anforderungen sie erfüllen sollen. Ohne die Chance, die Nutzerbedürfnisse frühzeitig und häufig zu diskutieren und zu validieren, werden Entwickler unweigerlich Annahmen treffen, die ungeprüft den kompletten Entwicklungsprozess vom Kurs abbringen und zu schwerwiegenden Problemen im späteren Verlauf führen können.

Während agile Teams in der Regel verstehen, wie wichtig es ist, nach einem Sprint Feedback zu sammeln, sollten sie ebenfalls darüber nachdenken, wie sie bereits während der Iterationsphasen Feedback einholen können. So wie es Henrik Kniberg und Matthias Skarin in ihrem Buch „Kanban and Scrum: Making the Most of Both“ beschrieben haben:

Generell wünscht man sich eine möglichst kurze Feedbackschleife, damit man den Prozess entsprechend schnell anpassen kann.”

Die Herausforderung besteht darin, dass funktionsfähige Software zwar in einem Sprint-Review-Meeting überprüft werden kann, dies aber normalerweise nicht möglich ist während die Software entwickelt wird. Da es in diesem Entwicklungsabschnitt keine funktionierende Software gibt, ist die genaue Darstellung dessen, was gerade entsteht, der Code selbst. Die Sache ist aber die: Haben Sie jemals gesehen, wie ein Entwickler mit einem Endnutzer zusammensitzt und einen Abschnitt Java oder .NET-Code gemeinsam überprüft, um herauszufinden, ob auch wirklich die richtige Funktionalität entwickelt wird? Wahrscheinlich nicht und das ist auch ganz natürlich, denn 3GL-Programmiersprachen sind Mitarbeiter der Business-Abteilung schwer zugänglich und nicht sehr verständlich.

Der Vorteil einer gemeinsamen Bildsprache zur Verkürzung von Feedbackschleifen

Um kurze Feedbackschleifen während und nach den Sprints zu erhalten, benötigen agile Teams eine gemeinsame Sprache, die das gegenseitige Verständnis zwischen dem Entwicklungsteam und der Business-Abteilung fördert und eine kontinuierliche Kommunikation und Zusammenarbeit erleichtert. Nur so kann sichergestellt werden, dass die Applikation auch richtig entwickelt wird.

Ein Ansatz, der genau dieses Ziel verfolgt und in Unternehmen immer populärer wird, ist Low-Code-Entwicklung. Low-Code-Plattformen verwenden visuelle, modellgetriebene Entwicklungsmethoden zur Definition von Benutzeroberflächen, Datenmodellen und Logik einer Anwendung. Die genutzten visuellen Modelle sind für das gesamte Team einfach verständlich und schaffen so die Basis für eine häufige, kontinuierliche Zusammenarbeit zwischen den Entwicklern und anderen Geschäftsbereichen. Sie können zu jedem Zeitpunkt – selbst zu Beginn des Entwicklungsprozesses – zusammensitzen, um gemeinsam Funktionen zu diskutieren und zu überprüfen, Feedback zu sammeln, Annahmen zu validieren und notwendige Verbesserungen zu identifizieren. In den meisten Fällen können Änderungen, die sich aus den Feedbackschleifen ergeben, sofort umgesetzt und die aktualisierte Anwendung zur sofortigen Validierung erneut bereitgestellt werden.

Der Versicherer Texas Life nutzt die Low-Code-Plattform von Mendix, um seine digitale Transformationsstrategie umzusetzen. Mit Mendix wurden Workflows digitalisiert, Legacy-Anwendungen neu entwickelt und Self-Service-Portale für Kunden und Makler geschaffen. Laut Brad Kendrick, Vice President of IT bei Texas Life, liegt der Nutzen einer Low-Code-Plattform vor allem darin, dass sie iterative, kollaborative Entwicklungsprozesse ermöglicht: „Der Entwickler und eine Person aus dem Geschäftsbereich können gemeinsam Ideen entwickeln, Workflows schaffen sowie Anwendungen am Bildschirm einfach designen und verbessern – und dies ganz innovativ, ohne sich langfristig mit technischen Details aufzuhalten.“

Die Zusammenarbeit von Business und IT in jedem Abschnitt des App-Lebenszyklus

Während praktisch jede Low-Code-Plattform mit visuellen Entwicklungstechniken arbeitet, sind tatsächlich nur wenige darauf ausgerichtet, die Kollaboration zwischen IT und Business in jedem Abschnitt des Produktzyklus zu verankern. Neben der Nutzung visueller Modelle als gemeinsame Sprache, helfen die folgenden Funktionen zusätzlich dabei, kurze Feedbackschleifen und somit eine kontinuierliche Zusammenarbeit zu erleichtern:

  • Nutzerfreundliches, agiles Projektmanagement – Entwicklerzentrierte Tools sind häufig sehr komplex in der Anwendung und schränken daher die Beteiligung von Mitarbeitern aus den Geschäftsbereichen am Projekt ein. Ein intuitives Projektportal schafft einen gemeinsamen Raum für das gesamte Team, um User Stories zu erstellen und während des gesamten Projekts miteinander zu kommunizieren.
  • Sofortiges App-Sharing – Über die Möglichkeit Work-in-Progress-Anwendungen sofort und über alle Geräte-Plattformen hinweg als Vorschau anzuzeigen, wird die Zusammenarbeit noch effektiver. Dieser Vorgang ermöglicht es, dass Endnutzer die App frühzeitig sehen und Feedback geben können und so mögliche Fehler oder notwendige Anpassungen kontinuierlich realisiert werden können.
  • User Feedback Loops – Eingebettete Widgets für das User-Feedback ermöglichen es, direkt in einer Applikation Feedback zu geben. Ein geschlossener Loop lässt das Feedback direkt in die Entwicklungsumgebung einfließen und schafft so schnelle Iterationen.

Agile Prozesse unterstützen die Verkürzung von Feedbackschleifen von mehreren Monaten auf wenige Wochen (je nachdem wie die Sprints gesetzt sind). Gerade Unternehmen, die schnell und häufig hochwertige Anwendungen entwickeln müssen, um ihre digitale Transformationsstrategie dauerhaft umsetzen zu können, profitieren von häufigem Feedback und einer engen Zusammenarbeit. Low-Code-Plattformen reduzieren Feedbackschleifen buchstäblich auf nahezu Echtzeit-Kommunikation und tragen dazu bei, dass das Entwicklungsteam schnell eine Lösung liefert, die sowohl den Nutzerbedürfnissen als auch den Geschäftszielen entspricht.