Jak poradzić sobie z 50% gorszych niż przeciętnie sprintów?

14

Jeśli dobrze rozumiem Scruma, w ten sposób określam pracę, którą mój zespół może podjąć w następnym sprincie:

  1. Średnia liczba ukończonych punktów w ciągu ostatnich kilku sprintów.

  2. Ta ilość to nasza średnia prędkość. W kolejnym sprincie zajmiemy się wieloma punktami fabularnymi.

Jest to średnia , więc jeśli historia się powtarza, w tym sprincie jest 50% prawdopodobne, że przyjmujemy za mało punktów historii, a 50% prawdopodobne, że przyjmujemy zbyt wiele punktów historii.

W przypadku 50% przyjęliśmy zbyt wiele punktów historii, które moglibyśmy:

  • Nie udało się ukończyć sprintu. Oznacza to, że nie dotrzymamy naszego zobowiązania do sprintu w połowie czasu.

  • Pracuj dodatkowo, aby nadrobić zaległości. Problem polega na tym, że to zapada tylko w jedną stronę. Ukończymy sprint, a liczba ukończonych punktów opowieści to odzwierciedli. Ponieważ zawsze kończymy, z czasem nasza średnia wzrośnie do tego stopnia, że ​​zawsze osiągamy dużą liczbę punktów fabularnych i spóźniamy się.


Czy moje rozumienie zobowiązań dotyczących średniej prędkości i sprintu jest prawidłowe?

Jeśli tak, co powinniśmy zrobić w przypadku 50% sprintu, w którym jesteśmy poniżej średniej?

Jeśli nie, co się pomyliłem?

Paul Draper
źródło
10
Teoretycznie 50% wszystkiego będzie z definicji poniżej średniej. (Cóż, przynajmniej jedna z definicji „średniej”). Tego należy się spodziewać, a nie o to się martwić. To poważny problem, jeśli martwisz się, że jesteś znacznie poniżej średniej.
Mason Wheeler,
8
Zgadzam się z @MasonWheeler. To, co powinieneś zrobić dla lekko poniżej przeciętnych sprintów, to ... żyć dalej. To nie jest problem, który wymaga rozwiązania. Nie podoba mi się też terminologia „nieudany sprint” i „zaangażowanie sprinterskie”. Zobowiązanie do sprintu polega na tym , że wykonasz tyle pracy, ile możesz odpowiedzialnie . To, że nie ukończyłeś 100% szacunkowych punktów , nie oznacza, że ​​„ nie zaliczyłeś sprintu”.
Eric King,
1
Tak, co powiedział @EricKing, szczególnie w świetle dobrze znanego faktu, że ludzie
Mason Wheeler,
1
@MasonWheeler: To, czy 50% jest poniżej średniej, tak naprawdę nie zależy od definicji średniej, ale od rozkładu prawdopodobieństwa, w szczególności zawsze jest prawdą, gdy rozkład jest symetryczny. Rzecz, w której 50% jest z definicji poniżej, nazywa się medianą.
Michael Borgwardt,

Odpowiedzi:

12

Czy moje rozumienie zobowiązań dotyczących średniej prędkości i sprintu jest prawidłowe?

Tak, masz sedno.

Jeśli nie, co się pomyliłem?

Chodzi o to, że jesteś pomijany punkty story są rzeczy można się zrobić . Niemal niemożliwe jest, aby każdy pracował nad historiami aż do końca sprintu. Jeśli robisz wszystko dobrze, większość programistów pozostanie „bezczynna” przez kilka dni podczas testowania historii (a testerzy będą w trakcie sprintu, gdy prace nad programami są w toku).

Bezczynnie umieszczam w cudzysłowie, ponieważ Twoi programiści nie siedzą i nie oglądają filmów z kotami, naprawiają błędy, dopracowują niektóre testy kodu / jednostki, dodają dokumentację dotyczącą procesów, myślą o projektowaniu historii w zaległościach lub jednym z inne dziesiątki przydatnych rzeczy, z których zespół programistów może skorzystać, ale nie pasują do historii.

