Das Beste aus Softwareentwicklung Teams herausholen
Über gute Teams zu verfügen ist kein Selbstgänger, auch nicht in der Welt der Software. Die positive Nachricht ist, dass Sie nicht bei Null starten müssen. Es existiert bereits eine Reihe von Regeln oder Tipps, die wir hierfür anwenden können. Der vorliegende Artikel enthält einige von ihnen.
Es gibt nicht nur unterschiedliche Typen von Menschen innerhalb eines Teams, sondern auch Teams, die auf unterschiedliche Weise arbeiten und agieren. Dies ist auch notwendig: nicht nur für ein kohärentes Endergebnis sondern auch für die adäquate Lösung der gestellten Herausforderungen. An dieser Stelle kommen zwei Theorien über den Aufbau von Organisationen ins Spiel, die als Ausgangspunkt für eine erfolgreiche Teamkonfiguration dienen.
Conwaysches Gesetz
1967 stellte Melvin Conway fest, dass Organisationen, die mit der Herausforderung konfrontiert werden, neue Systeme zu entwerfen und aufzubauen, in gewisser Weise darauf beschränkt sind, Systeme zu bauen, die ein Spiegelbild ihrer eigenen Kommunikationsstrukturen der Organisation darstellen.
In einigen Fällen kommt ein Projekt nicht richtig voran oder wird verlangsamt und niemand versteht wirklich, warum. Die Wahrheit ist, dass das Design der Organisation einen direkten Einfluss auf die Lösung hat und die Möglichkeiten der Software vielleicht nicht in vollem Maβe genutzt werden. Deshalb müssen wir darüber nachdenken, welches System aufgebaut werden soll, damit wir über eine geeigneteTeamstruktur verfügen, die es unterstützen kann.
Die Wahrheit ist, dass das Design der Organisation einen direkten Einfluss auf die Lösung hat und die Möglichkeiten der Software vielleicht nicht in vollem Maβe genutzt werden.
Die Dunbar-Nummer
Der Anthropologe Robin Dunbar hat herausgefunden, dass wir nur zu 150 Personen eine vollständige Beziehung aufbauen können. Das liegt an einer biologischen Eigenschaft: der Größe und Datenverarbeitungskapazität des Neokortex unseres Gehirns.
Diese Begrenzung als Referenz anzuerkennen, ist bei der Dimensionierung von Teams und deren Interaktionen, die zwischen ihnen entstehen werden, unerlässlich. Quantität bedeutet nicht zwingend eine höhere Qualität der Arbeit. Quantität kann sich sogar kontraproduktiv auswirken.
Aus Erfahrung lernen
Aus diesen beiden Theorien sowie unserer jahrelangen Erfahrung in verschiedenen Umgebungen und mit unterschiedlichen Teams und Konfigurationen haben wir einige Prinzipien extrahiert, von denen wir glauben, dass sie dazu beitragen können, das Beste aus den Teams herausholen, die Softwarelösungen entwickeln. Es handelt sich hierbei natürlich nicht um ein unfehlbares Rezept, aber vielleicht hilft es einigen Organisationen dabei, den Erfolg oder Misserfolg einiger ihrer konkreten Projekte zu verstehen.
Acht nützliche Ansätze für den Erfolg der Softwareentwicklung
- Code-Fehler, menschliches Versagen. Wenn der Code „nicht funktioniert”, hat das Problem in der Regel seinen Ursprung in der Art und Weise, wie die Teams organisiert sind sowie auch in der Art, wie ihre Komponenten zusammenwirken.
- Realistische Zielsetzung. Vermeiden Sie Ziele, die die Grenzen eines Teams überschreiten könnten.
- Strukturierte Teams. Anstatt Teams nach ihrem technischen Wissen oder nach den zugewiesenen Aufgaben zu strukturieren, scheint es besser, diese nach Geschäftsbereichen zu organisieren. Dadurch wird die Möglichkeit geschaffen, Menschen zusammenzubringen, die unterschiedliche Erfahrungen, Kenntnisse und sogar Herangehensweisen an Probleme liefern können.
- Organisationen sollten so gestaltet sein, dass sich bestimmte Mitglieder vom Rest der Teamarbeit isolieren können, um sich auf die Lösung bestimmter komplexer Aufgaben zu konzentrieren.
- Flexibilität. Egal, wie viel Zeit wir mit der Gestaltung unserer Organisation verbringen, sie wird nie perfekt sein, da sich das System ständig weiterentwickelt. Daher ist Flexibilität das A und O für ein effektives Design in jeder Phase der Entwicklung.
- Kleine Teams, große Ergebnisse. Manchmal wird ein positiver Effekt auf die Leistung erzielt, wenn wir kleine Einheiten schaffen, um so die Geschwindigkeit der Übernahme von neuen Informationen zu erhöhen.
- Kommunikationskanäle fixieren. Auch wenn es den gegenteiligen Anschein haben mag, ist die Kommunikatiosform „ jeder mit jedem“ ein geeignetes Rezept für Chaos. Die Fixierung der Kommunikation über spezifische, klar definierte Kanäle hilft tatsächlich, entkoppelte, modulare Lösungen zu kreieren.
- Begrenzte kognitive Belastung. Manchmal kann es sich durchaus als positiv herausstellen, die kognitive Belastung eines Teams zu begrenzen. Dieses Prinzip sollte immer dann beachtet werden, wenn das zu erstellende System sehr umfangreich oder in Bezug auf Technologie oder Geschäftswissen unbekannt ist.
Unter Berücksichtigung der genannten Aspekte und der Aussicht, komplexe Probleme lösen zu können, müssen Manager das Gleichgewicht, das zwischen Motivation und Koordination der Teammitglieder besteht, im Auge behalten. Nur so können die Ziele und Herausforderungen des Unternehmens erreicht werden. Es gilt zu erkennen, wann Prozesse die Generierung des Werteflusses verlangsamen. Auβerdem muss detektiert werden, wann eine korrekte und vollständige Teamzusammenarbeit notwendig ist, um das angestrebte Ziel zu erreichen. Ein Ziel, das nur als Team erlangt werden kann.