Da Du diesen Text hier liest, bist Du offensichtlich genau so ein Nerd wie wir. Komm zu uns und bewerbe Dich bei ///\/ DevBoost: https://devboost.com/karriere (https://api.devboost.com)

Die Organisation von Teams in der Softwareentwicklung optimieren: Unsere Produktorganisation lebt!

Dein Unternehmen wächst und Eure Produktentwicklung fühlt sich plötzlich langsamer und aufwendiger an? Dann solltest Du Eure Teamorganisation optimieren! Im Blogbeitrag erfährst Du, welche Modelle die Teamorganisation verbessern und erhältst 6 Tipps, die für ein lebendiges und anpassungsfähiges Unternehmen sorgen.

von Christian Wende, Lesezeit: 9 Min.

In diesem Blogbeitrag erfährst Du…

wie 1.000 Papierwürfel uns geholfen haben, den Flaschenhals in der Produktentwicklung zu identifizieren,

welche Faktoren Du bei der Organisation von Produktentwicklungsteams kennen solltest,

warum „mehr Teams“ nicht immer schnellere Produktentwicklung bedeutet,

mehr über 3 effektive Methoden zur Teamorganisation

und Du erhältst 6 praktische Tipps, wie Du eine lebendige, anpassungsfähige Teamorganisation in Deinem Unternehmen etablierst.

Wie 1.000 Papierwürfel uns geholfen haben, den Flaschenhals in der Produktentwicklung zu identifizieren

„Hat jemand Karl gesehen?“

„Ja, der sitzt da – hinter der Wand aus Würfeln.“

Die Würfel hatten wir mitgebracht, sie veranschaulichten ein Problem und sie halfen, es zu lösen.

Aber von Anfang an: Vor ein paar Jahren bat uns ein Entwicklungsmanager bei einem unserer Kunden um Hilfe. Sein Unternehmen hatte einen erfolgreichen Produktlaunch geschafft und war in den letzten 12 Monaten enorm gewachsen. Sie hatten sich mit einem innovativen Wertversprechen in einem boomenden Markt positioniert. Aber der Manager beschrieb sein Problem so: „Wir haben tausende großartige Möglichkeiten, Mehrwert zu schaffen, wir haben hunderte talentierte und engagierte Kollegen, aber ich habe das Gefühl, dass wir im letzten Quartal nicht mal 10% unserer Ziele erreicht haben. Ich habe das Gefühl, dass wir uns mehr mit uns selbst beschäftigen als mit unseren Kunden.“

Wir teilten seinen Eindruck. Eines unserer Teams, das die Entwicklung unterstützen sollte, klagte über unklare Anforderungen und zu viele Abhängigkeiten von anderen Teams. Sie brauchten die Unterstützung des Plattformteams, um Skalierungsprobleme zu beheben, bekamen unklare Bugmeldungen vom Supportteam, brauchten eine offizielle Freigabe der Release-Manager und mussten das Operations-Team nerven, um Log-Meldungen aus den Test- und Produktivumgebungen zu lesen.

Alle in der Organisation spürten die Symptome. Alle waren sich der Dringlichkeit des Problems bewusst. Die Lösung war aber nicht einfach. Sie konnten sich nicht einigen, wo sie anfangen sollten. Immer war es das Problem der „Anderen“, das zuerst gelöst werden musste.

Da erinnerten wir uns an die „Theory of Constraints“ nach Eli Goldratt:

Willst DU ein System verbessern, musst Du die Flaschenhälse identifizieren, die Erzeugung von Wert behindern.

So kamen wir auf die Idee mit den Würfeln. Wir bestellten in einem Shop für Werbemittel 1.000 Pappwürfel. Dann baten wir die Teams, jedes Jira-Ticket, das sie in das Produkt-Backlog aufnahmen, gleichzeitig auf einen dieser Würfel zu kleben.

Im Planning planten die Teams ihre Tickets für den nächsten Sprint und legten den zugehörigen Würfel auf einen Backlog-Stapel.

Wenn ein Entwickler an einem Ticket arbeitete, holte er sich den Würfel und legte ihn auf seinen Schreibtisch.