Tak więc, jeśli będziesz odgadywał 50% czasu i nie zgadniesz 50% czasu, to nie znaczy, że nie uda ci się sprintem lub będziesz musiał pracować w nadgodzinach . Oznacza to, że nie będziesz miał tyle czasu na wykonanie tej różnej pracy (chyba że naprawdę przegapisz swoje szacunki). Ale to nie jest wielka sprawa, ponieważ różne prace nie są wrażliwe na czas, a na dłuższą metę wszystko się ułoży.

Telastyn
źródło
Jeśli dobrze cię rozumiem, czy można ukończyć wszystkie historie tylko w 50% przypadków?
Paul Draper,
@PaulDraper - nie, mówię, że powinieneś kończyć wszystkie swoje historie w 100% przypadków ... pozwól mi edytować i sprawdzić, czy nie mogę być bardziej pomocny.
Telastyn
1
@PaulDraper - kluczową rzeczą, o której mówię, jest to, że ukończenie wszystkich punktów historii nie zajęło 10 pełnych dni. Zawsze jest bufor między końcem pracy a końcem sprintu. Jest to bufor, który pomieści czas, który zajmuje więcej czasu niż oczekiwano.
Telastyn
Chciałbym móc zacytować tę odpowiedź kilka lat temu, kiedy mój zespół nie do końca rozumiał, co robić w ostatnim dniu każdego sprintu. Dobrze wyłożone. Dzięki.
MetaFight,
3
AAAAGH! NIE! „Jeśli robisz to dobrze, programiści będą bezczynni podczas testowania” jest niepoprawny! Robisz teraz mini-wodospad! W zespołach o wysokiej wydajności programiści dzielą historie na mniejsze elementy funkcjonalne, które można ukończyć w ciągu 1-3 dni. Chcesz, aby kod funkcjonalny wypływał do testowania i zatwierdzania jak najwcześniej. Nie ma WYPOWIEDZI dla „bezczynnych programistów”. Czy masz w 100% optymalne zautomatyzowane testy jednostek, integracji, AUAT, obciążenia / wydajności? Masz zautomatyzowane kompilacje, zautomatyzowane wdrożenia, doskonałe Dev-Ops i model CICD? Jeśli nie, jest wiele do zrobienia!
Curtis Reed
3

Czy moje rozumienie zobowiązań dotyczących średniej prędkości i sprintu jest prawidłowe?

Niestety, zostałeś źle poinformowany o kilku kwestiach dotyczących planowania sprintu w Scrumie. Po pierwsze, zespół programistów (DT) jest

... zorganizowane i upoważnione przez organizację do organizowania i zarządzania własną pracą. - Scrum Guide

Słowo to oznacza samoorganizację. Obejmuje to pracę prognozowania pracy, która zostanie wykonana w danym sprincie. DT nie jest poinformowany, co będzie działać na każdym sprincie, jest raczej uprawniony do wyboru własnej pracy. DT może potrzebować informacji takich jak prędkość historyczna, dobrze dopracowany Backlog Produktu i zdolność DT następnego Sprint do stworzenia prognozy. Ostatecznie to determinacja DT dotycząca tego, co można, a czego nie można osiągnąć w sprincie, powinna przeważać w ich prognozie; nie należy im mówić, ile pracy wykonają.

Zauważ też, prognozuj, a nie zobowiązanie. Słowo c zostało usunięte z Przewodnika Scrum, ponieważ zostało użyte do nadużywania Zespołu programistycznego. Prognoza jest preferowanym terminem.

Jeśli chodzi o prawdopodobieństwo pominięcia prognozy Sprint na niskim lub wysokim poziomie, nie uważam tego za istotne. W pewnym momencie więcej analiz nie daje lepszej dokładności i myślę, że jesteśmy teraz poza tym punktem.

