Ein Angebot von

„Hybrid Agile“: Agilität mit klassischen Entwicklungsmethoden kombinieren

| Autor / Redakteur: Johan Karlsson * / Sebastian Gerstl

Generell sollte die Einführung agiler Methoden nie als eine Revolution begriffen, sondern vielmehr als Evolution des Status Quo realisiert werden. Tatsächlich können auch bewährte Entwicklungsmethoden von einem hybrid-agilen Modell profitieren.
Generell sollte die Einführung agiler Methoden nie als eine Revolution begriffen, sondern vielmehr als Evolution des Status Quo realisiert werden. Tatsächlich können auch bewährte Entwicklungsmethoden von einem hybrid-agilen Modell profitieren. (Bild: ©tippapatt - stock.adobe.com)

Agile Methoden liegen im Trend, doch viele Embedded-Entwickler können oder wollen auf die Planbarkeit und Dokumentation ihrer traditionellen Modelle nicht verzichten. Eine Überwindung dieses vermeintlichen Gegensatzes verspricht der Ansatz „hybrid agile“. Wie das funktioniert, zeigt ein Beispiel aus der Praxis.

Es ist ein Anwendungsfall, der für traditionelle Entwicklungsmethoden geradezu prädestiniert scheint: Ein Schweizer Embedded-Hersteller fertigt hochspezialisierte Elektronikkomponenten und -systeme. Die Anforderungen sind streng, die Auftragsvolumina groß. Eine umfassende Planung des gesamten Entwicklungsprozesses – noch vor Annahme eines Auftrags – ist damit unerlässlich. Deutlich weniger planbar hingegen sind die anschließenden Test- bzw. Verifikationsprozesse. Denn wann genau eine Komponente zum Testen bereitsteht oder Supportanfragen zu bestehenden Produkten eingehen, lässt sich kaum vorhersagen.

Um hier die notwendige Flexibilität zu erreichen, führte der Hersteller agile Methoden in seine Verifikationsabteilung ein: Zweiwöchentliche Sprints ermöglichen dem Team eine flexible Bearbeitung des stark schwankenden Arbeitsaufkommens, ein Kanban-Board visualisiert und verteilt anstehende Aufgaben. Der Clou: Bereichsübergreifend plant das Unternehmen weiterhin mit den Methoden, die sich bereits in der Vergangenheit bewährt haben – und wählt damit für jeden Aufgabenbereich die jeweils geeignetste Vorgehensweise.

Traditionell vs. Agil: nur scheinbar gegensätzlich

„Hybrid agile“ nennt sich eine solche Kombination aus traditionellen Entwicklungsmethoden und agilen Vorgehensweisen. Dahinter steht der Gedanke, dass es sich bei traditionellen und agilen Modellen nicht um die beiden Extreme einer Skala handelt, sondern vielmehr um die Achsen eines Koordinatensystems: Eine Zunahme des einen bedingt nicht automatisch eine Abnahme des anderen. Vielmehr ist es möglich, gleichzeitig in beiden Kategorien gute Fortschritte zu erzielen. Konkret bildet beim hybrid-agilen Modell der bestehende Prozessablauf die Grundlage, zum Bespiel das lineare Waterfall- oder V-Modell. Innerhalb der einzelnen Prozessstufen werden daraufhin nach und nach agile Vorgehensweisen eingeführt. Das Ergebnis sind abgeschlossene agile Ökosysteme inmitten des bestehenden Gesamtprozesses.

Auf diese Weise wird es auch Unternehmen aus streng regulierten Branchen möglich, von den Vorteilen agiler Vorgehensweisen zu profitieren, ohne auf die Planungssicherheit, Verlässlichkeit und Nachvollziehbarkeit ihrer bestehenden Abläufe zu verzichten. So fördert der starke Teamfokus agiler Methoden beispielsweise den Wissensaustausch im Unternehmen, verbessert die Kommunikation zwischen den Projektbeteiligen und schärft so den Blick auf das große Ganze. Zudem lassen sich Entwicklungszeiten und damit die Dauer bis zur Markteinführung verkürzen: In Zeiten starken Wettbewerbs und unternehmensübergreifend gutem Zugang zu Wissensressourcen wird die Art und Weise, wie gearbeitet wird, zum entscheidenden Differenzierungsmerkmal am Markt.

Um ein hybrid-agiles Modell in der Praxis zu nutzen, gilt es zunächst, einen Bereich zu wählen, in dem konkreter Bedarf für die entsprechenden Vorgehensweisen besteht, etwa das Software-Testing. Konkret wäre es dort beispielsweise möglich, mit einer testgetriebenen Entwicklung („Test-Driven Development“, TDD) zu beginnen und benötigte Tests bereits vor Beginn der Entwicklung der einzelnen Funktionalitäten zu schreiben. Anstatt den fertigen Code dann im Nachgang gegen die zu Beginn aufgestellten Anforderungen zu testen, ließe sich dies bereits parallel zur Entwicklung nahezu automatisch bewerkstelligen und sich die Tests bei Bedarf rasch wiederholen. Indem der Test-Prozess in der Prozesskette nach links verlagert wird, lässt sich eine deutlich höhere Effizienz in den Prozessen erreichen, während gleichzeitig die Generaldiskussion vermieden wird, ob die auf dem Waterfall- oder V-Modell basierenden Arbeitsweisen nicht gänzlich aufgegeben werden sollten.

Fallstricke für die Einführung eines „Hybrid Agile“ Modells

Damit die Einführung und Nutzung agiler Methoden in der Praxis zum Erfolg wird, gilt es, eine Reihe verbreiteter Fallstricke zu vermeiden und stattdessen die folgenden Maximen zu beherzigen:

