2009-09-03 19 views
11

Sollten technische Elemente wie "Upgrade-Server von v1 auf v2" oder "Erhöhen der Startleistung" oder "Refactor-Login-Modul zur Reduzierung der Code-Komplexität" in den Produkt-Backlog aufgenommen werden, und wie sollte ein nicht technischer Product Owner dazu in der Lage sein priorisieren Sie sie gegenüber anderen funktionalen Backlog-Elementen?Scrum: Technische Elemente in einem Rückstand, der von einem nicht technischen PO verwaltet wird?

Sollte es einen separaten Rückstand für technische Sachen geben? Sollten wir eine gemeinsame PO-Rolle mit zwei Personen haben, die funktionale und technische Dinge im Produkt-Backlog priorisieren könnten?

Antwort

1

Ich habe Erfolg mit dem Dual-Rückstand Ansatz hat:

  1. Produktbestand durch das Produkt Eigentümer gehört. Es enthält Elemente auf Story-Ebene (Features), die vom Team geschätzt und dann vom Produkteigner priorisiert werden. Dieser Schätzprozess teilt die Geschichten in kleinere Aufgaben auf.

  2. Das Team-Backlog gehört dem Entwicklerteam. Es enthält Elemente auf Aufgabenebene, die relativ klein sind (kann innerhalb eines Sprints ausgeführt werden). Sie können beispielsweise als Hindernisse mit Geschichten verknüpft werden: Um die Geschichte zu vervollständigen, müssen zuerst die folgenden technischen Aufgaben erledigt werden. Sie können auch unabhängig sein, so dass sie für keine Geschichte per se benötigt werden, aber sie zahlen einige technische Schulden zurück, um eine höhere Geschwindigkeit in der Zukunft zu ermöglichen.

(Auf einigen großen, multi-Projekt Programme, die ich auch Programm Backlogs gehabt haben, die episch-Level Elemente enthalten, im Besitz und durch ein Programm-Management-Team priorisiert, weiter nach Geschichten in Product Backlogs aufgeteilt werden.)

+5

IMHO, der Dual-Backlog-Ansatz ist keine gute Praxis. Das Team sollte eher versuchen, technische Geschichten in geschäftlicher Hinsicht auszudrücken, um den Geschäftswert, den sie bieten, zu zeigen, um zu erklären, wie sie die Teamgeschwindigkeit beeinflussen. Auf diese Weise kann die PO sie wie jede andere Geschichte priorisieren. –

+0

Ich denke, mehr als einen Rückstand zu haben macht das Projekt oder Sprint Management zu einem Albtraum. Ich denke, es ist ein Anti-Muster. –

+1

Mehr als ein Backlog lässt den Product Owner und das Entwicklerteam in Konflikt. Wenn zwischen beiden Seiten Vertrauen herrscht, ist das kein Problem. Wenn es kein Vertrauen gibt, haben Sie größere Probleme. – Chris

10

der Regel in der ‚Vanille‘ SCRUM die technischen Aufgaben, die Sie nicht als separate Geschichten erwähnt gehen wird.

Für mich sollte die nicht-technische PO nicht auf die Geschichten wie "Aktualisieren Sie den Server" aussehen. Es ist keine Geschäftsgeschichte, es ist für den Endnutzer nicht sichtbar, daher ist es schwierig, Prioritäten zu setzen, wenn es auf diese Weise formuliert wird. Prioritäten sollten entsprechend dem Geschäftswert der Arbeit zugewiesen werden. "Upgraden" bedeutet nicht viel. "Mehr gleichzeitige Verbindungen zulassen", "Reduzierung der Ausfallzeit" oder sogar "Verbesserung der Teamgeschwindigkeit" könnte für eine nichttechnische Person viel wertvollere Erkenntnisse liefern. Wenn Sie kein nicht-technische Beschreibung fragen Sie sich eine Frage über die Notwendigkeit der Aktualisierung :)

Die ‚Refactoring‘ Geschichte ist noch komplizierter finden. Hast du dich gefragt, warum ist es überhaupt eine Geschichte? Refactoring könnte als eine Aufgabe in der Geschichte getan werden, aber es ist selten eine Geschichte für sich. Also, wenn Sie Login-Arbeit besser machen wollen oder mehr Funktionen zur Verfügung stellen wollen, ist das eine Geschichte, aber das Basteln unter der Haube zählt nicht als eine. Bitte beachten Sie auch, dass ein Refactoring ohne Geschäftszweck leicht zu einer so genannten "Goldplattierung" führen könnte.

Ich würde vorschlagen, die "Upgrade" -Geschichten als eine Spitze mit der "Verbesserung der Leistung" und "Re-Faktor" sein die Aufgaben für eine relevante Geschäftsgeschichte.

P.S. Vielleicht haben Sie eine gute Diskussion zu diesem Thema (meist in Teil 3 davon) in dem ausgezeichneten Buch von Mike Cohn finden genannt „User Stories Applied: For Agile Software Development“.

+1

Einige Aufgaben können nicht in den beiden genannten Gruppen kategorisiert werden. Einige Aufgaben sind vorbereitende Aufgaben wie: Vorbereitung der Code-Generierung, Schulung der Teammitglieder, Erstellung der Logging-Infrastruktur, Vorbereitung der grundlegenden Entwicklungsinfrastruktur, Trennung der Projekte in 3 verschiedene Projekte, um mehr Kontrolle über sie zu haben ... wie begegnet man ihnen? –

2

ich mit der Ansicht überein, auf dem Business-Nutzen jeder technischen Geschichte suchen und es auf dem Hauptprodukt Bestand Tracking

Ich glaube, dass es interne Geschichten auf die Geschwindigkeit/Fähigkeit des Teams zusammen, die werden manchmal bequemer verwaltet, indem den Entwicklern etwas Kapazität zugewiesen wird, insbesondere wenn der Product Owner nicht daran interessiert ist, diese Storys zu priorisieren oder zu verwalten. Zum Beispiel 10% Kapazität zuweisen, um Automatisierungsrückstand (von Legacy-Regression), CI-Server-Setup usw. zu testen

Ja, alles kann sicherlich in geschäftlichen Begriffen ausgedrückt werden, aber einige davon sollten als "die Art, wie wir unsere tun müssen" Job ", wo Vertrauen zwischen Product Owner und Team besteht, dass das Team die dafür zugewiesene Kapazität optimal nutzt.

+0

Können Sie mir ein Beispiel geben? Wie kann ich zum Beispiel erklären, "Code-Generierungs-Tool für das aktuelle Projekt bereit zu machen"? –