Što je Agile Project Management (APM)?

Agile Project Management (APM) ili agilno upravljanje projektima je ponavljajući pristup planiranju i vođenju projektnih procesa putem funkcionalnog samoorganiziranja multi-funkcionalnih mješovitih timova, poticanjem fleksibilnog i brzog odgovora na uočenu promjenu u proizvodu/usluzi kao i u potrebama klijenata.

Danas APM koriste svi od programera softvera, građevinskih tvrtki, obrazovnih organizacija, pa do marketinških timova kao i odjela ljudskih potencijala. Mnoge tvrtke mogu imati koristi od APM ili agilnog upravljanja projektima, zato što ga je jednostavno postaviti i koristiti.

Osnovni cilj APM je imati kraće cikluse razvoja i učestalije puštanje izmijenjenog proizvoda/usluge za razliku od tradicionalnog „Waterfall“ upravljanja projektom. Ovakav kraći vremenski okvir omogućuje projektnim timovima da brže i učinkovitije reagiraju na promjene uočene u proizvodu/usluzi kao i u potrebama klijenta,

Obzirom kako se APM dovršava u manjim i kraćim dijelovima ti se dijelovi tada nazivaju iteracijama. U Agile upravljanju razvoja softvera, na primjer, iteracija se odnosi na jedan kraći razvojni ciklus. Svaki takav manji dio ili iteraciju pregledava i komentira razvojni/projektni tim, koji bi trebao uključivati predstavnike (multi-funkcionalne) različitih sudionika projekta

Ove manje cjeline često se nazivaju sprintovi. Sprintovi su općenito kratki, dužina im je od par dana do par tjedana. Uvidi stečeni tijekom redovitih i čestih sastanaka tijekom svake iteracije koriste se kako bi se precizno utvrdilo što bi trebao biti sljedeći korak u projektu.

Glavna prednost AGM je njegova sposobnost da promptno reagira na otvorena pitanja i probleme kako se ona javljaju tijekom trajanja projekta. Izrada nužne promjene u projektu u pravo vrijeme može uštedjeti resurse i naposljetku pomoći u završavanju projekta na vrijeme i u zadanom proračunu.

Metodologija AGM omogućuje timovima da se oslobode jednog segmenata čim je taj segment dovršen. Ovaj kontinuirani raspored odrađivanja zadataka omogućuje timovima da pokažu kako su ti segmenti uspješno završeni, a ukoliko nisu da se analizira stanje i brzo popravi uočene nedostatke. Ovakav način rada pomaže u smanjenju mogućnosti neuspjeha, jer postoji kontinuirano analiziranje i poboljšanje tijekom svake iteracije kao i cijelog životnog ciklusa projekta.

Što je SCRUM?

Scrum je okvir postupanja u agilnom upravljanju projektima koji se koristi za upravljanje radom na složenim proizvodima od ranih 1990-ih. Scrum nije proces, tehnika ili konačna metoda. Umjesto toga, Scrum je struktura koja se odnosi na angažiranje različitih procesa i tehnika.

Pojam Scrum dolazi iz teksta objavljenog u Harvard Business Review polovicom osamdesetih godina prošlog stoljeća u kojem su autori napravili analogiju uspoređujući visoko učinkovite, među funkcionalne timove slične formacijama Scrum koje koriste američki profesionalni ragbi timovi.

Timovi kompletiraju zadatke u postavljenom vremenskom razdoblju nazvanim sprintovi koji su svi obično kraći od 30 dana sa svakodnevnom analizom, ponovnom procjenom napretka i statusa. Taj je pristup učinkovit u nadvladavanju prepreka s neočekivanim izazovima kao što su stalni inputi od strane kupaca/klijenata.

Što je KANBAN?

Kanban je jednostavna metoda koja ima za cilj izvršenja isporuke „just in time“ nekog dijela projekta, zadatka ili proizvoda/usluge na način da ne dođe do preopterećenja resursa kao i članova tima.

Kanban je sličan Scrum u načinu kako je primarni cilj dostaviti maksimalnu vrijednost na kraju, ali je mnogo fleksibilniji od Scrum.

