Ich habe gehört, dass Schwärmen im Zusammenhang mit Agiler oder Extremer Programmierung erwähnt wurde. Es scheint eine Ergänzung zum Pairing zu sein.
Was genau ist das Wann sollte es angewendet werden? Wie machst du das gut?
Ich habe gehört, dass Schwärmen im Zusammenhang mit Agiler oder Extremer Programmierung erwähnt wurde. Es scheint eine Ergänzung zum Pairing zu sein.
Was genau ist das Wann sollte es angewendet werden? Wie machst du das gut?
Antworten:
Die Idee ist, dass jeder in Ihrem Team zur gleichen Zeit an der gleichen Geschichte arbeitet. Anstatt dass sich jeder auf verschiedene Aufgaben konzentriert, konzentriert sich jeder auf eine Aufgabe, bis sie erledigt ist. Dann machen sie mit dem nächsten Schritt weiter, bei dem alle gemeinsam daran arbeiten.
Dies hilft Teams, die Schwierigkeiten haben, Geschichten vor dem Ende des Sprints zu beenden. Oft beenden Teams 80% aller Geschichten, aber keine sind vollständig. Dies ist weniger nützlich, als 80% der Storys vollständig zu Ende zu bringen, da unvollendete Storys für einen Endbenutzer (effektiv) keinen Wert haben. Es ist einfacher, Geschichten zu Ende zu bringen, wenn sich jeder im Team auf eine Geschichte konzentriert. Dies ist die Motivation für das Schwärmen.
Hier gibt es einige Schwierigkeiten. Beispielsweise kann die Qualitätssicherung Dinge nicht immer testen, bevor sie erstellt (oder sogar entworfen) wurden. In diesem Fall sollten Sie frühzeitig gemeinsam einen Entwurf erstellen, und dann kann die Qualitätssicherung Tests für den Entwurf und nicht für die tatsächliche Implementierung schreiben (die anfänglich fehlschlagen).
"Schwärmen" bezieht sich nur auf die Tatsache, dass mehrere Personen zusammenarbeiten, um eine Aufgabe oder Geschichte zu erledigen. Nach meiner Erfahrung machen Sie das nicht oft.
Normalerweise arbeitet jedes Mitglied meines Teams an einer anderen Aufgabe und / oder Geschichte. Wenn jemand zurückfällt oder wenn es den Wunsch gibt, eine Aufgabe oder Geschichte frühzeitig zu beenden, hören andere Menschen auf, an anderen Aufgaben zu arbeiten und "schwärmen", um die Aufgabe zu erledigen, was bedeutet, dass sie alle gemeinsam an einer einzelnen Aufgabe oder Geschichte arbeiten, bis sie fertig sind abgeschlossen.
Wir hatten kürzlich eine kleine Anzahl von Geschichten, die ziemlich langweilig und uninteressant waren. Ich gab dem Team einen kleinen Anreiz (Pizza) und eine Frist (Ende des Tages), um die Arbeit zu beenden, also schwärmten sie über die Geschichte und schlugen an einem Nachmittag mindestens ein paar Arbeitstage aus. Sie haben die Arbeit erledigt und sind früh aus dem Weg gegangen, und dann hat jedes Teammitglied alles wieder aufgenommen, woran sie gearbeitet haben. Sie bekamen ein kostenloses Mittagessen, ich erledigte frühzeitig die Arbeit, die sich aufgrund der Langeweile hätte hinziehen können, und das Team war ihrem Sprint voraus. Win-Win-Win.
"Schwärmen" ist nichts anderes als ein ausgefallener Begriff für "Hey, lass uns dir dabei helfen".
Schwärmen ist eigentlich ein zentrales Konzept für Beweglichkeit. Es ist nichts, was getan wird, "wenn es Probleme gibt". Schwärmen bedeutet in seiner einfachsten Form, dass Teams gemeinsam an Elementen (Geschichten) arbeiten und diese vollständig bearbeiten. Das Kernkonzept besteht darin, "das Starten zu beenden und das Beenden zu beginnen". Mit anderen Worten: Anstatt dass jeder Entwickler unabhängig an einer Story arbeitet, konzentriert sich das Team auf eine begrenzte Anzahl von Storys / Aufgaben, um die einzelnen Aufgaben schneller zu erledigen. Stellen Sie sich das als den Unterschied zwischen einem Single-Thread-System und einem Multi-Thread-System vor. Wenn eine User Story 10 Aufgaben hat, die erledigt werden müssen, und jede 8 Stunden dauert, unter der Annahme, dass es keine Komplikationen gibt, könnte ein Entwickler jede Aufgabe nacheinander bearbeiten und die Story in 80 Stunden oder in etwa zwei Wochen (bei einem Sprint von 10 Tagen) abschließen 8 Entwicklerstunden pro Tag). Was ist, wenn zwei Entwickler die Aufgaben aufteilen und gleichzeitig bearbeiten? Dieselben 80 Arbeitsstunden können auf diese Weise in einer Woche erledigt werden. Fügen Sie ein drittes hinzu, und Sie können sehen, dass dies in 3 bis 4 Tagen erfolgen kann.
Das Schwärmen kann auf verschiedene Arten erfolgen:
Teams, die jedem Entwickler eine Story geben, neigen dazu, zu viel "Work in Progress" oder WIP zu haben, und oft werden viele Storys gestartet, aber nicht fertiggestellt. Dies ist ein ANTIMUSTER und NICHT die beste Vorgehensweise.
Schwarmteams haben in der Regel weniger WIP und vervollständigen mehr Storys - und damit meine ich Entwickelt, Getestet, Genehmigt und Bereitstellungsbereit. Dies ist also eine Übung, die den Kern der Beweglichkeit ausmacht.
Der folgende Artikel zu InfoQ beschreibt einen Ansatz zum Schwärmen:
Lesen Sie den Artikel für die detaillierte Erklärung.