In den letzten Jahren wurde in vielen Firmen die Softwareentwicklung auf agile Methoden wie Scrum umgestellt. Die größten Neuerungen waren ein iteratives Vorgehen bei der Umsetzung von Projekten sowie der Einsatz von Scrum Mastern. Die Scrum Master wurden später auch Agile Coaches genannt; sie sollten den Teams Wege freiräumen, damit diese sich auf ihre primären Tätigkeiten konzentrieren konnten. Wie sieht heutzutage die Rolle der Agile Coaches in Unternehmen aus, die Software agil entwickeln? Warum sollten Organisationen nicht auf einen Agile Coach verzichten und was würde ihnen ohne Agile Coaches fehlen?
Der Agile Coach im Wandel der Zeit
In den Anfängen der agilen Softwareentwicklung half der Agile Coach, die neuen Prinzipien wie iteratives Vorgehen, Selbstorganisation und frühzeitiges Einholen von Feedback in den Teams zu etablieren. Im Laufe der Zeit ging das agile Arbeiten mehr und mehr ins Blut der Entwickler über. Der Agile Coach hatte nun mehr Zeit, sich um Themen zu kümmern, die die gesamte Organisation betrafen. Der Einfluss auf die tägliche Arbeit des Teams nahm ab und war auch nicht mehr so notwendig wie zu Beginn. Die Organisation außerhalb des Teams hatte ebenfalls gelernt, agil zu arbeiten bzw. hatte sich auf die agile Arbeit der Teams eingestellt. Selbst das Beseitigen von Impediments durch die Agile Coaches wurde immer seltener.
In vielen Firmen führte diese Entwicklung jedoch zu dem Irrglaube, der Agile Coach würde nicht mehr benötigt oder könnte gänzlich andere Aufgaben wahrnehmen. Die Rolle des Agile Coachs beschränkte sich vermehrt auf die Moderation der Zeremonien oder veränderte sich hin zu allgemeinen, organisatorischen Themen. Dazu zählten bspw. Umfragen unter Mitarbeitern oder das Organisieren von IT-internen Veranstaltungen. Je weniger die Agile Coaches die Teams direkt unterstützten, umso mehr verfestigte sich der Irrglaube. Das führte dazu, dass offene Stellen nicht neu besetzt wurden und die Rolle in manchen Unternehmen sogar abgeschafft wurde.
Eine Ursache für diese Entwicklung ist, dass sich die Arbeit des Agile Coaches nicht exakt messen lässt. Mit dem Rückzug des Agile Coaches jedoch verändert sich auch die Arbeit der Entwicklungsteams. Einen guten Eindruck vom Wert der Arbeit von Agile Coaches bekommt man, wenn man sich vor Augen führt, wie sich die Arbeit der Entwicklungsteams ohne ihn gestaltet.
Was verändert sich, wenn ein Agile Coach fehlt?
Wenn ein Agile Coach fehlt, lässt sich schnell beobachten, dass das Daily Scrum Meeting vom Team nicht mehr genutzt wird, um die Arbeit zu planen und sich untereinander abzusprechen. Vielmehr verschiebt sich der Fokus dahin, dass die Entwickler dem Product Owner von ihrer Arbeit des Vortags berichten. Die Absprachen untereinander werden weniger, die einzelnen Tickets werden nicht mehr so gut koordiniert und der Product Owner wird mit vielen technischen Details behelligt. Wenn man diese Entwicklung zu lange laufen lässt, kann man beobachten, wie Entwickler sich immer mehr auf bestimmte Aufgaben-Inseln konzentrieren und die gemeinsame Arbeit als Team abnimmt. Ein Agile Coach kann auf solche Entwicklungen frühzeitig reagieren und die Arbeit des Teams auf einem hohen Niveau halten. Er kann den Fokus im Daily Scrum Meeting im Blick behalten und über Retrospektiven mit dem Team die Zusammenarbeit regelmäßig überprüfen und verbessern. Das Team fungiert dann auch als solches und nicht nur – überspitzt ausgedrückt – als Gruppierung von Software-Entwicklern.
Weiterhin ist zu beobachten, wie die Zusammenarbeit zwischen Teams und Bereichen abnimmt, und sich die Weiterentwicklung der Organisation verlangsamt, wenn ein Agile Coach fehlt. Ein Coach alleine kann derartige Tendenzen nicht aufhalten, aber er kann im Team das Bewusstsein für die sinnvolle Zusammenarbeit zwischen Teams schaffen. Geschieht dies organisationsweit in allen Entwicklungsteams, verbessert sich die Zusammenarbeit innerhalb der IT-Abteilung merklich. Aufgrund ihrer Tätigkeit sind die Agile Coaches die Einzigen in einer Organisation, die hierauf einen Fokus legen und auch die gesamte Organisation im Blick behalten. Tauschen sich Coaches untereinander aus, verbreiten sich Innovationen deutlich schneller und die Organisation geht in einen stetigen Verbesserungs- und Optimierungsprozess über. Damit wiederum lassen sind größere Projekte, die auf Kooperationen von mehreren Teams angewiesen sind, einfacher und reibungsloser umzusetzen. Ein nicht unwesentlicher Faktor, wenn eine Organisation beispielsweise ihre Systemlandschaft großflächig erneuern möchte oder muss.
Der Mehrwert eines Agile Coaches
Gute Entwicklungsteams benötigen mehr Unterstützung als das Leiten von Zeremonien und das Ausräumen von Impediments. Sie benötigen einen Coach, der sie stetig begleitet und ihnen hilft sich zu verbessern. Ein Agile Coach kann nicht nur das stetige Verwässern der agilen Prinzipien verhindern, sondern liefert darüber hinaus auch einen Mehrwert für die Arbeit der Teams und die Entwicklung der Organisation als Ganzes.
Folgende Aufgaben lassen sich hierbei auflisten:
Leiten der Scrum-Zeremonien/ Moderation
Das ist die Basisaufgabe eines jeden Agile Coaches. Er sorgt für einen reibungslosen Ablauf der Meetings, achtet auf die Zeit und den Fokus und hält das Team frei von organisatorischen Aufgaben.
Messen und Optimieren der Entwicklungsleistung des Teams über mehrere Sprints/ Iterationen hinweg
Hierzu stellt der Agile Coach eine Reihe von Key Perfomance Indicators (KPI) auf und erhebt sie regelmäßig nach Abschluss jedes Sprints/ jeder Iteration. KPI können bspw. Durchlaufzeiten und Liegezeiten von Tickets, Anzahl der Releases sowie das Auftreten von Bugs oder Impediments sein.
Weiterentwickeln des Teams
Der Agile Coach beobachtet, ob sich die Zusammenarbeit als Team abseits der KPI verändert und sorgt über Retrospektiven dafür, dass derartige Veränderungen dem Team bewusst werden. Zusammen mit dem Team leitet er dann Maßnahmen zur Verbesserung der Zusammenarbeit ab.
Arbeiten als Coach
Der Agile Coach gibt den Teammitgliedern Rückmeldung über ihre Arbeit und hilft ihnen, sich stetig zu verbessern. Er beobachtet als Außenstehender die Vorgänge im Team und kann so verborgene Probleme (fehlende Absprachen, Konflikte, zu viele ungeplante Nebenaufgaben) aufnehmen.
Durchführen von Workshops
Beim Aufsetzen von neuen Teams (bspw. für Projekte oder neue Themenfelder) ist ein Agile Coach sehr wichtig, wenn es darum geht, dem Team die neue Aufgabe und die Motivation dahinter bekannt zu machen. Ein durch einen Coach organisierter Kickoff-Workshop sorgt dafür, dass das Team sich schnell als solches begreift und zielgerichtet mit der Arbeit loslegen kann.
Weiterentwickeln der Organisation
Die Coaches der verschiedenen Bereiche tauschen sich untereinander aus und fördern die Kooperation zwischen den Teams und Bereichen. Sie erfassen unterschiedliche Arbeitsweisen und geben neue Impulse an ihre Teams weiter. Da sich Probleme innerhalb der Organisation auch in der Arbeit der einzelnen Teams niederschlagen, bekommen Agile Coaches einen guten Eindruck davon, welcher Veränderungsbedarf in der Gesamtorganisation besteht.
Wie sollten Agile Coaches idealerweise eingesetzt werden?
Damit sie ihren vollen Mehrwert entfalten können, ist der Einsatz von Agile Coaches an einige wenige Bedingungen geknüpft:
- Jedes Team sollte einen Agile Coach zugewiesen bekommen. Dabei muss ein Agile Coach nicht exklusiv für ein Team arbeiten, allerdings sollten seine Teams aus dem gleichen Bereich kommen.
- Für jeden Bereich sollte es im Umkehrschluss mindestens einen Agile Coach geben, der die Bereichsleitung und die Product Owner durch die Aufnahme eines Stimmungsbildes des Bereichs in ihrer Arbeit unterstützt.
- Ein Agile Coach sollte die Zeit haben, an allen Zeremonien seiner Teams teilzunehmen. Zum einen, um durch Moderation und Aufrechthalten der Konzentration/ des Fokusses bestmögliche Arbeitsergebnisse zu ermöglichen. Zum anderen, um die Arbeitsweise des Teams zu beobachten, um sie daraufhin optimieren zu können.
- Agile Coaches müssen die Möglichkeit haben, sich untereinander auszutauschen. Dabei ist es durchaus ratsam, die Coaches selbst in einem Team zusammenzufassen und nicht disziplinarisch auf die einzelnen Bereiche aufzuteilen. So lässt sich besser die Mitarbeiterentwicklung auf ihre speziellen Bedürfnisse anpassen und der Austausch ist über Team-Dailies einfach geregelt.
Fazit
Durch die fortschreitende Etablierung agiler Entwicklungsmethoden hat sich auch die Tätigkeit der Agile Coaches verändert. Vom Moderator der Scrum-Zeremonien und Problemlöser für die Teams, entwickelte sich die Rolle hin zu einem Coach, der das Team begleitet. Er hat stetig die Arbeit des Teams im Blick und optimiert sie schrittweise. Seine Tätigkeiten sind vielleicht nicht leicht zu quantifizieren, die Auswirkungen lassen sich aber qualifizieren. Die Problematik dabei ist, dass diese Auswirkungen erst dann zu Tage treten, wenn das Team eine Zeit lang ohne die Unterstützung des Agile Coaches auskommen musste. Erst dann wird deutlich sichtbar, welchen Einfluss er auf die Leistungen des Teams hat. Ein Agile Coach ist heutzutage nicht nur der verlängerte Arm des Agilen Manifests, sondern er ist essentiell für den stetigen Verbesserungsprozess von Entwicklungsteams und der gesamten Organisation. Aus diesem Grund kann es sich keine ambitionierte Entwicklungsabteilung leisten, auf Agile Coaches zu verzichten.