Kanban ima svoje porijeklo u proizvodnim procesima u Toyoti, ali ima široku upotrebu i u drugim sferama poslovanja. U Kanban ne postoje strogi postupci koje se treba slijediti. Kanban je skup načela i prakse između kojih je potrebno odabrati najbolju kako bi odgovarala traženim potrebama. Najčešće korištena provedba Kanban npr. u razvoju softvera uključuje korištenje Kanban ploče (u fizičkom obliku ili u obliku nekog softvera), koja se sastoji od stupaca koji predstavljaju faze rada i zadatke.

Stupci predstavljaju stanje zadatka u procesu razvoja. Najjednostavniji primjer sastoji se od tri osnovna stupca:

  1. „To do“ ili “Učiniti”,
  2. „In progress“ ili “U tijeku” i
  3. „Done“ ili “Gotovo”.

Dakle, zadaci se dodaju ili premještaju iz stupca “Učiniti”, u stupac “U tijeku” kada razvoj počinje, a smatra se kako je zadatak gotov kada se preselio u zadnji stupac “Gotovo”. Moguće je proširiti broj stupaca na više od tri sukladno projektnim potrebama pa tada svaki stupac može imati pod-stupce, kao npr. stupac „U tijeku“ može imati pod-stupac “Razvoj” koji se može se podijeliti u “Planiranje” i “Programiranje” pa npr. pod-stupac “Testiranje” se može podijeliti u “Pojedinačno testiranje XY” i “integracijsko testiranje” itd. Tim definira stupce i faze prema projektnim potrebama.

Koje su prednosti i nedostaci AGM za pojedinca/tvrtku i projekt?

Prednosti:

  • Veća produktivnost, fleksibilnost i prilagodljivost promjenama,
  • Kratkoročni ciljevi i sprintevi lakši su za upravljanje i ostvarivanje rezultata,
  • Bolja upotreba resursa uz niži trošak (bolji ROI),
  • Brže detektiranje problema, te brža promjena,
  • Veća interakcija s kupcima/klijentima,
  • Izraženiji timski rad.

Nedostaci;

  • Nedostatak projektne dokumentacije,
  • Nedostatak postojanja viših ciljeva,
  • Ponekad nepredvidljivi konačni rezultati,
  • Nemogućnost realiziranja strateških projekata.

Budući kako se AGM oslanja na mogućnost brzog donošenja odluka, nije pogodan za organizacije koje imaju tendenciju da raspravljaju o pitanjima tijekom duljeg razdoblja ili za one koji donose odluke na različitim upravljačkim odborima ili za strateške i dugoročne projekte. Korištenje iteracija putem Scrum-a omogućuje nam da to učinimo brže i s manje rizika od tradicionalnih ciklusa upravljanja projektima koji zahtijevaju iznimno veliku količinu planiranja unaprijed.

Kako se provodi Scrum?

Mnoge organizacije koriste tradicionalni „top-down“ pristup upravljanja projektima, također poznat i kao „Waterfall“. Unatoč nazivu, ovaj pristup nije uvijek najučinkovitiji. „Waterfall“ je više sekvencijalni način u kojima se faze projekta izvršavaju u nekom uzastopnom redoslijedu, od koncepta do dizajna, te u konačnici do provedbe. Izazov s „Waterfall“ metodologijom je što kada je jednom neki korak završen gotovo je nemoguće vratiti se unatrag te ga potencijalno poboljšati bez ukidanja cijelog projekta. Ovakav pristup obično košta dodatnog vremena i resursa.

Kao najčešći okvir u AGM-u Scrum se koristi za razbijanje složenih projekata u manje dijelove, čime se projektnom timu omogućuje kontinuirano stvaranje nove  vrijednosti u kraćim vremenskim periodima. To je puno fleksibilniji pristup, tako da se brže i jednostavnije može odgovoriti na potrebe kupaca/klijenata kao i na učestale promjene na tržištu. Scrum omogućuje više prilagodljivosti organizacije tijekom trajanja projekta što doprinosi ukupnom konačnom zadovoljstvu kupca/klijenta.

