Agilni pristup: primer kompanije Endava

Događaji / 21. 03. 2016. / Autor:

O agilnoj organizacionoj kulturi kao frazi sam čuo tek pre par meseci. Shvatio sam da sam to već viđao ali nisam znao da se baš tako zove. "œAgile" fraza je za kratko vreme počela da odzvanja sa više različitih strana, najpre sam je čuo od svog prijatelja Nemanje koji je pokrenuo čak i blog na tu temu, a kasnije i na DaFED predavanju Jasmine Nikolić koje sam nešto pre Nove godine odgledao na Youtubu.

Agilni pristup praktično znači konstantnu evaluaciju, isporuku i prilagođavanje proizvoda i poslovanja kao ključne akcije u procesu rada. Inicijativa agilne transformacije daje za pravo poslovnim procesima da budu brži, jeftiniji i bolji. Agilni pristup je postao posebno izražen u IT kompanijama i definisan je kroz agilni razvoj softvera.

eoin

Ne poznajem puno takvih organizacija, a postojeći kontakt sa kompanijom Endava dao mi je povoda za ovu priču, obzirom da Endava već uveliko svoju organizacionu kulturu  bazira na agilnim metodama. Posredstvom srpskih predstavnika ove kompanije, uspeo sam da postavim više pitanja Eoinu Woodsu, CTO kompanije Endava.

Agilna transformacija je vrlo vruća tema današnjice. Recite nam nešto više o tome kao i o prednostima agilnog pristupa organizaciji?

Agilni pristup vuče korene u metodama ekstremnog programiranja Kenta Beka (Kent Beck), kasnih devedesetih. Prošlo je puno vremena dok se cela priča nije prenela na organizacije, ali da, definitivno postaje vruća tema o kojoj se sve više govori.

Principi agilne kulture su primarno definisani u dokumentu Agile Manifesto. Prednosti koje agilnost donosi organizaciji su brži i jefiniji razvoj proizvoda. To se postiže kroz povećanufleksibilnost, pojačan fokus klijenta, maksimizaciju vrednosti koju stvaraju timovi za razvoj, kao i redukciju otpada u vidu bespotrebnog posla usled prepravki i razvoja funksionalnosti koje se nikad ne bi koristile ili su manje važne krajnjem kupcu. Ukratko, agilnost priznaje da je teško predvideti budućnost i da se stvari brzo menjaju, pa je važnije da se sa promenama nosimo, nego da pogađamo šta će se desiti u budućnosti.

Da li klijenti sa kojima radite razumeju agilne metode i eventualne prednosti koje ove metode donose?

Sve zavisi od okruženja u kome se klijent nalazi. Neke organizacije su već suočene sa agilnom konkurencijom koja se kreće brže od njih, zato brže shvataju da se pristup organizaciji mora menjati. Neke nove organizacije od početka rade po agilnim metodama. Ostali klijenti žele da se menjaju brže, ali su u industrijama gde je agilni rad rad neuobičajen, pa je potrebno vreme da shvate prednosti agilnog pristupa. Mi krojimo agilnu transformaciju na nivo koji će klijent razumeti.

Agilni pristup definitivno znači fleksibilnost, međutim, da li je moguć ukoliko su kod projekata definisane fiksne cene?

Imamo rešenje i za to. Postoje dva načina saradnje sa klijentima koji žele fiksnu cenu. Prvi i najjednostavniji način je da radimo sa njima na manje fiksne cene koje se povećavaju do nivoa komfora i poverenja, gde se oni osećaju srećno i bezbedno u tom fleksibilnom modelu. Za ostale klijente koji su isključivi u pogledu fiksne cene, trudimo se da im pojasnimo da to ne donosi veću predvidivost projekta vec samo fiksira jedan njegov aspekat.Kod projekata sa fiksnom cenom dakle znamo tačno koliki je budžet pa radimo zajedno sa klijentom na konstantnoj reprioretizaciji njegove liste zahteva, sve dok se budžet ne potroši.

agile3

