Zalety Scrum dla samych programistów? [Zamknięte]

18

Scrum, jako metodologia zarządzania projektami, w jaki sposób „sprzedałby” go programistom w zespole, który jest dość zadowolony z obecnej sytuacji?

Łatwo wydaje mi się wyjaśnienie naszemu menedżerowi produktu, w jaki sposób Scrum pozwoli mu otrzymywać regularne wydania, zmieniać wymagania i zachęcać zespół do skupienia się na najważniejszych tematach. Łatwo było mi wyjaśnić, co TDD lub Continuous Integration wnoszą w codzienne życie programisty.

Ale jak można przekonać programistów do przyjęcia Scruma? W jaki sposób Scrum ułatwiłby im życie?

Xavier Nodet
źródło

Odpowiedzi:

14

Scrum zapewni znacznie lepszą widoczność tego, co się dzieje . Złe zarządzanie, zmiany w ostatniej chwili, presja i wszelkiego rodzaju rzeczy, z którymi zwykle boryka się programista.

Jednak przyniesie też wiele widoczności prokrastynatorom, twórcom złej wiary, szalonym indywidualistom, ... innymi słowy, złym twórcom.

Scrum to miecz obosieczny

Scrum przyniesie Ci możliwości rozwiązania tych problemów. Właśnie dlatego jest tak potężny.


źródło
2
Co to jest „twórca złej wiary”?
smp7d,
3
Deweloperzy wydają pracę, za którą otrzymują wynagrodzenie, na coś innego, na przykład na prywatne projekty lub agresywne surfowanie po Internecie.
7

Złamanie wielkiego celu („załatwienie oprogramowania”) na mniejsze części - historie - i podjęcie decyzji, które z nich wykonać podczas bieżącego sprintu, poprawia wydajność i zmniejsza stres. Kiedy wiesz dokładnie, co powinieneś teraz robić , nie musisz się stresować i możesz skupić się na robieniu małego kawałka zamiast czuć się przytłoczonym dużą całością.

Joonas Pulakka
źródło
Chociaż jest to prawda, Scrum nie jest warunkiem wstępnym dla historii użytkowników i ustalania priorytetów. Jak więc Scrum ułatwia życie?
Steven Evers,
1
Scrum nie jest warunkiem koniecznym, ale jest jednym ze sposobów, aby to zrobić. Mówiąc ściślej, pytanie powinno brzmieć jak Scrum ułatwia życie w porównaniu do X?
Joonas Pulakka
... w porównaniu do wodospadu. Mamy już zautomatyzowane kompilacje i ciągłą integrację. Próbuję przedstawić TDD. Ale mamy z góry szczegółowe wymagania i szacunki, długie cykle rozwoju (kilka miesięcy), cotygodniowe spotkania dotyczące statusu ...
Xavier Nodet
@SnOrfus, ponieważ podczas sprintu nie można dodawać żadnych historii, więc Scrum ułatwia życie poprzez zmniejszenie stresu. Deweloper wie, że to właśnie będzie robił i nikt nie zmieni priorytetu podczas sprintu.
Asim Ghaffar,
5

Stosy rang / zaległości zapobiegają marszom śmierci

Jako programista „destrukcyjny wzorzec”, który najbardziej widzę w tworzeniu oprogramowania, występuje wtedy, gdy jakiś „zewnętrzny kontroler” (np. Zarządzanie projektami, zarządzanie wykonawcze) bardzo się ekscytuje faktem, że „ulubiona funkcja” nie chce się włączyć ” data kalendarzowa ”i zarządza marsz śmierci.

Scrum, ponieważ zajmuje wysoką pozycję na liście zaległości, pomaga deweloperom proaktywnie zarządzać napięciem na dwa sposoby. Po pierwsze, możesz zaliczyć „ulubioną funkcję” wysoko w zaległości, aby najprawdopodobniej był szczęśliwy. Po drugie, daje bardzo wizualną i konkretną odpowiedź na „skoro przesunęliśmy„ migające widżety ”na rangę 1, jest bardzo prawdopodobne, że nie dostaniemy się do„ odbijających się króliczków ”w tym sprincie, ponieważ teraz ma rangę 7. Są czujesz się swobodnie z tym kompromisem? ”

Przekonałem się również, że przy krótkich sprintach „kontrolery zewnętrzne” są mniej zaniepokojone odraczaniem prac. Jeśli „migające widżety” nie zmienią się w „kamień milowy 1”, a „kamień milowy 2” nie skończy się przed upływem 9 miesięcy, sponsor „migających widżetów” bardzo się denerwuje. Ale jeśli „migające widżety” mają stos 7 na miejscu zamiast 1, ponieważ tak naprawdę jest 6 ważniejszych rzeczy, które należy zrobić w pierwszej kolejności, oznacza to, że prawdopodobnie dojdziemy do tego w sprincie + 1 lub w najgorszym sprincie + 2, co oznacza pokaże się za 12 lub 18 tygodni od teraz (przy użyciu 6-tygodniowych sprintów). Z mojego doświadczenia wynika, że ​​czekanie 3 miesięcy jest „nie do przyjęcia” dla niecierpliwych - poza tym w modelu „wodospadu” trwającym ponad 3 miesiące,

