Kdaj Agile
KDAJ JE AGILNI PRISTOP SMISELN?

Predstavljajmo si, da želimo razviti in nato izdelovati brezžični kontroler za manjše sončne elektrarne. Govorimo o hibridnem produktu, ki ga sestavljata programska in strojna oprema. Kako se lotiti tega projekta? Lean, Agile, waterfall? Na voljo imamo vse naštete možnosti in njihove kombinacije. Agilni pristop

Agilni pristop
Klikni za povečavo

Vsak od predstavljenih proizvodnih pristopov ima svoje prednosti in omejitve.

  • Tradicionalna proizvodnja je smiselna v okolju z nizkimi marginami, manj zanesljivo infrastrukturo in slabše izobraženo delovno silo.
  • Lean proizvodnja je primerna za okolja z nizkimi marginami, izobraženimi in motiviranimi delavci v proizvodnji, zanesljivo logistiko ter stabilno zaposlitveno politiko.
  • Agilna proizvodnja je primerna za manjše prilagojene serije in produkte, ki zahtevajo hitre inovacijske cikle.

Razlike so tudi pri razvoju produktov.

  • Tradicionalni (waterfall) razvojni pristop je sprejemljiv v stabilnih industrijah z manjšo konkurenco. V okoljih, kjer tehnološki pritiski niso veliki in je na voljo veliko investicijskega kapitala.
  • Lean razvojni pristop (Kanban), omogoča večje teame, ki pokrivajo tako razvoj programske kot strojne opreme. Primeren je tudi za hierarhična organizacijska okolja.
  • Agilni razvojni pristop (Scrum, XP…) omogoča hitrejše inovacijske cikle, večje razvojne iniciative in prodornejše rešitve. Zahteva pa Agilno transformacijo organizacije.

Glede na organizacijske in tržne prioritete, lahko podjetja pri plasiranju produkta prakticirajo vse zgoraj naštete kombinacije Agilnih, Lean in tradicionalnih pristopov. Nikjer ne piše, da Agilno razvit produkt ne more biti proizvajan po Lean ali celo tradicionalni metodi. Včasih je to smiselno.

V pričujočem članku se posvečam predvsem Agilnim pristopom. Ti so izredno primerni za kompleksne razvojne dejavnosti. To so dejavnosti kjer obstaja le ohlapna vizija produkta ali storitve, pot kako jo realizirati pa ni znana. Običajno takšna vizija opisuje le željeni učinek rešitve, kako pa bo rešitev izgledala v praksi, je prepuščeno razvojnim teamom. Ti so samo-organizirajoči in samo-usmerjajoči*, ter operirajo le v okvirih produktne in organizacijske vizije.

To je pričakovano in željeno stanje, ki pod pravimi pogoji polno aktivira ustvarjalni in inovativni potencial razvojne organizacije. Rezultat takšne iniciative je inovativna rešitev.

* Zaradi negativnih konotacij iz preteklosti, se poizkušam izogibati izrazu “samoupravni”, čeprav bi to bil najprimernejši prevod izraza self-managed.

Pozicioniranje

Za pozicioniranje Agilnega pristopa se pogosto uporablja Cynefin framework. Le ta nam pomaga pri odločitvi za ali proti uporabi Agilnega pristopa.

Kdaj Agile
Klikni za povečavo

Waterfall

Projekte za katerih izvedbo v Cynefin frameworku obstajajo najboljše prakse (best practices) ali vsaj dobre prakse (good practices) izvajamo z waterfall pristopom. V waterfall se celotno planiranje opravi pred pričetkom izvedbe. Ko je detajlni projektni plan odobren, se začne z izvedbo. Spremembe plana, ko smo enkrat v fazi izvedbe, niso zaželene, so običajno drage in morajo skozi zahteven postopek odobritev in ponovnega planiranja (Integrated Change Control).

Stereotip waterfall projekta je gradnja nove stavbe. Investitor pričakuje, da bo v uporabo prejel objekt, kot ga je projektantu potrdil na začetku izvedbe.

Waterfall v Cynefin modelu torej pokriva probleme z očitnimi (obvious) in (glede na okoliščine) kompliciranimi (complicated) rešitvami.

Agile

Ko se srečamo s kompleksnimi problemi, kjer relacija med vzrokom in posledico ni samo po sebi umevna, je primernejši Agilni pristop. Mi lahko na primer razvijemo tehnično in funkcionalno odlično aplikacijo, ampak če je trg ne želi, vloženih sredstev ne bomo povrnili (kvaliteta aplikacije ni vzročno povezana z njenim tržnim uspehom).

Iz tega razloga Agile temelji na cikličnem inkrementalnem razvoju, kjer vsak nadaljnji cikel gradi na spoznanjih prejšnjega. Ta feedback je lahko tehnične narave ali neposredno od stranke, ki je kontinuirano vključena v razvojni proces.

Probe – Sense – Respond v tem kontekstu pomeni, da razvijemo delno rešitev, jo preverimo s stranko in v naslednjem ciklu smer razvoja prilagodimo prejetim povratnim informacijam.