Na šta klijent mora biti spreman u tim situacijama?

Ako klijent ima definisan niz potrebnih karakteristika proizvoda, onda mora biti spreman na fleksibilnost preko dogovorenog budžeta. Ili mogu raditi prema klasičnom modelu organizacije posla i izgubiti prednosti koje donose agilni projekti. Uvek biramo pristup koji će klijenti razumeti i smatrati najispravnijim, kako bi svi zahtevi bili urađeni na agilni način.

Kod fokusa na agilnost, često se govori i o Skram (Scrum) modelu. Šta je Skram, koje su najbolje tehnike da se formira Skram tim i da se odabere ispravam Skram pristup?

Skram je samo jedan mali deo u vodjenju agilnog projekta. Mi koristimo Skram kao deo pristupa, ali takođe koristimo i Kanban da bi kontrolisali zadatke koji su u toku na samim projektima a fokusiramo se na inženjersku disciplinu i praksu koja je potrebna za izradu kvalitetnog softvera sto Skram sam po sebi ne osigurava.

Naši timovi uvek dizajniraju i podešavaju procese prema situaciji u kojoj se nađu, ali neke od tehnika koje će osigurati da Skram dobro funkcioniše su jako "œvlasništvo" nad projektom, održavanje precizno definisanih, vidljivih backlogova koji su pravilno rasporedjeni po prioritetima, sprovođenje "œsprintova" koji kreiraju vrednost za klijenta, održavanje svakodnevnih „stand-up“ sastanaka radi bolje komunikacije i redovno preispitivanje radi unapređenja procesa.

Da li se svi ovi principi mogu primeniti na više timova u formi Skrama skramova?

Da, definitivno, upravo se to u našoj kompaniji Endava dešava rutinski. Evo i primera. Jedan projekat može imati dva skram tima u Lasijutri u Bukureštu i dva kod našeg klijenta, recimo u Velikoj Britaniji. Imamo specifičan set tehnika, kao što je organizacija tima zaduzenog za tehnolosko rukovodjenje projekta takodje po Skram metodologiji, a koji radi na koordinaciji i integraciji timova na različitim lokacijama. Održavanje zajedničke kulture, njeno razvijanje i unapređivanje je takođe važno da bi distribuirani programerski timovi dobro funkcionisali.. Stoga mi naglašavamo razvoj i usklađivanje zajedničke kulture kao deo svakog projekta agilne transformacije, i to radimo kroz stažiranje, podučavanje i treninge.

agile1

Sa kojim problemima se se suočavaju timovi koji se nalaza na različitim lokacijama i na koji način ih prevazilaze?

Ključni izazov za dislocirane timove su kultura i komunikacija. Imati skram timove na različitim lokacijama znači nedostatak neposrednosti i neformalnosti u odnosu na komunikaciju uživo (što bi naše kolege u Americi rekle da nedostaju "œrazgovori kod aparata za vodu"). Ako se timovi ređe sreću, možete imati kulturološke probleme gde se različite kulture razviju na različitim lokacijama. Imamo puno iskustva i načina kako da prevaziđemo ove probleme i pristup se najbolje može sumirati u međusobno uvažavanje, konstantna komunikacija i zajedničko posećivanje kad god je to moguće.

Ako shvatate izazove distribuiranog načina rada, onda svi aktivno radite na tome da se problemi prevaziđu. Konstantna komunikacija znači da se koriste posebni alati za deljenje informacija, virtuelne bele table, moderni video telekonferencijski sistemi, kao i konstantno razmišljanje o tome kako da se informacija kvalitetno prenese i kako ce ona biti prihvaćena u celom timu.

Naravno, ništa nije bolje od komunikacije licem u lice pa kod projekata gde su timovi dislocirani mi uvek budžetiramo putovanja kako bi izgradili još bolje odnose i razbistrili eventualne nesporazume.

Koliko je važno poverenje između  pozicija Product Ownera, Scrum Mastera i tima u borbi sa ovim izazovima?