Management und Kollegen für das Projekt gewinnen: Wer im Alleingang mit der Einführung agiler Methoden beginnt, riskiert den Erfolg des gesamten Projekts. Jede Art von Veränderung verursacht Unsicherheit. Wird daraus Widerstand, scheitert nicht selten das gesamte Vorhaben. Entsprechend essentiell ist die Unterstützung durch Management und Teams. Ist diese gesichert, empfiehlt sich die Suche nach sogenannten „low-hanging fruits“: Das sind schnelle Erfolge, die sich bereits mit geringem Mitteleinsatz erzielen lassen. Oft finden sich Kollegen, die ohnehin gerne nach agilen Methodiken arbeiten würden. Hier sollte die Agile-Einführung ansetzen. Zeichnen sich Erfolge ab, werden die Mitarbeiter nicht selten selbst zu Fürsprechern für die Methode und bewerben die neuen Prozesse bei ihren Kollegen.

Nicht ins andere Extrem verfallen: Gerade in sehr dokumentationslastigen Prozessen haben Entwickler nicht selten den Eindruck, im Grunde mehr an Dokumentationen zu arbeiten als am eigentlichen Code. In solchen Fällen mag beim Umstieg auf agile Prozesse die Versuchung groß sein, auf all das nun komplett zu verzichten und den erstellten Code selbst als Ersatz für die Dokumentation des Entwicklungsprozesses anzusehen. Dabei darf gerade im hybrid-agilen Kontext der Wert einer angemessenen Dokumentation nicht außer Acht gelassen werden: So führt eine lückenhafte Dokumentation bei der teaminternen Abstimmung zu unnötigen Verzögerungen und vermindert gleichzeitig die Kompatibilität des agilen Bereichs mit den traditionelleren Stufen im Gesamtprozess.

Bestehende Modelle individualisieren: Die Annahme, ein agiles Konzept, das sich bereits in einem erfolgreichen Konzern bewährt hat, müsse automatisch auch für das eigene Unternehmen zum Erfolg führen, ist ein Trugschluss. Die ideale hybrid-agile Methode ist eine kontextualisierte Methode. Sie muss immer individuell auf die Kultur und den Werdegang des jeweiligen Unternehmens zugeschnitten und an dessen Anforderungen angepasst werden. Entsprechend findet sie sich in dieser Form in keinem Lehrbuch, keinem Agile-Kurs und nicht auf Fachportalen im Internet. Agile Beispiele anderer Firmen eignen sich wunderbar zur Inspiration, sind jedoch nie der Weisheit letzter Schluss. Ein passgenaues Konzept kann sich zum individuellen Erfolgsrezept für ein Unternehmen entwickeln – und gleichzeitig nur schwer von Mitbewerbern kopiert werden.

Einführung agiler Methoden: Evolution statt Revolution

Generell sollte die Einführung agiler Methoden nie als eine Revolution begriffen, sondern vielmehr als Evolution des Status Quo realisiert werden. Im Zentrum steht immer der Anspruch, die Eigenschaften und Prozesse beizubehalten, die das Unternehmen schon in der Vergangenheit ausgezeichnet und seinen Erfolg bedingt haben, und diese Grundlage durch eine kontinuierliche Modernisierung der Arbeitsweisen fit zu machen für den Wettbewerb der Zukunft. Dabei können sich schon kleine Verbesserungen summieren und eine große Wirkung entfalten – wie nicht zuletzt das Pareto-Prinzip betont: Schon 20% des Gesamtaufwands erzielen oft bereits 80% des Erfolgs.

DevOps im Embedded Development

DevOps im Embedded Development

20.06.19 - DevOps ist in der Web-Entwicklung häufig anzutreffen, in der Embedded-Entwicklung jedoch selten. Häufig bestehen bereits bei der Automatisierung in der Softwareentwicklung Defizite. Diese Automatisierung ist jedoch eine Grundvoraussetzung für die erfolgreiche Umsetzung von DevOps. Umgekehrt kann sie als Katalysator für die notwendigen Veränderungen dienen. lesen

ISO 29119 und der agile Ansatz: Geht das zusammen?

ISO 29119 und der agile Ansatz: Geht das zusammen?

06.05.19 - Bis 2015 wurden fünf Teile der Norm zum Softwaretest ISO/IEC/IEEE 29119 veröffentlicht. Seit Beginn ihrer Erarbeitung gab es besonders aus den Reihen der agilen Entwicklung Widerstand: Die Norm sei zu schwerfällig, behindere die agile Entwicklung und überhaupt brauche der Test keine Normierung. Aber stimmt das wirklich? lesen

Change-Management: Was Unternehmen falsch machen, wenn sie agil sein wollen

Change-Management: Was Unternehmen falsch machen, wenn sie agil sein wollen

13.02.19 - Agil sein. Schneller sein. USPs herstellen. KPIs erhöhen. Der Konkurrenz den entscheidenden Schritt voraus sein. Das sind die Klassiker-Buzz-Sätze für die Vorstandsetagen. Doch ein Unternehmen agil zu machen, ist nicht einfach. Viele Firmen machen dabei große Fehler. lesen

* Johan Karlsson ist Senior Consultant bei Perforce Software in Stockholm.

Kommentar zu diesem Artikel abgeben

Schreiben Sie uns hier Ihre Meinung ...
(nicht registrierter User)

Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
Kommentar abschicken
copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Kontaktieren Sie uns über: support.vogel.de/ (ID: 46034551 / Agilität)