Temat: Czy rola Scrum Mastera jest doceniana ? - dyskusja
Aby odpowiedzieć na główne pytanie wątku, należy wrócić do początków.
Czym jest Agile?
Agile to zwinna metodyka zarządzania, którym pierwszym założeniem jest "weź to co wymyślone i dostosuj to do swoich potrzeb". Agile zostało wypracowane doświadczeniem w celu eliminacji efektów "zmęczenia materiału". Czyli ta metodyka wspiera te projekty, które są skomplikowane i z biznesowego punktu widzenia nie jest wskazane aby projekt kończyły osoby inne niż te, które ten projekt zaczęły. Agile nic nie wspomina o nie możności centralnego planowania projektem. Osobiście uważam, że rzucanie się na duży projekt bez odpowiedniego przygotowania i sporządzania modeli dziedziny jest czystym szaleństwem.
Czym jest zespół?
Zespół to grupa ludzi, których celem jest dostarczyć na czas wymagania postawione przez Właściciela Produktu.
Agile mówi nam, że każda jednostka w zespole jest równorzędna i nie powinno być w niej podziału na ról, jednak wg mnie bardziej tu chodzi o to, że w zespole nie powinna istnieć osoba, która została ustalona odgórnie i autorytatywnie podejmuje decyzje bez konsultacji z zespołem. To zespół samodzielnie powinien wybrać lidera grupy i jemu powierzyć odpowiedzialność za całokształt działania zespołu. A zatem mamy lidera oraz starszych, młodszych programistów, stażystów, etc.
Kim jest lider zespołu i czym się zajmuje?
Liderem zazwyczaj zostaje osoba z największym stażem, doświadczeniem, odpowiednimi umiejętnościami miękkimi. Lider ustala z Właścicielem Produktu co zespół jest w stanie zrealizować w danej jednostce czasu. Lider pracuje w zespole, gdyż jest częścią tego zespołu. Lider odpowiada za jakość dostarczonego oprogramowania, pomaga młodszym programistom, etc.
I na koniec najważniejsze - w przypadku gdy zespół nie jest w stanie podjąć jednomyślnej decyzji - lider decyduje, czyli bierze na siebie odpowiedzialność.
Kim jest kierownik projektu (PM), kierownik działu IT (IT Manager)?
Kierownik projektu to osoba która zajmuje się projektem/produktem na wyższym poziomie. W przypadku dużego projektu, współpracuje bezpośrednio z kierownikiem działu IT i zleca zaangażowanie dodatkowych osób, sprzętu, szkoleń, etc. W przypadku małych projektów może kierować nimi wszystkimi jednocześnie. Łącznie z kierownikiem działu IT kontaktuje się bezpośrednio z klientem (kierownictwem, wyznaczonym właścicielem produktu, innymi osobami zaangażowanymi w projekt, etc.), trzyma rękę na pulsie jeśli chodzi o terminy. Kierownik działu IT jest odpowiedzialny za kadrę, czyli zatrudnia/zwalnia/nagradza/karze, za użyte technologie, sprzęt, szkolenia, etc.
No to w końcu kim jest ten mistrz SCRUM'a (SM)?
Mistrz SCRUMA to psycholog zespołu lub zespołów, wcześniej wspomniany adwokat diabła, pierwsza osoba, która dostrzeże problemy zanim przybiorą postać trąby powietrznej zmiatającej wszystko na swej drodze.
SM to bezpiecznik, osoba z zewnątrz, która krążąc po firmie jako wolny elektron, pierwsza wychwyci oznaki problemów. SM to osoba, która nie zarządza ludźmi w sposób bezpośredni, czyli nie karze, nie nagradza, nie zatrudnia, nie zwalnia. Zespoły mają duże zaufanie do SM, a zatem, SM ma bezpośredni wgląd do atmosfery panującej wewnątrz zespołu i to na poziomie atomów. Jeśli w zespole atmosfera zaczyna robić się gęstsza, to SM pierwszy dostrzeże tą zmianę i może reagować natychmiast, zanim zwolnią się pierwsi doświadczeni programiści.
Zgadzam się, że SM'a nie lubią dyrektorzy, kierownicy i liderzy - ale uważam, że tylko ci źli. Dlaczego? Otóż oni bezpośrednio czują się zagrożeni jego istnieniem. SM jako pierwsza i jedyna osoba w firmie, dostrzeże problemy na poziomie zespołów, problemy które w znacznej części są powodem złego zarządzania.
To SM powinien wyznaczać nowych liderów zespołów, jeśli ci pierwsi okażą się niewłaściwi. Dyrektorów, kierowników nie da się zmienić tak łatwo, ale mając odpowiedniego SM w firmie, będą czuli odpowiednią presję. SM powinien zatrudniać bezpośrednio właściciel / zarząd firmy, aby nadać mu tym samym odpowiednią rangę w firmie. Co do kompetencji SM'a, to nie szalałbym z początku, to musi być osoba, która słucha zespołu, zwraca uwagę na problemy, doradza liderom, kierownikom, rzadko podejmuje radykalne decyzje. Jeśli nabierzecie zaufania do SM'a, wówczas szerszy zakres kompetencji jest mile widziany.
-- edit
Jakie są cele SM? Proste, dbać o zespoły, o ludzi.
Po czym poznać, że macie dobrego SM? Zerowa rotacja programistów, nie zerowa rotacja liderów/kierowników.
Po czym poznać, że macie złego SM? Gdy po 3 miesiącach od zatrudnienia, programiści nadal się zwalniają, a on nie wie dlaczego.
Ten post został edytowany przez Autora dnia 19.12.13 o godzinie 00:10