No nie.. Scrum jako "scrum" nie jest zły. To ludzie, którzy go źle implementują powodują że staje się patologicznym bytem...
To zupełnie jak z komunizmem! Ale jeszcze tylko pięć lat towarzysze i się uda! Pamiętacie jak pięć lat temu staliśmy na krawędzi przepaści, ale dzięki wspólnej pracy udało nam się zrobić ogromny krok naprzód?!
Chodzi o to aby dana iteracja dowiozła wartość biznesową a nie sam kod, który od strony biznesowej może nic nie robić.
Niestety rzeczywistość jest taka, że istnieje całkiem sporo kodu, który sam w sobie nie dostarcza wartości biznesowej. A scrum (jak to utopie mają w zwyczaju) dzielnie udaje, że tak nie jest.
Klient płaci np. za dorobienie archiwum dokumentów i ma dojechać archiwum dokumentów a nie połowa, czy 1/3 archiwum.
Wychodzi na to, że jeśli nie da się zrobić archiwum w ramach jednego sprintu, to nie można go w zrobić w ogóle. Klient zapewne zrozumie, że nie możemy mu dostarczyć produktu, bo metodyka, w której pracujemy ma takie zasady.
Nie wszystkie firmy maja SM, zamiast nich tę rolę poniekąd pełni PO. Stundup jest moim zdaniem dobrym wyjściem, bo każdy mówi co zrobił, z czym ma problem i co będzie robił następnie. Jak ma z czymś problem to natychmiast są korygowane inne rzeczy. Oczywiście jak ktoś i tego nie zmiętoli...
Jak coś zrobię, to ustawiam na done i informuję osobę odpowiedzialną za weryfikację.
Jak mam z czymś problem, to od razu piszę na Slacku do osoby, która jest za dany temat odpowiedzialna, albo do swojego TL, albo do zespołu.
Nie widzę sensu w czekaniu aż do następnego poranka.
Nie do końca się zgodzę. Powiedzmy, że zaczynasz nowy projekt, jakaś aplikacja od zera. Są wstępne założenia co ma być jej rdzeniem. Tworzysz wymagania, rozpisujesz i implementujesz. Kiedy dochodzi nowa funkcjonalność to oplatasz ją o ten rdzeń.
Tylko, że rdzenia nie można nigdy zrobić dobrze, bo trzeba ciągle coś dostarczać dla biznesu, więc dług techniczny narasta, a kolejne ficzery powstają wolniej niż by mogły.
W Scrumie chodzi tak naprawdę nie o te wszystkie zasady, spotkania, role itd. tylko o:
- Dbanie o to, żeby dział się PROCES EMPIRYCZNY, czyli żeby ludzie nie latali z łopatami i taczkami non-stop, tylko od czasu do czasu zastanowili się, co my do cholery robimy źle i zaczęli to poprawiać.
[...]
- Zmniejszenie ryzyka straty kasy do kilku tygodni (czyt. spotkanie się z klientem raz na jakiś czas i pokazanie mu, jak to wszystko na teraz wygląda, a nie płakanie, że 6 miesięcy pracy w błoto, bo w kontrakcie jakieś niedopowiedzenia były).
- Żeby manager i inne dziwne osoby nie wpieprzały Ci się w pracę co chwilę, bo chcesz coś w końcu zakodzić porządnie.
[...]
- Posiadanie DoD, w którym wyraźnie powiesz, że nie zgadzasz się na g**no kod bez testów i refactoringu tego szamba, do którego musiałeś wskoczyć. Nie interesuje Cię, że klient tam czeka na nowy feature, bo to, co do tej pory zrobiłeś, nie jest skończone i się pod tym nie podpisujesz.
[...]
- Zapewnienie, że to programiści mówią JAK wykonać robotę, bo są z tego rozliczani, sami ją robią i nikt im w tym nie przeszkadza (np. PO czy manager, który był kiedyś programistą i ma swoje cenne rady/opinie).
Te wszystkie punkty to nie jest scrum, tylko agile właśnie.
Idea sprintów nie przeżywa zderzenia z rzeczywistością i to jest chyba największą słabość Scrum. Kanban wydaje się mieć bardziej realistyczne założenia, ale musi być ktoś z batem aby nie skończyło się na ciągłych zwrotach akcji.
Ale jakie właściwie zwroty akcji w Kanbanie?
Najslabszy element układanki zwanej zarządzaniem projektami to chyba programiści, którzy na spotkaniach w większości się nie odzywają, a potem między sobą narzekają. Widzą błędy zarówno w biznesie jak i zarządzaniu projektem, ale nie widzą, że sami muszą też czasami się odezwać i o zgrozo powalczyć o swój punkt widzenia.
Dlaczego jako programista miałbym walczyć o nowy jacht prezesa?
Gdyby programiści nie byli w swojej masie tak upośledzeń społecznie jak są to wiele projektów by się potoczyło inaczej. Niestety maks na co stać przeciętnego programistę to zwrócenie raz uwagi na jakis problem i potem narzekanie, że nikt go nie posłuchał jak mówił. Pół biedy jak mówił to w obecności PM, a nie na przerwie kawowej.
Wiele projektów potoczyłoby się inaczej, gdyby management nie był upośledzoną społecznie masą, i słuchałby programistów.
Pytanie komu powinno zależeć?