Nie jestem miłośnikiem Scruma i mam tylko rok praktycznego doświadczenia. Tak więc należy czytać z ziarnem soli.
Widzę kilka czerwonych flag w tym, co piszesz:
5 godzin planowania sprintu
To zdecydowanie za długo na tygodniowy sprint.
Celem planowania sprintu jest AFAIR
- umożliwić zespołowi poznanie bieżących priorytetów i
- opracować plan bitwy na nadchodzący sprint.
Aby to zrobić skutecznie, każda ze stron musi zrozumieć Product Backlog items
.
Aby zrozumieć Product Backlog items
zaległości, zaległości muszą być w dobrej formie.
W fazie planowania konkretnego Product Backlog items
są przekształcane w Sprint Backlog items
.
Jedną z możliwych przyczyn jest to, że te elementy nie są wystarczająco wyjaśnione / dopracowane.
Inną możliwą przyczyną jest to, że przedmioty są zbyt złożone i pozostawiają miejsce na zbyt wiele interpretacji.
Omów bardzo szczegółowo planowanie sprintu
Jak wspomniano powyżej, faza dyskusji będzie krótsza, gdy elementy będą bardziej konkretne.
Z drugiej strony: planowanie sprintu oczekuje profesjonalnego zachowania od każdego uczestnika. Obejmuje to unikanie dyskusji o rowerach .
Być może wszystko jest jasne, ale ktoś zaczyna dyskusję na temat jazdy rowerem .
Więcej: Unikaj dyskusji na temat szczegółów implementacji . Chociaż każdy pomysł kończy się w kodzie w pewnym momencie, nie ma sensu dyskutować o planowaniu sprintu, czy prosta tablica zrobi lewę, czy lepiej będzie użyć połączonej listy.
Ponieważ większość członków zespołu nie jest starszych
W scrumie nie ma różnicy między seniorami a juniorami . Obaj są tylko programistami. Jest to dobry punkt wyjścia, który pomaga skoncentrować dyskusję na realnym rozwiązaniu popartym lepszymi argumentami, a nie wypłatą.
Błędy implementacji i przeprojektowania podczas sprintu
Wydaje się, że podstawowym problemem jest gromadzenie wymagań, a następnie bardzo niejasne zaległości produktowe.
Jak powiedziałem powyżej: tak długo, jak długo Product Backlog
jest w dobrej formie, trudno nie zauważyć sedna sprawy.
Nie wyobrażam sobie takiej sytuacji jak:
»Jako użytkownik chcę zobaczyć garstkę klientów!«
»Och, nie miałeś na myśli każdego z naszych 2 milionów klientów?«
OTOH: Co w tym kontekście oznacza przeprojektowanie ? Jeśli programista wybrał algorytm o niskiej wydajności, to jest kolejny cel jasny: wybierz lepszy. Ale to nie jest „przeprojektowanie”, to jest optymalizacja.
Do twoich głównych pytań:
Jak sobie z tym poradzić?
Wspomnienie jest trywialne, ale i tak to robię: nie zapominaj, że masz do czynienia z ludźmi .
Bardzo trudno jest mieć grupę różnych umysłów, które są w stanie dzielić wspólne koncepcje (jak w Rashomon ). Aby skutecznie sobie z tym poradzić, używaj jak największej nadmiarowości w swojej komunikacji: np. Wyjaśniaj obszerny kontekst przedmiotu, nawet jeśli wszyscy „powinni wiedzieć”, co robić. Zadawaj pytania, czy wszyscy rozumieją temat danego przedmiotu.
Jeśli planujesz grać w pokera, dobrym wskaźnikiem, czy zrozumienie jest wystarczające, jest to, że zadania są oceniane jako niskie. Niska oznacza niską złożoność oznacza łatwą do zrozumienia i trudną do przeoczenia.
Jednym z efektów ubocznych iteracji jest wzrost liczby określonych zadań (ponieważ zespół rozumie swoje możliwości i ukryte zawiłości). Następnie istnieje szansa na podzielenie przedmiotu na kilka mniej złożonych przedmiotów o mniejszej złożoności.
Ile szczegółów powinienem omówić podczas planowania, aby zmieścić 2 godziny tygodniowo w sprincie?
Odpowiedź Salomonowa: jak najmniej i tyle, ile potrzeba, ale nie więcej.
tl; dr
Wybierz łatwy język (jeśli to pomaga, użyj prostego angielskiego lub ELI5
), aby uniknąć nieporozumień
Popraw zbieranie wymagań
Popraw zaległości
Zwiększenie zaufania członków zespołu do ich indywidualnych możliwości, a także ich możliwości jako zespołu
Unikaj jazdy rowerem
Popraw dyscyplinę osobistą
Być może używaj stałych timeboxów do każdego przedmiotu do dyskusji
scrum master
Skutecznie wzmocnij pozycję moderatora.