Übergab er das Ticket an einen Kollegen, ging er zu ihm, besprach das Ticket und stellte den Würfel auf dessen Schreibtisch ab.

Gab es ein Abstimmungsmeeting, brachten alle die relevanten Würfel mit. Manchmal waren es fast zu viele, um sie zu tragen.

War ein Ticket abgeschlossen, kam es auf den Release-Stapel.

Durch diese Prozedur konnten wir den „Fluss“ der Arbeit durch die Entwicklungsteams beobachten. So kam es auch, dass Karl hinter den Würfeln verschwand. Sein Stapel war der größte, wir wussten nun, wo unsere Optimierung ansetzen sollte. Aber Achtung: Nicht Karl war das Problem, sondern die Struktur der Teams, die Produktorganisation.

Welche Faktoren es bei der Organisation von Teams in der Produktentwicklung zu beachten gilt

Eins, zwei, viele… spätestens, wenn Du mit mehr als zwei Teams gemeinsam an einem Softwareprodukt arbeitest, stellen sich erste Fragen zur Teamorganisation:

·       Woran sollen die einzelnen Teams arbeiten?

·       Wie richtest Du sie auf ein gemeinsames Ziel aus?

·       Wie organisiert Du ihre Zusammenarbeit und schaffst Synergien?

·       Wie viel Abstimmung ist notwendig und wann wird Synchronisation zum Overhead?

Eigentlich haben Softwareentwickler vor allem eines im Sinn: Wir wollen ein erfolgreiches und nützliches Produkt für unsere Kunden entwickeln. Darüber sind wir uns einig. Doch wenn Du dieses Ziel als Team oder mit mehreren Teams erreichen möchtest, entsteht die Herausforderung, deren Zusammenarbeit zu organisieren.

Das ist die Aufgabe der Produktorganisation.

Selbst wenn ihr Euch über die Produktvision einig seid, gibt es unzählige mögliche Wege, diese umzusetzen. Das Abbilden der langfristigen strategischen Vision auf einen konkreten Weg erzeugt Abstimmungsaufwand. Aus der Vision müsst ihr konkrete Aufgaben ableiten, die ein einzelnes Team bzw. Teammitglied umsetzen kann. Dieser Aufwand wird oft als Synchronisationsoverhead oder Transaktionskosten einer Produktorganisation verstanden. Er entsteht in Meetings und individuellen Absprachen bzw. Übergaben.  Wir haben ihn anhand der Würfel auf Karls Schreibtisch veranschaulicht.

Die Transaktionskosten werden neben dem eigentlichen Aufwand für die Produktentwicklung oft übersehen, dürfen aber nicht vernachlässigt werden. Die Transaktionskosten auf Null zu reduzieren ist nicht möglich, da es dann keine Kommunikation in der Organisation und keine wirksame Zusammenarbeit mehr gäbe. Nehmen allerdings die Transaktionskosten überhand, rauben sie Zeit und Energie für wirksame Produktentwicklung.

„Mit mehr Teams wurden wir immer langsamer“

Der strukturelle Aufbau und die Prinzipien, die Eurer Produktorganisation zugrunde liegen, haben einen enormen Impact auf Eure Produktentwicklung. Gerade in Phasen des Teamwachstums nehmen Produktteams diesen Effekt deutlich wahr. Mit nur einem Team fühlt sich Eure Produktarbeit unglaublich schnell und agil an. Wächst Eure Organisation, kommen neue Teams hinzu, doch die Entwicklungsgeschwindigkeit steigt nicht in gleichem Maße an. Stattdessen fühlt sich alles langsamer und aufwendiger an. Verantwortlichkeiten müssen abgestimmt, Engpässe müssen aufgelöst und Abhängigkeiten müssen beachtet werden.

Das Gefühl der Verlangsamung ist objektiv erklärbar. Es zeigt die Wirkung der Transaktionskosten. Arbeitest Du mit nur einem Produktteam, sind die Transaktionskosten gering, denn:

  • Alle im Team arbeiten direkt am Kunden, kennen ihre Nutzer noch persönlich. Feedback fließt direkt und Wissen entsteht schnell – die Organisation lernt.  
  • Alle Teammitglieder setzen ihre Fähigkeiten pragmatisch und direkt ein, um wirksamen Mehrwert zu schaffen – die Organisation liefert Product Outcome.
  • Die Abstimmung im Team verläuft intuitiv und vertrauensvoll – die Organisation stimmt sich ab, mit minimalen Transaktionskosten.

