Izmišljanje rupe na agilnoj saksiji


U razgovorima vezanim za agilni razvoj softvera, ubedljivo najomraženije izjave su one koje sadrže „po PS-u“, bar što se mene tiče (PS – pravila službe, „by the book“, prim. aut.). Takve izjave su opasne i istovremeno dovode u zabludu.

Stalno imam priliku da u različitim kontekstima čujem reči „po PS-u“, a one uglavnom znače izbegavanje obavljanja teškog posla. Tim rečima se uglavnom naglašava kako pravila nisu primenljiva na „stvarne situacije“ ili „naš kontekst“, bez obzira da li se radi o kompaniji ili timu. No, hajde da malo detaljnije razmotrimo šta to sve znači.

Ne radimo Scrum po PS-u

„Scrum PS“ je zapravo Scrum Guide, koji ima samo 17 strana (ili „čak“ 17 strana, zavisno od ugla gledanja). Taj vodič izvanredno objašnjava šta je to Scrum framework i to je zapravo sve što radi. Skoro da se može poistovetiti sa minimalnim opisom automobila i osnovama kako ga koristiti (npr. kako se pokreće, osnove upravljanja, zaustavljanja i sl.)

A opet, većina bi htela da se bavi tom sve popularnijom Scrum stvarčicom, istovremeno shvatajući da im se ne dopada ono što se nalazi u vodiču. Jednostavno je potrebno previše iskrenosti i napuštanje zone udobnosti ili samozavaravanja. Zbog toga odlučuju da preprave ono što vodič opisuje kako bi ga prilagodili sopstvenom kontekstu, odnosno njihovoj verziji stvarnosti. Tako zapravo završe sa „modifikovanim Scrum-om“ (?!), za koji niko baš i ne zna šta je, ali sigurno nije ono što će obezbediti efekte koje Scrum obećava. Bez obzira na to, ništa neće sprečiti okrivljivanje Scruma za neuspeh. Na kraju krajeva, daleko je jednostavnije iskriviti po koje pravilo nego suočiti se sa pravim problemima, zar ne?

Ukoliko se odlučite za taj put, dobićete nešto novo. Ne znam šta je to, ali sigurno više nije Scrum. I sam Ken Schwaber (koautor Scrum-a) je rekao: „Ja izjednačavam Scrum sa igrom šaha. Možete pročitati zvanična pravila šaha. Potezi, igrači, redosled, vrednovanje itd. – sve je opisano. Naučite ih. Onda možete igrati šah. Možda ne igrate baš najbolje, ali možete proučavati dobre partije, strategije i taktike, i vežbati čime ćete postajati sve boljim. Međutim, vi igrate šah, dakle nemate opciju menjanja pravila. Ukoliko promenite pravila, to više nije šah. Jednostavno naučite kako da odlično igrate šah, što je samo po sebi već dovoljan izazov.

Da se nadovežem na ovu šahovsku analogiju – pravila su veoma jednostavna. Ako ih ne poštujete, nećete imati sa kim da igrate.

Isto je i sa Scrum-om. On će vam ukazati na probleme (i to verovatno najpre na najveće). Ukoliko odlučite da ih ignorišete i izmenite pravila tako da ih učinite nevidljivim – slobodno to i uradite, ali nemojte se zavaravati da primenjujete Scrum i očekivati benefite koje framework obećava. Ukoliko izmenite Scrum i ta modifikacija ne radi, nemojte kriviti Scrum – krivite modifikaciju.

Evo još jednog Kenovog citata: „Ukoliko vam se ne sviđa Scrum, pozivamo vas da izumete nešto drugo. Samo, nemojto to zvati Scrum-om.“

U potpunosti se slažem.

Ne radimo Scrum po (nekom drugom) PS-u

Poražavajuća je činjenica da većina onih koji pokušavaju da primene ili izmene Scrum zato što „ne radi“, zapravo nikada nisu ni pročitali Scrum Guide. Oni su u najboljem slučaju pročitali neku drugu knjigu i onda okrivili scrum za prakse i preporuke opisane u njoj. Zapravo, ukoliko upitate nekoga ko je „popravio“ Scrum uz „ne može da se primeni po PS-u“ izgovor, najverovatnije nećete dobiti razumno objašnjenje ili referencu na deo Scrum Guide-a koji nije dobar. U najboljem slučaju ćete dobiti neke razloge, koji nemaju veze sa Scrum Guide-om. Što više navaljujete, verovatnije je da ćete doći do apsurdnih argumenata.

Dakle, najpre se upoznajte sa onim što pokušavate da uradite. Zatim shvatite zašto to pokušavate da uradite, a tek onda odlučite da li zapravo želite to da uradite.

Scrum je fanastičan framework za razvoj novih proizvoda. Svakako nije srebrni metak za svaku vrstu posla, iako može da se koristi u različitim kontekstima sa različitim uspehom. Jeff Sutherland (koautor Scrum-a) je sa drugim autorima veoma lepo to obrazložio u ovom članku.

„Agilni PS“

Postoje i oni koji smatraju da agilni razvoj softvera ne može da funkcioniše onako kako je opisano i da mora da se prilagodi kontekstu. Tako, očigledno, čak ni ta agilna stvar ne može da se primeni po PS-u!

„Agilni PS“ je, naravno, Agile Manifesto – 4 vrednosti i 12 principa! Šta od toga nije moguće primeniti? Zašto? Odgovorite na ta pitanja i spremni ste.

 

Ostali PS-ovi

Dakle, bez obzira na to koji pristup izaberete, postoji knjiga (PS) koja opisuje vaš izbor. Ukoliko ne uspevate da ga primenite, pokušajte da shvatite zašto ne funkcioniše. Svi dobri framework-ovi su projektovani da naglase prilike za poboljšanja. Sve što bi trebalo da uradite je da zapravo uradite nešto u vezi sa njima – samo ih nemojte ignorisati i zbog njih menjati pravila. Sva pravila framework-ova i metoda agilnog razvoja su stvarno jednostavna i sama po sebi optimizovana. Primenjute ih. Nemojte pokušavati da izmislite rupu na saksiji.