Poverenje je kamen temeljac na kome se gradi efektivna agilna saradnja. Ako postoji neko nerazumevanje u nekoj od tački tog trougla, može se lako ući u problem i agilni način rada ne može doći do izražaja, kao ni sve prednosti koje nosi. Tim mora da shvati da se uspeh ili neuspeh reflektuju na celu ekipu. Zato su putovanja, povezivanje i dobra praksa u dislociranom radu važni.

Koje inicijative možemo sprovesti timovima kako bi kolektivno bili predani kodu i procesu?

Kultura koju je važno da stvorimo je ona u kojoj svi osećaju da je uspeh projekta njihov cilj i odgovornost, ne nešto za šta će neko drugi brinuti. Što pre to shvatimo i svima usadimo osećaj kolektivne odogovornosti i snage, želja će se stvoriti sama. Ljudi ne žele kolektivnu odgovornost u situacijama u kojima znaju da neće moći da doprinesu procesima ili gde ne veruju svojim kolegama. Ako ovi problemi postoje, postojanje kolektivne odgovornosti će ipak pomoći da se problemi prevaziđu.

Produktivnost je jako važna. Šta je ključ agilne projekte organizacije i koje su to nove tehnike koje timovi mogu da primene da bi povećali produktivnost?

Primećujem veliko interesovanje agilnih timova za "œLean" metodologijom i smatram da je to prirodni prelaz za timove koji razumeju agilnu kulturu i pronalaze sve benefite tog načina rada, ali se takođe pitam koji je naredni korak. Mislim da ćete videti tehnike slične Kanbanu, mapiranje vrednosnog protoka, i situaciju gde "œset-based" način razvoja postaje sve češći.

agile2

Da li postoji metrika po kojoj se meri uspeh u agilnom načinu rada?

Ključne metrike su one koje su stvarno važne u bilo kom upravljačkom sistemu, a primarno vrednost koja se isporučuje klijentu, vreme između ideje i realizacije, kvalitet i pouzdanost sistema, zadovoljstvo klijenta, količina izgubljenog vremena i zadovoljstvo zaposlenih.

Agilni razvoj je često pominjan u kontekstu razvoja novih sistema. Da li se može uspešno primeniti u nasleđenim sistemima?

Nasleđeni sistem obično odlikuje veliki broj problema, koji se najčešće manifestuju lošim kvalitetom koda, ograničenim automatskim testiranjem, nedovoljno ažurnom ili nepostojećom dokumentacijom, nagomilavanjem tehničkog duga, nedostatkom informacija o istoriji i razvoju sistema. Sve ove probleme je teško povezati sa konkretnim razvojnim pristupom, ali se agilne metode fokusiraju na transparentnost, učenje na osnovu iskustva i izgradnji poverenja. A ako je to povezano sa dobrom inženjerskom praksom poput sistematskog refaktorisanja i automatskog testiranja, dobijamo jako dobar pristup rešavanju problema te vrste. Šta više, u Endavi imamo grupu za menadžment aplikacija koja često mora da usvoji nasleđene aplikacije naših klijenata i onda oni koriste agilni pristup baš iz ovih razloga.

Da zaključimo, šta je suština agilnog pristupa?

Suština agilnosti je unošenje fleksibilnosti u procese, uključivanjem promena u toku celog proizvodnog ciklusa, zahtevanjem brzih povratnih informacija kako bi loše ideje bile eliminisane u ranim fazama, kao i u fokusiranju a ono što zaista donosi vrednost korisniku odnosno kupcu.

Ključni momenat je razumevanje suštine agilnog procesa i onoga šta oni zapravo jesu. To nije samo jednokratna, ne samo jedna promena već evolutivni niz adaptacije biznis modela koji procenjuje sam sebe, tržište i klijente, koji daju odgovor na svoje potrebe. 

Više o agilnom pristupu možete pročitati na StartIt blogu, a Eoina Woodsa zapratiti na Tviteru.

Share Button
1
Jedan komentar
  1. Pera

    Odličan tekst!

Ostavi komentar