Sprint może być również „Anulowany”; nigdy nie może zawieść. Sprint jest anulowany tylko wtedy, gdy cel sprintu staje się całkowicie przestarzały i nieistotny. Jest to bardzo rzadkie. Jeśli prognoza jest niepoprawna, zachowaj spokój i włącz Scrum. Czy masz retrospektywę? Kolejny sprint, twoje prognozy będą lepsze :).

jason.t. rycerz
źródło
3

Po pierwsze, twoja prędkość pochodzi z poprzedniego sprintu, a czasem z kilku ostatnich sprintu (Pogoda wczorajsza), a nie średnio z wszystkich poprzednich sprintu. Oczywiście, jeśli nie masz danych historycznych od swojego zespołu lub firmy, musisz wymyślić rozsądną wartość dla pierwszego sprintu. Podczas drugiego sprintu bierzesz ukończone punkty historii do sprintu. Jeśli miałbyś to przedstawić na wykresie, możesz zobaczyć zmiany w pierwszych kilku sprintach (na przykład 17 w pierwszym sprincie, 22 w drugim, 26 w trzecim, 24 w czwartym). Tego należy się spodziewać podczas normalizacji pracy zespołowej i procesu szacowania, a także lepszego zrozumienia projektu (technologia, dziedzina).

Nie oznacza to, że się nie dostosowujesz. Na przykład, jeśli masz tydzień, który jest tygodniem wakacji, pamiętaj o uwzględnieniu dni wolnych od pracy. Jeśli wiesz, że członkowie zespołu biorą urlop, zaplanuj mniej osób pracujących. Oczywiście zdarzają się również nieplanowane wydarzenia, ale możesz wyjaśnić je w retrospekcji sprintu i możesz zdecydować, jak wpłynie to na liczbę punktów historii, które wniesiesz do następnego sprintu.

Co do tego, co zrobić, „nie ukończyć sprintu” różni się od „nie ukończyliśmy wszystkich historii”. Dla mnie niepowodzenie sprintu oznacza, że ​​na koniec nie udało Ci się wyprodukować potencjalnie możliwego do wysyłki produktu - żadna z twoich historii nie jest kompletna, nie masz kompilacji, nie możesz wykazać żadnej wartości dodanej dla klienta lub użytkownicy.

Cokolwiek robisz, nie powinieneś pracować z opóźnieniem lub nadmiernie z czasem. Nazywa się to trwałym tempem ( Agile Alliance , Scrum Alliance ).

Wskaźniki, które mogą wystąpić, to:

  • Twój zespół nie pracuje w zrównoważonym tempie. Musisz pracować w godzinach nadliczbowych, aby ukończyć punkty fabularne zaplanowane na sprint. Zmniejsz swoje sprinty, aby ukończyć je na czas bez dodatkowego nacisku.
  • Twoja prędkość nie normalizuje się w czasie. Nikt nie spodziewa się, że prędkość nigdy się nie zmieni, ale jeśli zauważysz kolce lub huśtawki, radzisz sobie z tymi z retrospekcji. Dowiedz się, co je powoduje i usuń przyczyny.
Thomas Owens
źródło
1

Metodologia zwinna różni się w zależności od firmy, w jednym wdrożeniu może się znacznie różnić od drugiego. Pracowałem pod Agile z dwiema firmami. W pierwszej firmie, w której pracowałem, poważnie podeszli do swoich danych, w drugiej nie do końca. Więc z tego co wiesz, nikt nie zwraca uwagi na twoje dane.

To powiedziawszy, brzmi to tak, jakbyś martwił się niespełnieniem celów sprintu lub tym, co dzieje się, gdy masz niedokładne szacunki. Myślę, że tego rodzaju obawy i poglądy są powszechne, ale nie są szczególnie ważne. Zwinny jest przede wszystkim system do tworzenia oprogramowania, który wykonuje kilka czynności:

  1. Utrzymuje programistów w ruchu
  2. Zwiększa przejrzystość
  3. Pozwala na refleksję i stopniowe doskonalenie procesu

Na koniec dnia, jeśli źle oszacujesz sprint lub nie uda ci się sprint, to nie jest tak naprawdę wielka sprawa. Ludzie, którzy są w zespole w Twojej firmie, są bardziej zaniepokojeni tym, że Twój zespół stale się przemieszcza, a projekty są logicznie realizowane.