Kao što smo naveli Scrum je iterativni pristup, što znači da je dizajniran da brzo dostavi manje parcijalne isporuke koje se mogu izgraditi u nešto veće tijekom vremena. Tijekom sprinta stvara se iskoristiv i potencijalno isporučiv proizvod/usluga. Sprintovi se odvijaju jedan nakon drugog kako bi se cjelokupni projekt izvršavao. Postoje tri stanja koje se događaju sa svakim sprintom:

  1. PLANIRANJE SPRINTA – tim odlučuje o čemu će raditi u trenutnom vremenskom razdoblju,
  2. PREGLED SPRINTA – tim surađuje (dnevni sastanci) o tome što je učinjeno i prilagođava neizvršeno po potrebi,
  3. RETROSPEKTIVA – tim raspravlja što je učinjeno dobro, a što je učinjeno krivo, te kako to ispraviti i poboljšati.

Tim koji je odgovoran za određeni rad samostalno odlučuje kako će izvoditi rad tijekom sprinta, Na kraju svakog sprinta cilj je proizvesti nešto što bi se moglo testirati.

Svakodnevni Scrum (misli se na pregled sprinta ili dnevni sastanak) je srce Scrum-a. Svaki dan razvojni timovi naglašavaju i promiču brzo donošenje odluka, a oni unaprjeđuju stupanj transparentnosti i znanja razvojnog tima. Svakodnevni Scrum je kratak – prosječno oko 15-30 minuta – tako da je tim fokusiran i učinkovit.

Niti Scrum niti Kanban nemaju strogi skup pravila. Ne postoji ništa što sprječava izbor najboljih elementa za Scrum, kao što su to dnevni sastanci ili pregledi. Nema razloga da ukoliko se tako želi upotrijebiti Kanban pregled u Scrum.

Najvažnije je kako se Scrum  dokazao u praksi kao vrlo učinkovit okvir samo kada ga cijeli tim dobro razumije. Međutim, isto je tako činjenica kako je teško raditi u Scrum gdje svi članovi tima ne poznaju proces.

Tko je tko u Scrum teamu

  1. ScrumMaster

Scrum Master pomaže razvojnom timu izvođenje procesa na najvišoj razini. Oni zajedno u potpunosti razumiju temeljna načela Scrum-a, te ih mogu učinkovito primijeniti u složenim, stvarnim situacijama. Scrum Master zajedno s razvojnim timom osigurava da se ciljevi i opseg projekata jasno razumiju i zajednički rade na uklanjanju uočenih prepreka.

Scrum Master vodi dnevne sastanke, koordinira članove razvojnog tima, te uklanja sve prepreke koje sprečavaju članove tima da budu produktivni, te vodi članove tima u dublje razumijevanje Scrum-a. Scrum Master ima temeljito razumijevanje svih stvari unutar Scrum-a, te održava snažne interpersonalne veze s timom.

  1. Vlasnik proizvoda (Product owner)

Vlasnik proizvoda je obično ona osoba koja je najbliži “poslovnoj strani” projekata. Vlasnik proizvoda odgovoran je za obavezno primjenu postupka kojim se pravi rad izvršava u pravo vrijeme.

On stalno komunicira sa svim zainteresiranim stranama, ali i kupcima/klijentima, osiguravajući da tim u konačnici isporuči posao koji je važan korisnicima i proizvode novu ili uvećanu vrijednost za poslovanje.

Vlasnici proizvoda su nešto poput menadžera, ali u Scrum-u postoji mnogo jači naglasak stavljen na njihovu povezanost s korisnicima nego bilo koji drugi senioritet u organizaciji.

  1. Razvojni tim (Development team)

Idealno bi bilo da svaki član tima bude multi-funkcionalan, što znači da ima širok skup vještina koji mu omogućuje da doprinose svim fazama rada. Osim što su multi-funkcionalni u razvojnim timovima obično nema unutrašnje hijerarhije. Najvažnija osobina je da se samostalno organiziraju, što znači da biraju posao koji rade i prepoznaju najbolji način kako da se to izvrši.