Agile v Cynefin modelu pokriva kompleksne (complex) in delno komplicirane (complicated) probleme. Zadnje v primeru, ko obstaja večja možnost sprememb zahtev med izvedbo.

 

Drugi način umestitve Agilnega pristopa je t.i. Stacey matrix. Mislim, da slika ne zahteva posebnega komentarja.

Kdaj Agile

Kaj pa območje kaosa, ko ne obstaja niti konsenz glede zahtev, niti ni poznan tehnični pristop?

Agile v kaosu ne funkcionira. V takšnem primeru je iniciativo bolje razbiti na več podprojektov, ki bojo v večjem delu študije izvedljivosti (feasibility study). Rezultati teh podprojektov bojo idealno grobi modeli ali prototipi, ki bojo nato služili kot osnova za nadaljnje odločanje ter definiranje zahtev in tehnoloških pristopov. Te informacije nas bojo iz področja “kaosa” premaknile na teritorij kompleksnih problemov.

|

Pogosto spregledani pogoji za Agile

Agile smo pozicionirali glede tipov problemov, ki jih naslavlja. Kaj pa organizacijski faktorji?

Da bi Agilni pristop bil mogoč, mora iniciativa po mojem prepričanju zadostiti naslednjim pogojem:

  • Razvijamo rešitev kjer je cilj poznan, metode za dosego le tega pa ne. Ali:
  • Razvijamo rešitev kjer je cilj ohlapno definiran in se lahko v času projekta spremeni v skladu z novimi spoznanji, ki se bojo pojavila v času razvoja.
  • Predvidena rešitev je v obliki, ki dopušča inkrementalno realizacijo poslovne vrednosti.
  • Pogodbeni odnos dopušča inkrementalno realizacijo rešitve.
  • Razvojna organizacija dopušča in podpira uporabo Agilnih pristopov.
  • Stranka je pripravljena kontinuirano sodelovati v razvojnem procesu.

Z zagotovljenimi zgornjimi pogoji smo ustvarili okolje, ki dopušča Agilni pristop in realizacijo njegovega potenciala.

Če pa pogoji niso izpolnjeni, se je projekta bolje lotiti z linearnim waterfall pristopom. To ne pomeni, da bo ta avtomatično neuspešen, le manj možnosti je za njegov uspeh in cena bo višja. Podjetja, ki se lotevajo kompleksnih problemov/projektov in niso pripravljena na Agilno transformacijo, morajo to tveganje vzeti v zakup.

Odločitev za Agile ali waterfall je seveda pogojena tudi s tipom pogodbe med dobaviteljem in naročnikom. Obširen pregled Agilu prilagojenih tipov pogodb sem pripravil v tem članku.

 

Organizacije, ki razmišljate o Agilni transformaciji, ste vabljene na svetovanje, ki ga izvajam v različnih oblikah (tudi brezplačni). Odločitev za pravi framework, je pomemben faktor prihodnjega uspeha, saj se Agilni pristopi med seboj precej razlikujejo. Poleg tega pa obstaja tudi Lean…

Ostale objave

Daily standup in 3 vprašanja
Orodja
admin

DAILY STANDUP IN 3 VPRAŠANJA

Mnogo razvojnih timov ne prakticira Daily Standup oz. Daily Scrum. Do zavračanja praviloma pride zaradi nerazumevanja funkcije dogodka in njegovih napačnih izvedb. Posledica je prepričanje, da je Daily Scrum zapravljanje časa – in v takšnih okoliščinah pogosto tudi je. Po

Članek »
Scrum vzorci - duh Scruma
Napredni pristopi
admin

SCRUM VZORCI – DUH SCRUMA

“Scrum is a light-weight process framework which is simple to understand but difficult to master.” Zgornja trditev je uveljavljena mantra Agilnih praktikov, konzultantov in evangelistov. Je resnična, a sama po sebi ne prinaša vrednosti. Scrum vzorci nadgrajujejo framework s praktičnimi

Članek »
Scrumban
Osnove
admin

KAJ JE SCRUMBAN

Člani teamov, nezadovoljni s Scrumom, včasih pravijo, da bodo “kar prešaltali na Scrumban”, ker tam ni potrebno planirati. To je pogosto prepričanje. Scrumban bo nekako ohranil vse prednosti Scruma, rešil pa nas bo dolgočasnega ocenjevanja velikosti uporabniških zgodb in planiranja

Članek »
Adaptive leadership
Delo s teamom
admin

ADAPTIVE LEADERSHIP SKOZI RAZVOJ TEAMA

V nedavnem članku smo spoznali Tuckmanov model razvoja teamov. Prispevek se je osredotočal na sam model in značilnosti teamske dinamike v določenih fazah. Tokrat bomo temo nadgradili z vpogledom v to, kako razvoj teama izgleda s stališča “servant leaderja“. Adaptive

Članek »
Shopping Cart
Scroll to Top