Das Scrum Team schätzt die Aufwände der einzelnen Backlog Elemente ab, und beginnt mit der Implementierung der für den nächsten Sprint machbaren Elemente. Dazu wird vor dem Beginn des Sprints ein weiteres Planungstreffen durchgeführt, bei dem die höchst priorisierten Elemente des Backlogs und konkrete Aufgaben aufgeteilt werden. Das Team arbeitet selbstorganisiert im Rahmen einer Time Box (dem Sprint), und hat das Recht (und die Pflicht), selbst zu entscheiden, wie viele Elemente des Backlogs nach dem nächsten Sprint erreicht werden müssen, man spricht dabei von commitments.
Das Scrum Team agiert völlig autonom und alle Teammitglieder erstellen ihre Arbeitsergebnisse gemeinschaftlich.
Das Scrum Team sollte aus den „richtigen“ Mitarbeitern bestehen. D.h. fachlich für die jeweiligen Aufgaben kompetent und teamfähig. Weiterhin müssen externe Abhängigkeiten möglichst vermieden werden. Nur so kann das Team eine Verpflichtung zum Erreichen eines Zieles auch wirklich eingehen. Entstehen jedoch solche Abhängigkeiten ist das Team evtl. nicht ausreichend besetzt. Alle für einen Sprint notwendigen Rollen müssen im Team vertreten sein (Architekt, Entwickler, Tester, Dokumentationsexperte, User, Designer, DB-Experte,…). Spezialisten im Team, die nur ihre Aufgabe erledigen sind überflüssig. Teammitglieder müssen neben ihrem Spezial-wissen auch interdisziplinär handeln können (Generalisten).
Das Scrum Team organisiert sich selbst, es hat keinen Teamleader.
Grundlage für die Selbstorganisation sind Sprint Backlog, Sprint Burndown Bericht und Daily Scrum Besprechung.
Die intensive Zusammenarbeit des Teams erhöht das Auftreten von Konfliktsituationen. Der Scrum Master muss hier versuchen dem Team entsprechend Konfliktlösende Methoden anzubieten und es hier entsprechend schulen und unterstützen.
Optimale Teamgröße
Generell sagt man, die Größe eines Scrum-Teams liegt zwischen 3 und 8 Personen. In kleinen Teams ist es wichtig sicherzustellen, dass alle fachlich Aufgaben gelöst werden können.
Ich persönlich habe mit einem 5-Personen Team die besten Erfahrungen gemacht. Die Kommunikationspfade sind bei fünf Personen überschaubar un jeder Mitarbeiter findet Gehör. Mit jedem zusätzlichen Mitarbeiter steigt die Komplexität der Kommunikationspfade exponentiell an, wodurch es zum einen schwierig ist auf dem Laufenden zu bleiben, an was die Teammitglieder gerade arbeiten und zum anderen wird es einfacher sich im Team „zu verstecken“. Ist ein Team zu groß wird die Leistung der einzelnen Mitarbeiter geringer, da es ja genügend Schultern gibt, auf die sich die Herausforderung verteilen lässt. Das Akronym „Toll Ein Anderer Machts“ trifft dann schließlich zu.
Vollzeitarbeit im Scrum Team
Mitarbeiter sollten möglichst Vollzeit und über die gesamte Dauer des Projektes beteiligt sein. Teilzeitmitarbeiter sollten an den Sprint Planungssitzungen und dem Sprint Review teilnehmen.
Ergänzung: 2016-05-29:
Für die Scrum Teams, die ich geleitet habe oder leite ist die Vollzeit Verfügbarkeit das größte Problem. Da wir ausschließlich im Projektgeschäft unterwegs sind gibt es noch häufig Nacharbeiten in abgeschlossenen Projekten, während neue Projekte bereits starten. Dadurch kommt es häufig vor, dass Teammitglieder des alten Projektes teilweise ungeplant nicht verfügbar sind. Dadurch wird eine große Unruhe in die Projektarbeit gebracht und die Volatilität des Teams leidet darunter sehr. Daraus ergibt sich für mich die wichtigste Aufgabe eines Scrum-Masters: Das Zusammenhalten des Teams, indem zum Einen versucht wird die „Nacharbeiten“ planbar zu machen oder Anfragen durch andere Projektleiter abzufangen und eventuell andere Mitarbeiter außerhalb des Teams für die Nacharbeiten zu finden.
Teams müssen Räumlich nah beieinander arbeiten können, um deren Kommunikation möglichst hoch zu halten. Allerdings ist dies beim korrekten Einsatz von heutigen Technologien (im Jahre 2016) nicht mehr so essentiell, wie es früher (im Jahre 2008) zu bewerten war. Eine Räumliche nähe der Teammitglieder ist vor Allem für die Review- und Planungs- Retrospektivemeetings unerlässlich, allerdings kann die Entwicklungs-Arbeit zum Teil auch Remote – also in z.B. Heimarbeit erbracht werden. Wichtig ist hier, dass alle Teammitglieder untereinander elektronisch via z.B. Skype, Bildschirmsharing oder anderen Mitteln verbunden sind. Technologien wie Visual Studio Online bieten außerdem herausragende Möglichkeiten, um Projektarbeit auch in verteilten Teams effektiv zu organisieren. Dennoch würde ich ein Team, dass sich vor Ort persönlich trifft und zusammen arbeitet immer bevorzugen und ausnahmen für die Heimarbeit verabreden. Vollständig Remote arbeitende Teams können funktionieren, sind meines Erachtens aber nicht so hoch motiviert und der Zusammenhalt im Team ist oft schlechter und somit leider auch das gelieferte Ergebnis.
Funktioniert ein Team nach mehreren Sprints gut, so gilt: Never change a winning team.
Aufgaben des Scrum Teams
- Schätzt die Aufwände für die einzelnen Backlogs
- Entscheidet eigenständig, wie viele Backlogs beim nächsten Sprint erreicht werden müssen (commitments)
- Entscheidet selbst, wie es seine Arbeit organisiert
- Führt die Arbeiten für einen Backlog aus
Normen
Teams sollten sich Normen schaffen. Bspw. Architekturrichtlinien, Kodierungsrichtlinien, eingesetzte Werkzeuge etc.. Eine Sprint Retrospektive mit anderen Projekten sollten dazu genutzt werden Normen auch unternehmensweit einzuführen.