Kada bih morao da istaknem samo jedan ključni događaj u celom Scrum okviru koji se konstantno zanemaruje, to bi zasigurno bilo planiranje sprinta.
Ovo je zajednički sastanak na kojem Scrum tim priprema svoj rad za predstojeći sprint. Ne bi trebalo da traje duže od dva sata za dvonedeljni sprint. Umesto toga, često se završi sa neizvesnošću i sa još mnogo posla koji treba obaviti kako bi se razjasnio obim sledećeg sprinta.
Planiranje sprinta i njegov značaj u agilnom razvoju
Ovo je događaj na kojem tim pregleda zaostatak proizvoda. To je lista epskih priča i karakteristika koje sadrže zahteve i kriterijume prihvatanja proizvoda. Tim bira stavke sa najvišim prioritetom iz zaostatka na kojima će raditi u predstojećem sprintu. Zatim se stavke dele na pojedinačne zadatke koji čine ukupan posao koji razvojni tim mora obaviti da bi uspešno završio i isporučio sprint.
Značaj planiranja sprinta leži u uspostavljanju zajedničkog razumevanja posla koji se tim obavezuje da će ispuniti. Takođe, određuje koje su trenutno najvrednije stavke, što znači da planiranje sprinta maksimizira vrednost za korisnika. Na kraju, ovaj proces implicitno stvara osećaj vlasništva i posvećenosti kod celog tima. Naravno, to povećava produktivnost tima.
Komponente planiranja sprinta
Postoje neki osnovni delovi koje svaki sastanak planiranja sprinta u Scrum-u treba da sadrži.
#1. Zaostatak proizvoda
Pre planiranja sprinta, vlasnik proizvoda je trebalo da precizira zaostatak proizvoda kako bi se uverio da je ažuriran i prioritetan. Tokom sastanka za planiranje sprinta, tim pregleda zaostatak proizvoda. Oni razgovaraju o stavkama koje se nalaze na vrhu zaostatka.
#2. Cilj sprinta
Tim konsenzusom definiše cilj sprinta i viziju koju vlasnik proizvoda ima za sprint. To je sažeta izjava koja opisuje kako će inkrementalna vrednost tima izgledati po završetku sprinta. Cilj sprinta treba da bude specifičan, merljiv i dostižan u periodu jednog sprinta.
#3. Sadržaj sprinta
Stavke iz zaostatka odabrane za sledeći sprint čine sadržaj sprinta. Tim treba da bude uveren da sve unutar sadržaja može biti u potpunosti isporučeno tokom trajanja sprinta. Zbog toga tim mora da proceni napor za svaku od stavki iz sadržaja sprinta.
Delovi sastanka za planiranje sprinta
Kako bi komponente stavili u perspektivu, sve one čine konkretne akcije koje se očekuju tokom planiranja sprinta.
Tim prerađuje zaostatak. To je diskusija između vlasnika proizvoda (kao vlasnika sadržaja) i razvojnog tima, koji je tu da razume svrhu i kriterijume prihvatanja stavki. Stavka (ili priča) se usavršava samo ako se ceo tim složi da je priča jasna za razvojne aktivnosti.
Šta postići
Krajnji cilj sastanka za planiranje sprinta je definisanje cilja sprinta i dogovor oko sadržaja sprinta na kojem će tim raditi u predstojećem sprintu.
Da bi se to dogodilo, tim treba da ima dovoljan broj pripremljenih priča i funkcionalnosti koje mogu da formiraju taj sadržaj u zaostatku. Zadatak vlasnika proizvoda je da prioritizuje priče pre sastanka kako bi razvojni tim znao koje teme imaju najveći poslovni prioritet. Zadatak razvojnog tima je da se upozna sa tim stavkama i proceni napor za svaku stavku u zaostatku.
Kako postići
Sastanak za planiranje sprinta se tiče komunikacije i saradnje između vlasnika proizvoda i razvojnog tima. Oni rade zajedno kako bi dobili jasnoću o obimu stavki sa najvišim prioritetom u zaostatku. Nakon što tim precizira dovoljan broj priča sa najvišim prioritetom, vlasnik proizvoda će definisati koji je cilj sledećeg sprinta. To je poruka svim spoljnim zainteresovanim stranama koja govori o čemu će se uglavnom baviti sledeći sprint. Ili koja će biti glavna namera i svrha isporuke za ovaj sprint?
Razvojni tim će zatim izračunati kapacitet tima za sprint i popuniti sadržaj sprinta stavkama sa najvišim prioritetom koje čine cilj sprinta.
Na kraju, tim može dodati u sadržaj sprinta i druge priče koje ne odgovaraju cilju sprinta. Čak i samo da bi popunili preostali slobodni kapacitet sprinta. Ipak, cilj sprinta je nešto što tim komunicira kao glavnu inkrementalnu vrednost sprinta.
U zavisnosti od nivoa prethodne pripreme, sastanak za planiranje sprinta može biti ili prilično duga diskusija ili vrlo brza odluka. U slučaju da je tim već iskusan, možda ima dovoljno dobro pripremljenih priča u zaostatku za naredna dva ili tri sprinta.
U takvim slučajevima, sastanak se zapravo svodi samo na definisanje cilja sprinta i prikupljanje relevantnih stavki iz zaostatka. Ako te priče nisu pripremljene pre sastanka za planiranje sprinta, moraju se završiti na tom sastanku. To zahteva interaktivnu diskusiju između vlasnika proizvoda i razvojnog tima.
Uloge i odgovornosti
Postoje tri glavne uloge koje su prisutne na svakom sastanku za planiranje sprinta: vlasnik proizvoda (PO), razvojni tim i Scrum master (SM). Svaka uloga ima specifične odgovornosti tokom sastanka za planiranje sprinta.
PO je odgovoran za stvarni sadržaj zaostatka i osiguravanje da je zaostatak proizvoda ažuran i prioritetan. PO na kraju poseduje sastanak za planiranje sprinta i odgovoran je za olakšavanje diskusije o stavkama zaostatka proizvoda, pomažući timu da razume poslovnu vrednost svake stavke. PO takođe komunicira i radi sa razvojnim timom na utvrđivanju cilja sprinta i osigurava da je sadržaj sprinta usklađen sa ukupnom vizijom proizvoda.
Razvojni tim je odgovoran za odabir stavki zaostatka proizvoda na kojima će raditi tokom sprinta i efikasno kreiranje sadržaja sprinta. Samo razvojni tim može da se posveti određenim stavkama iz zaostatka. Razvojni tim je odgovoran za procenu napora potrebnog za svaki zadatak i dodeljivanje istog članovima tima.
SM je odgovoran za organizovanje Scrum ceremonija i olakšavanje sastanka za planiranje sprinta, osiguravajući da sve ostane na pravom putu. SM takođe pomaže timu da razume svrhu sastanka za planiranje sprinta i važnost stvaranja zajedničkog razumevanja posla. Takođe se radi o podučavanju tima najboljim agilnim praksama usput.
Svi (u okviru svojih uloga) sarađuju na uspostavljanju zajedničkog dogovora o radu za sledeći sprint i načinu na koji će ga tim izvršiti. Članovi tima su odgovorni za postavljanje pitanja, deljenje svojih gledišta i zajednički rad na kreiranju sadržaja sprinta. Krajnji cilj je isporučiti visokokvalitetne rezultate u periodu sprinta.
Kako se pripremiti za planiranje sprinta
Većina pripremnih radnji leži na vlasniku proizvoda. PO je taj koji je odgovoran za spremnost i pripremu stavki zaostatka. Ne znači da PO mora definisati sve priče i karakteristike u zaostatku, ali odgovornost i vlasništvo su na PO. Takođe, PO treba da bude vlasnik ovog sastanka i da vodi diskusiju o sadržaju.
Zatim, razvojni tim treba detaljno da prouči zaostatak pre planiranja sprinta kako bi sam sastanak mogao da teče glatko. Ako ljudi prvi put čitaju stavke na planiranju sprinta, očigledno će biti potrebno mnogo više vremena da se stvari razjasne.
Svaka stavka o kojoj će se raspravljati na planiranju sprinta takođe će imati već definisane kriterijume prihvatanja. To je, opet, zadatak PO da obezbedi. Stvarni sadržaj stavke i kriterijumi prihvatanja su dva najvažnija ulazna podatka za planiranje sprinta. Ako nedostaju ili se samo jako kolebaju (obično priča koja sadrži samo naslov i uopšte nema sadržaja), onda se tim uopšte ne može pripremiti za njih.
Postavljanje cilja na pravi način
Najefikasniji proces postavljanja ciljeva i zadataka tokom sastanka za planiranje sprinta je da pratite nešto što se može nazvati iterativnim pristupom. Evo nekoliko koraka koji detaljnije objašnjavaju kako definisati efikasne ciljeve:
- Pregledajte zaostatak proizvoda pre planiranja. Tako ćete znati o čemu ćete razgovarati (da ne gubite vreme na sastanku).
- Zajedno definišite cilj sprinta kada tim bude spreman da prihvati sve moguće priče za sledeći sprint.
- Odaberite stavke iz zaostatka da biste formirali upravo dogovoreni cilj sprinta. Uverite se da su sve ostvarive u sprintu.
- Precizirajte cilj sprinta, ako je potrebno, kada se sadržaj sprinta formira sa stavkama iz zaostatka. Prilagodite ono što je potrebno da biste osigurali pravilnu i jasnu komunikaciju inkrementa sprinta sa svima izvan tima.
- Pregledajte i revidirajte ciljeve sprinta čak i tokom samog sprinta, posebno ako dođe do jakih i nepredvidivih komplikacija. U tom slučaju je potrebno redefinisati ciljeve sprinta i što se pre dogodi, to bolje za sve.
Ne zaboravite da će svaki cilj sprinta odražavati stvarni kapacitet sprinta (koliko će tim biti dostupan u sledećem sprintu), a procena napora za svaku stavku koja formira sadržaj sprinta mora postojati.
Najbolje prakse za planiranje sprinta
Ako želite da uspete na ovom sastanku, uvek se pripremite unapred. Ova poruka uglavnom dolazi do vlasnika proizvoda, ali ovo ne isključuje i razvojni tim. Svi treba unapred da pregledaju trenutno stanje zaostatka proizvoda.
Uz to, ne morate da pitate ljude da li im je ovo zaista prvi put da vide ovu priču. U idealnom slučaju, poželjno je da neke od najjasnijih priča već budu procenjene, mada to uglavnom nije realno očekivanje.
SM treba da uradi sve što je moguće kako bi sastanak bio fokusiran na stvarni dnevni red i teme koje treba obraditi. Ovo je izuzetno teško, pogotovo ako tim još nije sazreo. Postoji snažna tendencija da se raspravlja o svemu i svakom detalju i da se dovode u pitanje čak i osnovne činjenice koje bi se inače smatrale atomskim. Prekinite to i recite timu da nastavi dalje.
Saradnja i komunikacija su ono što pokreće svaki uspešan Scrum tim. Svi imaju priliku da postavljaju pitanja u bilo kom trenutku, pa iskoristite to na pravi način. Ne postoji ništa gore od planiranja sprinta, gde možete da čujete samo vlasnika proizvoda (ili još gore, samo Scrum Mastera).
Sastanak za planiranje sprinta mora imati konkretna vremenska ograničenja. Ne produžavajte ovaj dogovoreni termin. I molim vas, nemojte praviti još jedan (poseban) drugi deo planiranja sprinta jer onaj koji se upravo dogodio nije bio dovoljan. Učite iz toga i uradite to sledeći put (mnogo) bolje.
Apsolutno nemojte
Ne napuštajte planiranje sprinta, a da se stavke ne podele na priče. Uobičajena je greška verovati da je to nešto što tim može uraditi i kasnije. Pre svega, to ima direktan uticaj na tačnost procene sadržaja sprinta.
Takođe, vi efektivno premeštate neke od aktivnosti planiranja sprinta u vreme koje je predviđeno za stvarni razvoj stavki. Skraćujete vreme razvoja sadržaja sprinta i ne dajete mu vremensko ograničenje.
Nikada nije dobra ideja povećati, produžiti ili umnožiti Scrum ceremonije. Uprkos tome, upravo se to dešava većinu vremena. Nemojte pratiti većinu u ovom slučaju.
Pogledajmo kratko neke od alata za planiranje koje možete koristiti dok izvodite sesije planiranja sprinta. To bi vam moglo pomoći da postignete veću efikasnost, iako bi se moglo tvrditi da je najefikasniji način imati zreo tim bez dodatnih alata.
#1. Tara
Izvor: tara.ai
Tara.ai je alat za planiranje sprinta koji koristi veštačku inteligenciju (AI) kako bi pomogao u planiranju i efikasnijem upravljanju sprintovima. Alat je dizajniran da automatizuje manuelne zadatke koji su uključeni u planiranje sprinta, kao što je procena napora i dodeljivanje zadataka članovima tima. Tara.ai takođe pruža uvid u realnom vremenu i analitiku timovima kako bi pratili svoj napredak i oblasti za poboljšanje.
Očigledno, jedna od ključnih razlika između Tara.ai i drugih sličnih alata je upotreba AI. Tara.ai koristi algoritme mašinskog učenja za analizu podataka iz prethodnih sprintova i pružanje preporuka za razumevanje kako da se poboljša proces za sledeće sprintove. Alat takođe može pomoći u kreiranju preciznijih i detaljnijih korisničkih priča.
Još jedan specifičan aspekt je koliko je Tara.ai prilagodljiv. Alat se može konfigurisati tako da odgovara specifičnim potrebama svakog tima. Takođe se može lako integrisati sa drugim alatima i platformama.
#2. ClickUp
Izvor: clickup.com
ClickUp je alat za planiranje sprinta koji pruža sveobuhvatnu platformu za upravljanje projektima, uključujući planiranje sprinta. Alat je veoma bogat funkcijama i podržava niz mogućih integracija.
Ključna razlika između ClickUp-a i drugih alata je u njegovoj fleksibilnosti. Možete da prilagodite ClickUp možda čak i više i da kreirate mnoge prilagođene radne tokove i procese kako biste ispunili vaše zahteve za projektom. Alat pruža niz šablona i unapred izgrađenih tokova posla koje možete dalje prilagoditi.
Druga razlika je u tome što ClickUp podržava veliki broj integracija sa drugim alatima i platformama. Alat se može integrisati sa popularnim alatima kao što su Slack, Trello i Google Drive, omogućavajući timovima da pojednostave svoj radni tok i da sarađuju zajedno.
ClickUp daje timu dobru količinu funkcija koje pomažu u planiranju i upravljanju njihovim sprintovima, kao što su upravljanje zadacima, praćenje vremena i izveštavanje. Alat podržava uvide i analitiku u realnom vremenu kako bi se analizirao napredak tima tokom vremena i na taj način identifikovale oblasti za poboljšanje.
#3. Lucidspark
Izvor: lucidspark.com
Lucidspark je alatka za planiranje sprinta koja pruža virtuelnu tablu za timove da sarađuju i planiraju svoje sprintove. Alat ima za cilj da pomogne timovima da osmisle nove ideje i uvedu sistem u informacioni haos, što efikasnije planira rad tima.
Jedna od ključnih razlika koja izdvaja Lucidspark je njegov fokus na vizuelnu saradnju. Alat pruža niz šablona i vizuelnih elemenata koje timovi mogu da koriste kako bi organizovali svoje ideje i planirali svoje sprintove. Virtuelna tabla omogućava timovima da sarađuju u realnom vremenu, u velikoj meri eliminišući nedostatke različitih lokacija.
Još jedno svojstvo Lucidspark-a je njegova široka mogućnost integracije sa drugim alatima i platformama. Slično kao i ClickUp, lako se integriše sa alatkama kao što su Slack, Google Drive i Trello.
Lucidspark podržava mnoge funkcije za timove da planiraju i upravljaju svojim sprintovima. Na primer, upravljanje zadacima, praćenje vremena i izveštavanje. I opet, Lucidspark takođe pruža uvid u realnom vremenu i analitiku kako bi pomogao timovima da prate svoj napredak i identifikuju oblasti za poboljšanje.
#4. Wrike
Izvor: wrike.com
Wrike je alat za planiranje sprinta koji pruža sveobuhvatnu platformu za upravljanje projektima, uključujući planiranje sprinta.
Jedna od ključnih razlika između Wrike-a i drugih sličnih alata je njegov fokus na saradnju u realnom vremenu. Wrike je implementirao niz funkcija za saradnju, uključujući uređivanje u realnom vremenu, komentarisanje i dodeljivanje zadataka. Alat takođe podržava mnoge komunikacione funkcije, kao što su ćaskanje, e-pošta i video konferencije.
Wrike se može integrisati sa sličnim alatima kao što su prethodno pomenuti (Slack, Google Drive), ali i sa Microsoft Teams, što može biti prednost za neke kompanije.
Wrike takođe podržava funkcije koje pomažu timovima da planiraju i upravljaju svojim sprintovima. To uključuje upravljanje zadacima, praćenje vremena i izveštavanje.
#5. Zoho
Izvor: zoho.com
Zoho Sprint je još jedan alat za planiranje koji pruža sveobuhvatnu platformu za Agile upravljanje projektima.
Jedno od ključnih svojstava Zoho Sprint-a je njegov fokus na jednostavnost. Alat vam daje jednostavan i intuitivan interfejs koji je lak za korišćenje, čak i za timove koji su novi u Agile upravljanju projektima. Alat takođe pruža dobru količinu šablona i unapred izgrađenih tokova posla koji se mogu prilagoditi kako bi ispunili zahteve vašeg projekta.
Kao i kod drugih alata sa liste, Zoho Sprint takođe obezbeđuje upravljanje zadacima, praćenje vremena i izveštavanje. I takođe uvid u realnom vremenu i analitiku timovima kako bi izmerili i identifikovali oblasti za poboljšanje.
Zaključak
Izvođenje planiranja sprinta na pravi način je proces koji se može savladati samo iskustvom. Čak i ako naučite svu dostupnu teoriju, prvi osnovni instinkt ljudi kada su na sastanku biće da skrenu sa područja fokusa.
Tim pun tehničkog iskustva je i tim pun komplikacija. Zrelost tima se u ovom slučaju meri razumevanjem načina razmišljanja, a ne nivoom iskustva u tehničkim veštinama koje poseduju. Zato je toliko važno znati gde treba poboljšati i (što je još važnije) kako poboljšati.
Pogledajte i nezdrave procese koji mogu da vam unište sprint.