Die Digitalisierung hat in der Arbeitswelt eine steigende Komplexität und Dynamik ausgelöst. Dies verlangt Unternehmen und Teams sehr viel ab. Sie müssen so flexibel aufgestellt sein, dass sie schnell und individuell auf Veränderungen reagieren können. ion2s arbeitet daher vollständig nach agilen Methoden. Um zudem eine vergleichbare Agilität in der Unternehmensentwicklung zu ermöglichen, ist ion2s statt hierarchisch komplett holokratisch organisiert. Aber was genau bedeutet das für unsere Kunden?
Was bedeutet agiles Arbeiten?
Agiles Arbeiten ist der Inbegriff von New Work. Es geht dabei darum, in einem sehr dynamischen Umfeld komplexe Anforderungen zu sehr guten Lösungen zu entwickeln. Das geschieht in kurzen Entwicklungszyklen und in selbstorganisierten Teams. So ist es ein zentrales Prinzip der agilen Arbeitsweise, dass Aufgaben nicht nach dem Push-Prinzip zugewiesen werden, sondern sich Teammitglieder Aufgaben nach dem Pull-Prinzip aktiv ziehen. In agilen Projekten wird man also nicht eingeplant. Stattdessen organisiert der agile Prozess die Zusammenarbeit. Diese Tatsache stellt sicher, dass ein Entwicklungsteam selbstorganisiert agieren kann.
Darüber hinaus gehen agile Methoden stets davon aus, dass klare Ziele und Leitlinien in einem komplexen und dynamischen Umfeld wesentlich besser funktionieren als eine starre Planung. Sie helfen dabei, mit Veränderungen oder Unerwartetem gut umgehen zu können. In den Cross-funktionalen Teams besteht also ein großes Maß an Gestaltungsfreiheit. Bei einem agilen Ansatz werden daher alle Entscheidungen, Aufgaben und Abläufe transparent geteilt. So lassen sich im agilen Team gute und fundierte Entscheidungen treffen. Vor allem sind getroffene Entscheidungen jederzeit nachvollziehbar. Und die klaren Regeln des agilen Projektmanagements schaffen einen verbindlichen Rahmen für eine gemeinsame agile Vorgehensweise.
Um die Vorteile von Agilität wirklich nachvollziehen zu können, sollte man sie allerdings praktisch erlebt haben. Nur so entwickelt man mit der Zeit selbst ein agiles Mindset.
Agile Methoden - Wo SCRUM und Kanban zum Einsatz kommen
Agiles Arbeiten und New Work brauchen geeignete Methoden, die Agilität und damit verbundene Beweglichkeit durch festgelegte agile Prozesse unterstützen. Es existieren verschiedene agile Methoden und Frameworks, auf die man in der agilen Softwareentwicklung zurückgreifen kann. Bei ion2s setzen wir im gesamten Unternehmen die agilen Arbeitsmethoden Scrum und Kanban ein.
Im Kanban sind die einzelnen Arbeitsschritte, die eine typische Aufgabe durchläuft, als Spalten auf einer Pinnwand dargestellt. Eine Aufgabe durchläuft diese Spalten als Karte. Dies macht den Fortschritt einer einzelnen Aufgabe für alle Beteiligten sehr transparent. Definierte Limits der einzelnen Spalten und eine klare Regelung der Zuständigkeiten und der Priorisierung optimieren den Arbeitsfluss. Kanban eignet sich sehr gut, wenn ein Team an mehreren Projekten oder für mehrere Kunden arbeitet.
Scrum unterteilt die Entwicklung in mehrere Teilabschnitte, sogenannte Sprints. Diese Sprints haben jeweils ein abgeschlossenes funktionierendes Feature als Ziel. Es entstehen greifbare Ergebnisse, die direkt überprüft und im Anschluss live gestellt werden. Die Sprints sind geprägt von regelmäßigen Ritualen, die im Vorfeld definiert wurden. Dies können beispielsweise Planungssitzungen, Ergebnispräsentationen oder abschließende Reflektionen sein. In der Regel praktizieren die Scrum-Teams tägliche Kurzmeetings, in denen sich die Teammitglieder gegenseitig auf den aktuellen Stand bringen.
Scrum ist vor allem durch seine klare Definition von festen Rollen und Regeln bekannt geworden. Neben den fachlichen Rollen existieren die Standardrollen Product Owner und Scrum Master. Während das Entwicklungsteam eigenverantwortlich über alle technischen Aspekte entscheidet, definiert der Product Owner alle fachlichen und inhaltlichen Anforderungen. Der Scrum Master agiert als Schiedsrichter und wacht über die Einhaltung der Prozessregeln. Er räumt unerwartete Hindernisse frühzeitig aus dem Weg, damit das Entwicklungsteam und der Product Owner ungehindert agieren können.
Darüber hinaus gibt es zahlreiche weitere Methoden, die eine agile Arbeitsweise unterstützen. Lean Startup, Lean Development, Extreme Programming und Design Thinking sind nur einige der Arbeitsweisen, die sich zur Unterstützung der Agilität eignen. Da sich die Anforderungen an eine Zusammenarbeit von Kunde zu Kunde unterscheiden, ermöglichen wir gerne individuell angepasste Formen der Methoden. Unsere Vorgehensweise basiert dann zum Beispiel auf den bewährten agilen Frameworks Scrum oder Kanban, werden aber durch weitere zielführende Frameworks ergänzt. Dabei kombinieren wir die Methoden so miteinander, dass jedes Prinzip seine vollen Stärken entfalten kann.
In der Regel profitieren Unternehmen von einem agilen Arbeiten, das unregelmäßige Beauftragungen unterstützt. Ein Team betreut dann mehrere Kunden und Projekte. Benötigt ein Unternehmen dedizierte Scrum-Teams, die ausschließlich für ein Kundenprojekt zur Verfügung stehen, passen wir die agile Teamarbeit und die zugrunde liegenden Prozesse gerne auch individuell an die Prozesse und Anforderungen unserer Kunden an. Für Vorhaben in der Produktentwicklung eignen sich insbesondere die Ansätze Lean Startup und Lean Development.
Kurze Entwicklungszyklen
Noch vor einigen Jahren war es in der Softwareentwicklung üblich, größere Projekte über eine lange Zeit zu realisieren und sie erst nach vollständiger Fertigstellung über eine längere Laufzeit live zu stellen. Diese Methode ist heute, in einem dynamischen, sich schnell verändernden Umfeld sehr riskant. Während einer sehr langen Projektlaufzeit verändern sich ganze Märkte, Wettbewerbsprodukte kommen auf den Markt, die Anforderungen der Nutzer ändern sich. Bei langen Projektlaufzeiten besteht also ein recht hohes Risiko, am Marktbedarf vorbei zu entwickeln oder aber nie fertig zu werden.
Um dieses Risiko zu minimieren, organisieren wir heute alle Kundenvorhaben nach Methoden des agilen Arbeitens. Die agilen Prinzipien sehen vor, dass funktionierende Software in sehr kurzen Zeiträumen bereitgestellt wird. In der agilen Arbeit halten wir den ersten Live-Gang so klein wie möglich. Einzelne Funktionsbereiche werden direkt nach Fertigstellung live gestellt. So wirken die Erweiterungen direkt und können sofort genutzt werden. Aus der Nutzung wiederum lässt sich lernen. Man spricht hierbei von einer kontinuierlichen Entwicklung (englisch: continous development) und Bereitstellung (englisch: continous deployment). Dies reduziert in Projekten mit hoher Agilität die Entwicklungskosten und verkürzt den Time-to-Market.
Agiles Arbeiten für und mit unseren Kunden
Agiles Arbeiten bei ion2s heißt auch immer gemeinsam mit dem Kunden arbeiten. Überall wo Agile Kollaboration möglich ist, geben wir unseren Kunden Einblick in unsere Arbeitsabläufe, in den Status unserer Arbeit und in die Dokumentationen, die wir im Rahmen der Arbeit erstellen. Der Ansatz hierbei ist es, gemeinsam mit den beauftragenden Unternehmen und mit unseren Kunden in den Dokumenten zu arbeiten, alle Perspektiven einfließen zu lassen und so die besten Lösungen für eine Problemstellung zu finden. Gleichzeitig entsteht so eine sehr hohe Transparenz bei allen Projektbeteiligten. In der agilen Zusammenarbeit setzen wir verschiedene Kollaborationstools ein. Die wichtigsten Agile Tools hierbei sind allerdings Jira und Confluence von Atlassian.
Agile basiert auf autonomen agilen Teams
Agiles Arbeiten basiert auf kleinen, selbstorganisierten Teams. Die Agile Teams handeln dabei komplett autonom. Das heißt, sie treffen alle wichtigen Entscheidungen eigenständig. Hierzu orientieren sie sich an ihrem Purpose (Bestimmung), ihren Accountabilities (Zuständigkeiten), an den Zielen ihrer Kunden und an den konkreten Anforderungen. So gelingen schnelle, aber fundierte Entscheidungen. Denn sie werden von den Menschen getroffen, die das Problem am besten verstehen und die vor allem über die erforderlichen Kompetenzen verfügen. Das ermöglicht ein hohes Maß an Agilität.
Gleichzeitig bedeutet diese Form der Selbstorganisation, dass ein Team die Verantwortung für die Zielerreichung übernimmt. Um Abhängigkeiten von anderen Unternehmensbereichen aufzulösen, muss ein agiles Team hierzu über alle erforderlichen Kompetenzen verfügen. In der Regel haben agile Teams eine maximale Größe von 5-8 Personen. So bleiben Komplexität und Organisationsaufwände überschaubar. Um anfallende Arbeit zu organisieren, klärt das Team die Zuständigkeiten über Rollen. Eine jede Rolle im Team beteiligt sich innerhalb des eigenen Zuständigkeitsbereichs aktiv an der Zielerreichung. Die Verantwortung für die Zielerreichung trägt das Team aber gemeinsam. Auch die Kontrollfunktion übernimmt das Team selbst. Es überwacht die eigenen Arbeitsfortschritte und arbeitet stetig an der Verbesserung eigener Prozesse und Rollen.
Agile Arbeitsweise in einem agilen Unternehmen
Damit stellt das Prinzip Agile klassische Arbeitsweisen in Unternehmen wortwörtlich auf den Kopf. Unternehmen, die bewusst die reine Top-down Planung und damit die Hierarchie verlassen möchten, durchlaufen einen längeren Prozess der agilen Transformation. Die Verantwortung verschiebt sich dabei weg vom Management und wenigen Führungskräften hin zu den produktiv arbeitenden Teams. Sind das Management und die Führungskräfte in der klassischen Hierarchie für Kontrolle und Weisung zuständig, so liegt deren Aufgabe nun eher in der Konkretisierung von Purposes und Accountabilities. Das Management trifft also immer weniger selbst die Entscheidungen und definiert immer stärker die Rahmenbedingungen, innerhalb derer Entscheidungen frei getroffen werden können. Die Führungskraft geht von einzelnen Personen auf mehrere Teams über. Hierarchien, die Entscheidungen verzögern oder auf andere Weise hemmen, entfallen in agilen Unternehmen.
Um auch Veränderungen an der Organisationsstruktur rasch und unbürokratisch durchführen zu können, ist ion2s als Unternehmen nicht hierarchisch, sondern holokratisch organisiert. Hierzu verwenden wir das Agile Framework Holokratie. Was Scrum und Kanban für das agile Projektmanagement darstellen, ist die Holokratie für die agile Organisation. Dies ermöglicht eine komplett agile Führung.
Die Grundlage für Agile: Das Agile Manifest
Den Paradigmenwechsel von den Entwicklungsmethoden der 90er Jahre hin zum Ansatz der Agilität stießen mehrere erfahrene Softwareentwickler im Jahr 2001 in den USA an. Sie trafen sich, um sich auszutauschen, und waren frustriert von der großen Zeitspanne zwischen den Kundenanforderungen und der Bereitstellung von Software, die den Anforderungen entsprachen. Diese lange Zeit führte sehr oft dazu, dass Projekte komplett eingestellt wurden, da sich inzwischen die Anforderungen geändert oder der Bedarf erübrigt hatte. Sie formulierten vier Werte und zwölf Prinzipien, die die Grundlage für die heutige agile Softwareentwicklung legten und oft zur Definition von Agile herangezogen werden (hier leicht gekürzt):
Agile Werte
Menschen und Interaktionen vor Prozessen und Werkzeugen
Funktionsfähige Produkte vor umfassender Dokumentation
Zusammenarbeit mit Kunden vor Vertragsverhandlungen
Eingehen auf Änderungen vor strikter Planverfolgung
Agile Prinzipien
Stelle den Kunden durch frühe und kontinuierliche Auslieferung wertvoller Software zufrieden!
Heiße in der agilen Softwareentwicklung auch radikale Anforderungsänderungen selbst spät in der Entwicklung willkommen!
Liefere funktionierende Software regelmäßig und innerhalb einer möglichst kurzen Zeitspanne!
Ermögliche, dass Fachexperten und Entwickler während des Projektes täglich zusammenarbeiten!
Errichte Projekte rund um motivierte Individuen, schaffe ein unterstützendes Umfeld und vertraue darauf, dass sie die Aufgabe gut und schnell erledigen!
Sei im persönlichen Gespräch, um Informationen an und innerhalb eines Entwicklungsteams zu übermitteln!
Definiere die funktionierende Software als das wichtigste Fortschrittsmaß!
Schaffe agile Prozesse, so dass Auftraggeber, Entwickler und Benutzer ein gleichmäßiges Tempo auf unbegrenzte Zeit halten können!
Habe ein ständiges Augenmerk auf technische Exzellenz und gutes Design!
Halte die Lösungen einfach, maximiere die Menge nicht getaner Arbeit, um zu fokussieren!
Schaffe selbstorganisierte Teams!
Sorge dafür, dass das Team in regelmäßigen Abständen reflektiert, wie es effektiver werden kann, und sein Verhalten entsprechend anpasst!
Das agile Arbeiten von heute beruht noch immer auf diesem agilen Manifest. Inzwischen lassen sich von den Erkenntnissen der Softwarebranche allerdings auch viele andere Branchen inspirieren.
Wann eignen sich agile Methoden für Projekte und Organisation?
Um eine agile Organisation in der Zusammenarbeit und der Softwareentwicklung kommt man in der heutigen dynamischen Zeit kaum mehr herum. Traditionelle Arbeitsweisen und Strukturen erforderten früher eine vollständige detaillierte Planung noch vor Start eines Projektes. Änderungen im Projektverlauf waren nicht vorgesehen. Das ist heute nicht mehr abbildbar. Je komplexer ein Themenbereich ist, umso höher ist die Notwendigkeit, agiles Arbeiten sowie entsprechende Prozesse, Methoden und Frameworks einzuführen. Dabei sollte man berücksichtigen, dass es verschiedene Ebenen gibt, auf denen die Vorteile agiler Methoden genutzt werden können: für die Führung, die Umsetzung von Projekten, die Produktentwicklung, die Arbeit an Innovationen und die Organisation eines kompletten Unternehmens. Für all diese Bereiche gibt es unterschiedliche Ansätze, die gut miteinander kombiniert sein wollen. Kommen Sie gerne auf uns zu, wenn Sie Fragen zu agilen Methoden oder Frameworks haben!