Kommen neue Teammitglieder hinzu bzw. baust Du neue Teams auf, steigt der Abstimmungsaufwand, damit Deine Organisation gemeinsam lernen und liefern kann. Manchmal so sehr, dass Euer Produktfortschritt stagniert.

Dagegen hilft nur eine durchdachte Produktorganisation.

3 effektive Modelle zur Teamorganisation

Es gibt viele gute und hilfreiche Ratgeber für erfolgreiche Produktorganisationen:

  • Das „Spotify-Modell“ etabliert Strukturen wie selbstorganisierte Squads, Tribes, Guilds und Chapters um Autonomie, Abstimmung und Synergie in der Produktorganisation auszubalancieren und Outcome zu priorisieren.
  • Mit „Empowered Product Teams“ argumentiert Marty Cagan dafür, Teams die Gesamtverantwortung (Discovery + Delivery) zu übergeben und so kundenzentriertes Produkt-Outcome zu fördern.
  • Im Buch „Team Topologies“ beschreibt Matthew Skelton die Idee einer Produktorganisation, die sich an der Wertschöpfung ausrichtet (Stream-Aligned Teams).

In zwei wesentlichen Aspekten sind sich die Autoren der verschiedenen Organisationsmodelle einig:

  1. Teams sollen möglichst eigenverantwortlich einen direkten Einfluss auf das Produkt-Outcome, d.h. den Mehrwert für die Produktnutzer haben.
  2. Produktorganisationen müssen so aufgebaut sein, dass sie notwendige und nützliche Abstimmung fördern und eigenverantwortliche Arbeit am Produkt maximieren.

Auch wenn die genannten Ansätze Vorschläge und Beispiele für effektive Produktorganisationen liefern, sind sie noch keine Blaupause für Dein Produktunternehmen.

Das Spotify-Modell wurde in der Vergangenheit manchmal als „Muster“ missverstanden, wird aber selbst bei Spotify nicht in Reinform angewendet. Marty Cagan liefert eine Reihe von nützlichen Prinzipien und Best Practices, die effektive Produktorganisationen fördern. Mathew Skelton macht es in Team Topologies besonders deutlich, dass eine effektive Produktorganisation extrem kontextabhängig und vor allem zeitveränderlich ist.

Doch wie baust Du daraus Deine Produktorganisation?

Was Du bei der Optimierung Eurer Teamorganisation beachten solltest

Willst Du die „perfekte“ Organisation für Dein Produkt bzw. Deine Produktteams finden, solltest Du die Produktorganisation als ein lebendiges Wesen betrachten.

  • Teams bilden die Organe Deiner Organisation.
  • Die Rituale, Meetings und Abstimmungsrunden innerhalb und zwischen Teams bestimmen deren Zusammenarbeit und Wirksamkeit.

Ähnlich wie bei einem biologischen Organismus, muss die Organisation ihre Struktur und ihre Zusammenarbeit an den Bedingungen ihrer Umwelt ausrichten, damit sie optimal wirken kann. Richtet sich die Teamstruktur zum Beispiel nicht an der Wertschöpfung Eures Produktes aus, habt ihr unnötig viele Hand-Overs zwischen Teams und eure Entwicklung verzögert sich. Muss sich ein einzelnes Team um zu viele komplexe Baustellen kümmern, wird es kognitiv überlastet und kommt deshalb schlechter voran. Es gibt also keine einfache und schnelle Lösung zur optimalen Teamstruktur, sondern es ist ein anspruchsvoller Balanceakt zwischen Autonomie und Aufteilung von Verantwortung bzw. Komplexität.

Hinzu kommt, dass sich die Bedingungen, unter denen Eure Organisation bestehen muss, ständig verändern. Ihr nehmt Teammitglieder hinzu, ihr baut neue Teams auf, Euer Produkt und damit Eure Wertschöpfung verändert sich. Auch Technologien verändern sich und damit die Möglichkeiten für Euer Produkt.