Jako osoba zwinna w Agile powinieneś najbardziej martwić się ilością pracy, którą skutecznie wykonujesz w stosunku do reszty swojego zespołu. Jeśli jesteś nowy, nie można oczekiwać, że będziesz zbyt produktywny, ale w pewnym momencie okresu zatrudnienia powinieneś być na równi z przynajmniej częścią swojego zespołu. Jeśli nie produkujesz pracy, tak naprawdę nie wykonujesz swojej pracy.

Koder kanadyjski
źródło
0

Czy moje rozumienie zobowiązań dotyczących średniej prędkości i sprintu jest prawidłowe?

Twoja średnia prędkość jest na miejscu. Z mojego doświadczenia wynika, że ​​jest to bardzo przydatne w przypadku długoterminowych szacunków ukończenia - zakładając, że masz duże zaległości; ale nie tak przydatne do zobowiązań w zakresie planowania sprintu.

Proces, który widziałem podczas planowania sprintu, polega na wyciągnięciu historii z góry zaległości i pozwoleniu zespołowi zdecydować, czy uda się je osiągnąć. Zespoły zdecydowały o tym w oparciu o odczucie jelitowe, podział na zadania trwające 1/2 dnia, presję ze strony właściciela produktu, dostosowanie do celu sprintu, najlepsze odgadnięcie (na podstawie prędkości) lub kombinację ich wszystkich.

Czasami Właściciel produktu pozwalał pominąć kilka elementów, aby można było dodać więcej.

Czasami zespół i właściciel produktu wcześniej uzgadniają elementy rozciągane, na które należy się przenieść.

itj
źródło
0

To doskonałe pytanie i jest bardzo ważne dla zespołów do poprawy. Temat ten jest zwodniczy i powszechnie źle rozumiany. Pierwotnym celem wskazywania historii było znalezienie szybkiej i akceptowalnej metody szacowania poziomu wysiłku (LOE) potrzebnego do ukończenia funkcjonalności zdefiniowanej w opowieściach. Ogólny cel: dać zespołom metodę PROGNOZY lub przewidzieć, ile czasu zajmie ukończenie wysiłku (takiego jak projekt). Twoje zrozumienie Prędkości jest prawidłowe: są to ŚREDNIE punkty za ukończony Sprint (naprawdę ZROBIONE). Więc jeśli masz projekt do zrealizowania, a jest to 250 punktów, a twój zespół średnio 25 punktów na sprint, projekt zajmie około 10 sprintów plus plus minus czas buforowania.

Niektóre oprawy oświetleniowe, takie jak Ken Schwaber, sugerują, że prędkość i punkty należy wykorzystywać tylko do prognozowania średnio- i długoterminowego. Sugerują wykorzystanie godzin zadań jako drugiego „sprawdzenia rozsądku” tego, co faktycznie można zrobić w sprincie. Liczba punktów w każdym sprincie może się różnić w zależności od pojemności. Inni (w tym ja) wierzą, że dojrzały zespół ustali się w bardzo spójnym schemacie rozmiarów, który może dokładnie przewidzieć pojemność i ostatecznie godziny zadań staną się bezużytecznym dodatkowym obciążeniem. (Ważne jest, aby występować dla nowych drużyn przez co najmniej 6 do 12 sprintów, IMHO, dopóki drużyna nie zrozumie punktów i nie zmieniła historii).

Twoim pierwszym małym błędem jest to, że powiedziałeś, że zespół powinien znać prędkość i wnieść tyle punktów historii. W rzeczywistości trenerzy zachęcają zespoły do ​​odliczenia 10% do 20% i zamiast tego zobowiązują się * do tego poziomu. Więc jeśli twoja drużyna ma tendencję do zdobywania 25 punktów na sprint, nie wypełniaj sprintu do 25 punktów, a raczej zatrzymaj się na 20 do 22 punktów. Pamiętaj: doskonale DOBRZE jest opowiadanie historii, gdy kończy się druga praca. Możesz więc „zatwierdzić” do 22 punktów i ukończyć 28. To świetnie. Uważaj tylko, aby nie zachęcać zespołu do „worek z piaskiem” i ciągle się zgadzać. Nie ma nic złego w rozciąganiu, aby sprawdzić, czy możemy zrobić więcej.

