Scrum: So arbeiten Sie jeweils an einer Story

12

Ich wurde als Scrum Master in einem neu formierten Scrum Team nominiert. Wir haben schon einige Sprints gemacht. Am Anfang habe ich versucht, mein Team dazu zu bringen, jeweils an einer Geschichte zu arbeiten. Aber es hat nicht funktioniert. Mein Team hatte Schwierigkeiten, die Aufgaben so zu verteilen, dass sie gleichzeitig an einer Story arbeiten können. Vielleicht machen wir etwas falsch?

Zum Beispiel: Wir haben eine Geschichte, um einen neuen Dialog zu erstellen. Wir erstellen die folgenden Aufgaben:

  • Erstellen Sie Modellklassen
  • Modelldaten aus der Datenbank lesen
  • Verbinden Sie Modellklassen mit Ansicht
  • Implementieren Sie das Dialoghandling
  • Daten beim Schließen speichern
  • Testdokumentation
  • Lösungsbeschreibung

Können diese Aufgaben von mehr als einer Person gleichzeitig ausgeführt werden? Die Aufgaben - mehr oder weniger - bauen aufeinander auf. Oder gestalten wir die Aufgaben falsch?

Jürgen
quelle

Antworten:

19

Warum sollte das gesamte Team an einer einzigen Geschichte arbeiten?

Warum machen Sie Geschichten nicht klein genug (und unabhängig genug), damit eine Person (oder besser ein Paar, das die Paarprogrammierung durchführt) an einer einzelnen Geschichte arbeiten kann? Dieser Prozess hilft auch, die Anforderungen besser zu definieren und sowohl über das Problem als auch über die Implementierung nachzudenken. Schätzungen können auch genauer werden, aber hier keine Garantien.

Patkos Csaba
quelle
6

Während dies stark von der Größe der User Story abhängt, sollte in vielen Fällen nur ein Entwickler einer Story zugewiesen werden, um zu vermeiden, dass Ihre Entwickler sich gegenseitig auf die Zehen treten. Obwohl größere oder sehr komplexe Storys möglicherweise mehr Entwickler erfordern, ist es möglicherweise auch möglich, diese Storys in viele kleinere Storys zu unterteilen, die individuell zugewiesen werden können.

Ryathal
quelle
"... vermeiden Sie, dass Ihre Entwickler sich gegenseitig auf die Zehen treten": Wie passt diese Idee zur Paarprogrammierung (vorausgesetzt, dass sie passen kann)?
Giorgio
1
@Giorgio Bei der Paarprogrammierung wird nur von einem Programmierer "gefahren", sodass nur eine Person Änderungen vornimmt. Probleme treten auf, wenn mehrere Entwickler im selben Bereich herumstöbern.
Ryathal
2

Im Allgemeinen unterteilen wir die Storys in Dev / Infra / Analyst-Unteraufgaben.

  1. Im Allgemeinen ist alles, was mehr als ein Tag Arbeit ist, eine Geschichte.

  2. Sobald die Aufgaben aufgeschlüsselt sind, arbeiten ein oder maximal zwei Entwickler an einer Story, abhängig von der Anzahl der anstehenden Aufgaben. Normalerweise ist es eins.

  3. Wir protokollieren die aufgewendete Zeit und aktualisieren die verbleibende Schätzung am Ende des Tages vor unserer Abreise oder vor dem täglichen Aufstehen.

  4. Unteraufgaben werden für alle neuen Probleme erstellt, die während der Arbeit auftreten.

  5. Eine Geschichte, die länger als 2 Wochen dauert, gilt als Epos.

  6. Ein Epos kann aus vielen Geschichten bestehen

JVXR
quelle
2

Was Sie von Ihrem Team erwarten , heißt Schwärmen , aber nicht jedes Rückstandselement kann vom gesamten Team umschwärmt werden. Allgemeiner Gedanke ist, dass das Schwärmen einige Voraussetzungen erfordert:

  • Ein funktionsübergreifendes Team
  • eine nicht triviale Geschichte
  • eine Definition von "erledigt", die die Einbeziehung des gesamten Teams impliziert