Eine statische Organisationsstruktur, die nach einem vorgegebenen Muster aufgebaut wird oder wie ein Baukastensystem funktioniert, ist damit auch keine langfristige Lösung. Das erklärt auch, warum Du nach jeder „großen Reorg“ das Gefühl hast, gleich in die nächste starten zu müssen.

In der Praxis beobachten wir bei der Weiterentwicklung von Produktorganisationen meist einen von zwei Extremfällen: Entweder wird versucht, durch riesige Reorgs die Produktorganisation mit einem großen Rundumschlag zu revolutionieren, oder Unternehmen halten viel zu lange an einer „erprobten“, aber veralteten Struktur fest.

In der Biologie gibt es keine riesigen Reorgs und auch keine Stagnation. Stattdessen passen sich komplexe, biologische Organismen kontinuierlich, in vielen kleinen Experimenten (Mutationen) und einer ständigen qualitativer Analyse (Selektionsdruck) an veränderliche Umgebungsbedingungen an.

6 praktische Tipps, wie Du eine flexible Teamorganisation etablierst

Auch für den Aufbau und die Optimierung einer effektiven Produktorganisation bewährt sich ein iteratives, evolutionäres Vorgehen. Teamstruktur und Zusammenarbeit bestimmen die Wirksamkeit der Produktorganisation. Kleine Experimente verändern diese Struktur bzw. die Zusammenarbeitsformen. Die Transaktionskosten erlauben die qualitative Analyse und Auswahl von wirksamen Veränderungen. So entwickelt sich die Produktorganisation systematisch weiter.

Willst Du eine lebendige Produktorganisation, die Raum für Produktentwicklung schafft, beachte die folgenden Tipps:

  1. Beginne mit dem Fluss Deiner Wertschöpfung und teile dessen Komplexität auf mehrere autonom lieferfähige Teams auf (Stream-Aligned Teams).
  2. Hat Dein Produkt sehr komplexe interne Komponenten, komplexe methodische oder prozessuale Anforderungen, dann helfen zusätzliche Teams mit einer „Lieferantenbeziehung“ und klaren Schnittstellen zu den Stream-Aligned Teams.
  3. Achte dabei unbedingt darauf, dass Deine Stream-Aligned Teams weiterhin autonom lieferfähig bleiben und nicht von den anderen Teams abhängen oder ausgebremst werden können.
  4. Die Qualität Deiner Produktorganisation bemisst sich an den Transaktionskosten in und zwischen Teams. Bestimme diese Kosten quantitativ und qualitativ anhand des Feedbacks der Teammitglieder.
  5. Nehmen die Transaktionskosten an bestimmten Stellen überhand, experimentiere mit Veränderungen der Teamstruktur oder der Zusammenarbeit und bewerte die Effekte der Veränderung anhand der Entwicklung der Transaktionskosten.
  6. Vermeide zu groß angelegte Reorgs, eine stagnierende Organisationsstruktur oder „blinde Verbesserungen“, bei denen Du Dich auf Dein Bauchgefühl oder Einzelmeinungen verlässt.

Beachtest Du diese Tipps, dann entsteht „wie von selbst“ eine Produktorganisation, welche die Komplexität Eurer Produktentwicklung beherrscht, in der Transaktionskosten bzw. Synchronisationsoverhead unter Kontrolle bleiben und in der genügend Zeit für die wirklich wichtigen und spannenden Themen der Produktentwicklung bleibt.

Du möchtest verstehen...

...wie es um Eure Produktorganisation steht?

...wie hoch Eure aktuellen Transaktionskosten sind?

...wie ihr Euch weiterentwickeln und optimieren könnt?

Dann lass uns das bei einem kostenfreien Gespräch herausfinden.

👉 Buch‘ Dir gleich hier Deinen Slot.

Mit der richtigen Teamorganisation zum erfolgreichen Produkt

Optimiere mit uns Deine Teamorganisation

Zum Beratungsgespräch
Zuletzt bearbeitet am 24.07.2023

Beitrag teilen