Wreszcie, jeśli zbliżamy się do końca sprintu, a rzeczy zajęły dłużej niż się spodziewaliśmy, bardzo miło jest móc przesunąć pozycje 5-6-7 do następnego sprintu i upewnić się, że ukończyliśmy 1-2-3 -4 o wysokiej jakości i bez 70 godzin tygodni. W końcu z pewnością dotrzemy do 5-6-7 następnego sprintu. Ponownie, biorąc pod uwagę krótsze ramy czasowe zaangażowane w odroczenie, „kontrolerzy zewnętrzni” są na ogół wygodniejsi i nie nalegają, abyśmy przerzucili kamień milowy dwa tygodnie i co wieczór zamawiali kolacje „po prostu przez to przepchnąć”.

Jay Beavers
źródło
3

Ludzie w zespole Scrum mogą sami decydować o wielu rzeczach: co zostanie zrobione podczas następnego sprintu, jak przełamać tę historię w zadaniach, kto nad czym pracuje itp. To je wzmacnia i jest prawie dokładnie sprzeczne z mikro -zarządzanie.

Xavier Nodet
źródło
Myślę, że to trochę mimowolnie przesadzam! „To, co zostanie zrobione podczas następnego sprintu”, musi zostać określone w odniesieniu do zaległości produktu i pierwszeństwa pozycji na nim. Oczywiście, „ jak wiele zostanie zrobione podczas następnego sprintu”, zespół zdecydowanie decyduje.
Robin Green
2

Fakt, że wymagania zmienią się, jest brany pod uwagę od samego początku. Programiści nie muszą tworzyć szczegółowych specyfikacji z dokładnymi szacunkami, a następnie spędzają tygodnie na opracowywaniu funkcji, aby zdać sobie sprawę, że klient zmienia zdanie, gdy tylko zobaczy wynik ...

Xavier Nodet
źródło
1

Dla mnie samodzielne przydzielanie zadań z zaległości jest największym punktem sprzedaży z punktu widzenia programisty. Ponadto zażyłość z klientem / właścicielem produktu pomaga zrozumieć większy schemat rzeczy.

Sri
źródło
1

Kilka rzeczy:

  • Opierając się na punkcie Xaviera dotyczącym zmieniających się wymagań od samego początku - atmosfera mniej polityczna rozwija się, gdy wszyscy przyjmują od początku, że niektóre rzeczy nie będą takie, jak oczekuje klient. Szybka dostawa i przegląd oznaczą, że koszt niewłaściwej komunikacji jest niski, a zamiast grać w obwinianie, programiści mogą po prostu zmieniać rzeczy, aby działały zgodnie z oczekiwaniami klienta.

  • Punkty historii! Który programista nie lubi zdobywać punktów za robienie rzeczy !!?! Poważnie, to lepsze niż zdobywanie odznak w SC2 lub Przepełnieniu stosu.

iftheshoefritz
źródło
1

Jest kilka rzeczy, które jako programista lubię w scrum.

Deweloperzy zwykle otrzymują więcej informacji z góry. Właściciel produktu musi wyjaśnić całą pracę, która zostanie wykonana podczas następnego sprintu, wystarczająco szczegółowo, aby umożliwić dobre oszacowania.

Szacowanie w samą porę oznacza, że ​​są one dość dokładne. Każdy zwykle ma dość dobry pomysł na to, co zostanie ukończone w sprincie. Daje to programistom i kierownikom projektów narzędzia, które pozwalają im stawić czoła nieuzasadnionym wymaganiom.

Miło jest cofać się co trzy do czterech tygodni i brać oddech i przynajmniej zmieniać tempo.

Samoorganizujące się zespoły wydają się dawać nieco więcej różnorodności w pracy.

Teoretycznie przynajmniej podczas sprintu jest mniej przerw i „sytuacji awaryjnych”.

Codzienne spotkanie na stojąco zmusza programistów do wypowiadania kilku słów każdego dnia.

Postępy są łatwiejsze, ponieważ historie są wyraźnie kończone i recenzowane na końcu każdego sprintu.

Wykresy spalania są dość skutecznym lekkim sposobem śledzenia postępów.

Blake
źródło
1

Zaletą dla programistów jest wczesna informacja zwrotna (od klienta, testera, właściciela produktu itp.).

Również jako programista zawsze jestem zainteresowany robieniem rzeczy krok po kroku bez rozpraszania uwagi. Scrum zapewnia to.

PS: scrum nie jest metodologią, jest strukturą.

Asim Ghaffar
źródło