Przejdźmy teraz do wariantu między sprintami. Jest to bardzo powszechny (ale NIE OPTYMALNY) wzorzec, aby zobaczyć drużynę, która ukończy 20 punktów w jednym sprincie, następnie 50, następnie 22, a następnie 45, a następnie 15, a następnie 60. Jeśli obliczysz odchylenie, może wykazywać wahania 50% do 100% sprintu po sprincie. Dlaczego zespoły zdobywają zaledwie 15 punktów w jednym sprincie, a następnie 60 w kolejnym?

Może to oznaczać, że zespół naprawdę nie wie, co można zrobić. (Hej, ukończyliśmy 50 punktów w ostatnim sprincie, możemy to zrobić ponownie w tym sprincie).

LUB może to oznaczać, że właściciele produktów zmuszają zespół do nadmiernego zatwierdzania lub dodają prace po rozpoczęciu sprintu itp. To tylko niektóre z ANTYPATTERNS, które mogą powodować ten dziki zamach w ukończonych punktach.

Ta miara przewidywalności jest ważna dla mistrzów scrum, którzy obserwują zespół i zwracają na niego uwagę. Tocząca się fala niekompletnej pracy Często powodem, dla którego ukończyli kilka punktów w jednym sprincie, a następnie wiele punktów w następnym sprincie, jest to, co nazywam „ROLLĄ FALĄ NIEPEŁNOSPRAWNEJ PRACY”. Oto bardzo powszechny wzór:

Właściciel produktu jest pod presją spotkania się. Zespół czuje więc potrzebę wykonania dużo pracy. Zaczynają jako nowy zespół i nie są pewni, co mogą zrobić.

Więc sprint 1, planują sprint, a ponieważ są w fazie Formowania, nie mogą ukończyć całej pracy. W rzeczywistości mają więcej pracy niepełnej niż wykonanej. Prace niekompletne ZACZNIONE, ale NIEKOMPLETNE. Zostaje przeniesiony do następnego sprintu i tym razem wykonali więcej pracy niż są niekompletni. Do następnego sprintu ten duży ładunek niepełnej pracy spadnie na ZROBIONE i pewność zespołu rośnie.

Właściciel produktu jest podekscytowany, więc ponownie zwiększają obciążenie. Pod koniec tego sprintu mają OGROMNĄ ilość niepełnej pracy i rozczarowującą ilość WYKONANEJ pracy.

Tutaj zaczynasz widzieć FALE Wykonane vs Nieukończone przemienny sprint po sprincie. Jeśli zespoły nie zdają sobie sprawy z tego, co się dzieje, ten schemat może trwać miesiące. Ale średnio ukończą około 24 punktów na sprint. Co się dzieje, gdy przestaną się nadmiernie angażować?

Zauważysz, że WCIĄŻ ukończą 24 do 26 punktów, ale praca związana z przenoszeniem jest zmniejszona. Teraz, zamiast być przytłoczonym próbą wykonania niemożliwej ilości pracy, co również niszczy morale zespołu, zespół może zacząć ulepszać swoje procesy.

Z czasem prędkość zacznie rosnąć, bez wielkich wahań w pracy Gotowe kontra Niekompletne.

Jeśli nie pozwolisz zespołowi na trochę „wolnego czasu”, NIGDY nie będą mieli czasu na wykonanie pracy, która sprawi, że będą szczuplejsi, szybsi i lepsi. Na przykład Dev-Ops nie może się zdarzyć. Automatyzacja testów - kto ma na to czas !? Ale właśnie nad tym muszą pracować zespoły, aby mogły zwiększyć prędkość.

Curtis Reed
źródło