Team Topologies /
Modernes Organisationsdesign
Warum crossfunktional und Agil scheisse ist ...
Ganz früher
Wie wir früher Teams gemacht haben ....
... als wir keine Ahnung hatten.
Frontend Team
Service Team
Business Logic Team
Database Team
Things to Understand
- Meine Domäne
- Die APIs des Layers drunter
Frontend Team
Service Team
Business Logic Team
Database Team
Things to Understand
- Frontend
- APIs
- Business Logic
- Database
Things to Understand
- Frontend
- APIs
- Business Logic
- Database
- Arbeitsweise
- Business Domain
- Produktvision
- Backlog
Things to Understand
- Frontend
- APIs
- Business Logic
- Database
- Arbeitsweise
- Business Domain
- Produktvision
- Backlog
- Strategie
- Kundenentwickung
- Hiring
- Beschaffung
Kognitive Last & Kontextßwitching
INTRINSISCH
EXTRINSISCH
LERNBEZOGEN
Intrinsisch
Dinge, die ich für meine aktuelle Aufgabe einfach brauche.
Wie viele Dinge muss ich berücksichtigen?
Wie interagieren die Dinge miteinander?
EXTRINSISCH
Was muss ich dazu noch beachten? Welche äusseren Anforderungen gibt es noch?
Lernbezogen
Kognitive Belastung um das benötigte Wissen zu lernen, das ich dann als intrinische oder extrinische kognitive Belastung jonglieren muss.
SUM(INTRINSISCH
+EXTRINSISCH
+LERNBEZOGEN)
<= CONST
AGILE WTF?!!!
- Frontend
- APIs
- Business Logic
- Database
- Arbeitsweise
- Business Domain
- Produktvision
- Backlog
- Strategie
- Kundenentwickung
- Hiring
- Beschaffung
Dann lieber KLASSISCH ...
Hmm, das funktionierte aber auch nicht ...
Reduktion kognitiver Belastung
- Analyse auf Basis kognitiver Last
- Passender Teamschnitt
- Interaktionen zwischen Teams
- Effizienz in Lernen und Kolaboration
Title Text
Subtitle
Team Topologies
Stream aligned Teams
Stream aligned Teams - Eigenschaften
- kontinuierliche Feature-Delivery in Produktion
- schnelle Reaktion auf Daten aus Produktion
- kontinuierliches Experimentieren
- wenige Hands-Off zu anderen Teams
- Kunde der anderen Teams (Subsystem, Enabling, Platform)
- Autonomy, Mastery & Purpose
Stream aligned Teams - Verantwortung
- Design and architecture
- Development and Coding
- Application Security
- Commercial and operational viability analysis
- Infrastructure and operability
- Metrics and Monitoring
- Product Management and Ownership
- Testing and Quality Assurance
- User Experience
Stream Aligned Team Trouble
- Featuredruck vs Innovation
- Featuredruck vs Entwickeln von Capabilities
- Teamübergreifendes Lernen
- Feature Teams brauchen sehr hohe Reife
- Product Teams brauchen ein Support System
- Cloud Teams brauchen Infrastruktur
Technical Consulting Teams
- Cross-Cutting zu stream aligned teams
- bandwidth to research
- develop tools, methodologies etc
Enabling Teams
- sind in kontinuierlichem, regelmäßigem Kontakt zu Teams
- bei Bedarf auch Teil der Teams
- sorgen dafür, dass zukünftige Probleme rechtzeitig mit Tooling, Methoden und Ansätzen gelöst werden können
- stützen den Technology Lifecycle im Teams
- erlaubt es, neue und komplexe Technologien zu verstehen und einzusetzen
- Training, Workshops, HandsOn-Kooperation
SRE Teams
Beispiele für erfolgreiches Enabling
- 72% schnellere Deployments
- 7 mal mehr Deploys pro Tag
- Doppelt so schnelle Analyse / Medium Time to Fix
- Reduzierung des Aufwandes pro E2E-Test um 50%
Beispiele für erfolgreiches Enabling
Welche Folgen hat das für die kognitive Belastung der Stream-Teams?
Wann man was braucht
COMPLICATED SUBSYSTEMS
- Legacy-Systeme ohne gute Doku?
- Workflow-Engines
- das ERP
- Verteilen über mehrere Teams?
- Als Teilaufgabe in einem Team?
- Als Feature-Thema in einem Feature-Team?
COMPLICATED SUBSYSTEM Teams
- Abgetrennte Teams
- Spezialisten für genau diese Domäne
- keine anderen Domänen
- Komponententeam, aber mit anderer Motivation
- Am Anfang viel Interaktion mit anderen Teams
- Am Ende vor allem Schnittstellen
Title Text
Subtitle
Team Topologies
Stream aligned Overflow
- streamaligned-Team kümmert sich um
- building
- running
- fixing
- das heißt ...
- monitoring, alerting, reporting, error logging
- deployment, scaling, failover, redundancy
- ....
Platform Teams
- Dienstleister für die stream-aligned teams
- verstehen den Bedarf der Teams genau
- erlauben Self-Service für alle Dinge die häufiger passieren
- Fokus auf Automatisierung, Usability und Reliability
- schnelles Prototypen und evaluieren mit den Stream-Aligned Teams
- Fokus auf Minimierung der kognitiven Last der Teams
Optimierung auf Flow
Avoid Silos
- Testing and QA
- Database
- UX / UI
- Architecture
- Data Processing - Analytics
Team Topologies
By Johann-Peter Hartmann
Team Topologies
- 407