Wenn Sie eine Story in Aufgaben aufteilen, sollte sich das Team bereits im Schwarmmodus befinden, damit die generierten Aufgaben mit dem Schwarm kompatibel sind und das gesamte Team einbeziehen können.

Aber seien Sie vorsichtig, wenn Sie zu oft oder mit zu vielen Personen gleichzeitig schwärmen, da es zu einem Überwärmungsproblem kommen kann, wenn einige Konflikte zwischen Teammitgliedern auftreten, da zu viele an demselben Element arbeiten.

Vielleicht möchten Sie Mike Cohns lesen. Sollte ein Team immer nur einen Rückstand auf einmal haben? oder diesen Artikel, den ich (gestern) geschrieben habe und der sich genauer mit Fehlern befasst: Schwärmen oder nicht schwärmen

Matthias Jouan
quelle
1

Ein großer Teil von SCRUM ist, dass das Team diese Art von Entscheidungen treffen sollte. Das Backlog sollte die User Stories mit hoffentlich genügend Informationen enthalten, damit Aufgaben generiert werden können.

Während es möglich sein mag, eine User Story in ein Element zu zwingen, an dem das gesamte Team gleichzeitig arbeiten kann, ist es wichtiger, dass das Team die zu bearbeitenden Elemente auswählt, die Aufgaben zum Beenden der User Story definiert und den täglichen Stand verwendet um zu sehen, ob Sie mit der versprochenen Arbeit auf dem richtigen Weg sind.

Der Schmerz, den Sie verspüren, wenn Sie versuchen, jeweils nur an einer Geschichte zu arbeiten, muss vom Team anerkannt werden, und im Sprint müssen nachträgliche Lösungsmöglichkeiten aufgezeigt werden. Finden Sie heraus, was Sie richtig machen und welche Dinge verbessert werden müssen.

Anhand des Beispiels der Schwierigkeit, Aufgaben zu verteilen, an denen gleichzeitig gearbeitet werden kann, besteht eine mögliche Lösung darin, mehrere Storys anzunehmen und 3 oder 4 Elemente in einem Sprint auszuliefern. Da die Aufgaben für diese User Story aufeinander aufbauen, ist es schwierig, die Arbeit zu verteilen. Also anstatt zu kämpfen, umarmen Sie es.

Phil Patterson
quelle
0

Ihre Aufgaben scheinen, wie angegeben, "klein" genug zu sein, um verteilt zu werden, aber es gibt eine gewisse Kopplung zwischen Aufgaben wie der Modellierung der Daten und dem Abrufen von Daten aus der Datenbank.

Was möglich wäre, wäre, es in drei Hauptbereiche aufzuteilen, an denen Menschen gleichzeitig arbeiten können, mit einigem zusätzlichen Aufwand:

  • Backend (Datenbank, Modell usw.)
  • Front-End (unter Verwendung von Scheindaten)
  • Tests (Erwartungen, Szenario usw. festlegen)

Aufgaben, die nicht aufgeteilt werden können, können paarweise ausgeführt werden. Und natürlich ist an sich nichts auszusetzen, wenn zu einem bestimmten Zeitpunkt mehr als eine Geschichte im Gange ist. Nur solange jedes Mitglied des Teams weiß, was die anderen tun, und sie bei Bedarf aushelfen können (wie in "Shared Code Ownership").

Sie sollten Ihr Team fokussieren, ja, aber gleichzeitig müssen Sie alle und alle Beteiligten beschäftigen.

Wie groß ist Ihr Team? Dies ist auch ein Faktor; Es ist ziemlich schwierig, zehn Leute an einer Geschichte zu arbeiten, und wenn Sie können, ist Ihre Geschichte viel zu groß und sollte aufgeteilt werden (wie auch Ihr Team).

Cthulhu
quelle