Välearendus

Välearendus (kohati käibiv "agiilne" on naiivne poolkeelne laen;välearendus = agile development inglise keeles Agile Software Development) on kiire tarkvaraarendus, kus kasutatakse agiilseid metoodikaid. Selle järgi peetakse projekti läbikukkumist tarkvara arendamise kõige kulukamaks aspektiks ning seetõttu on seda tüüpi tarkvaraarenduse eesmärk korraldada tööd viisil, mis suurendaks edu saavutamise tõenäosust. Tähtsustatakse võimet muudatustele reageerida, et olla edukas ebakindlas ja muutuvas keskkonnas.

Väleda tarkvaraarenduse kolme faasi jooksul – projekti alustamine, sprindi planeerimine ja demosessioonid – on kasutajatel võimalus teha muudatusi vastavalt ärikontekstile ja klientide nõudluse muutustele. See parandab arendajate ja kasutajate vahelist vastastikust mõistmist, hinnates lahenduse mooduleid, et kindlaks teha, kas ärivajadused on täidetud, tagades seeläbi kvaliteetsed tulemused.

Selle arendusviisi puhul leitakse, et muutused tulevad ette niikuinii ning neid tuleb hallata, mitte vältida. Projektijuhtimine rõhutab planeerimise, disaini ja dokumentatsiooni vajalikkust. Keskendutakse sellele, et saaks edastada kliendile kõik töötavad funktsioonid võimalikult kiiresti ning et oleks tagatud töötavad tugisüsteemid, et üleantud funktsioone oleks võimalik pidevalt toetada.

Mõiste hakkas levima, kui avaldati "The Manifesto for Agile Software Development", mis määratleb selle väärtused ja põhimõtted.

 Agiilsed metoodikad 

Agiilsed metoodikad on näiteks

 Scrum
 Extreme Programming (XP)
 Adaptive Software Development (ASD)
 Dynamic Systems Development Method (DSDM)
 Crystal
 Feature Driven Development (FDD)
 Lean Software Development (LSD)
 Agile Modeling (AM)
 Agile Unified Process (AUP)

 Ajalugu 
Esimesed kirjeldused kiirest ehk väledast arendusest pärinevad aastatest 1980–1990.

2001. aastal kogunes USA Utah' osariigi Snowbirdi kuurordis arendusmeetodeid arutama 17 tarkvaraarendajat, kelle seas olid näiteks Jeff Sutherland, Ken Schwaber ja Alistair Cockburn. Põhiline põhjus oli rahulolematus tarkvara arendusega kaasnevate lisakuludega ja vajadus leida paremaid viise, kuidas tarkvara luua. Tulemusena pandi kirja üldised tarkvaraarenduse põhimõtted ehk Manifesto for Agile Software Development.

Välearenduse meetodite puhul arvatud, et need on paremini ennustatavad, rohkem inimestele orienteeritud ning keskenduvad pigem lõpptulemusele kui töö bürokraatlikule iseloomule.

2005. aastal kirjutas Alistair Cockburni ja Jim Highsmithi juhitud grupp projektijuhtimise põhimõtete, vastastikuse sõltuvuse deklaratsiooni (Declaration of Interdependence), et juhtida tarkvaraprojektide juhtimist vastavalt välearenduse meetoditele.

2011. aastal lõi Agile Alliance juhendi välearenduse tavadele (2016. aastal nimetati see ümber agiilseks erialasõnastikuks), mis on arenev avatud lähtekoodiga töökindlate agiilsete tavade, terminite ja elementide määratlustest, koos tõlgendustest ja kogemuste suunistest maailma agiilsetelt praktikutelt.

 Välearenduse põhimõtted 
Agiilse tarkvaraarenduse põhimõtted https://agilemanifesto.org/iso/et/manifesto.html

 Hindame enam inimesi ja nende suhtlemist kui protsesse ja arendusvahendeid
 Hindame enam töötavat tarkvara kui täiuslikku dokumentatsiooni
 Hindame enam koostööd kliendiga, kui läbirääkimisi lepingute üle
 Hindame enam muudatustega hakkamasaamist kui algse plaani järgimist

 Põhiprintsiibid 
Agiilse arenduse 12 põhiprintsiipi https://agilemanifesto.org/iso/et/principles.html

 Oluline on tagada kliendi rahulolu, vajaliku tarkvara kiire ja tihe tarnimine
 Muutuvate oludega arvestamine
 Viia muudatused kiiresti tootmisse ehk tarnida nii tihti kui võimalik
 Koostöö kliendiga, meeskond peab töötama koos kogu projekti vältel
 Töö edukuse aluseks on motiveeritud inimesed. Usalda ja toeta!
 Näost-näkku suhtlemine on kõige tõhusam viis info jagamiseks arendusmeeskonnas
 Töötav tarkvara on peamine mõõdupuu
 Jätkusuutlik arendus
 Pidev tähelepanu tehnilisel täiuslikkusel ja heal disainil
 Lihtsuse säilitamine ehk ebavajaliku töö tegemata jätmine
 Iseorganiseeruvad meeskonnad
 Muutustega kaasas käimine ja veelgi tõhusamaks muutumine

 Välearenduse ja traditsioonilise projektijuhtimise erinevused 
Projektijuhtimise vaimse hoiaku erinevused
 Traditsiooniline projektijuhtimine  Välearendus Projekti teostamist saab standardiseerida  Ükski projekti ei ole kunagi sama Klientide kaasamine on ebatõenäoline  Klientide kaasamine on kriitiline Nõuded peavad olema eelnevalt suures osas määratletud  Ainul arhitektuurilised nõuded peavad eelnevalt täielikult teada olema Kulub aega, et teha midagi, mille pealt saab klient teha tuleviku otsuseid  Tehakse esimesena seda, mis võimaldab kliendil teha tuleviku otsuseid
Projektijuhtimise põhimõtete erinevused
 Traditsiooniline projektijuhtimine  Agiilne projektijuhtimine Juhtimisele orienteeritud  Tehnoloogiale orienteeritud Tähtaegadele keskendumine  Tulemustele ja kvaliteedile keskendumine Üksikisikute summa  Meeskond Koostöö koosolekute kaudu  Pidev töö meeskonnas Vastutus protsesside eest  Vastutus ülesannete eest Teabevahetus dokumentide kaudu  Teabevahetus näost näkku Muutusi tõrjuv  Muutusi salliv Keskenduda kaitsemeetmetele  Keskendumine lihtsusele Tee, tee, tee  Tagasiside, tagasiside, tagasiside
Välearenduse puhul on projektijuhtimise eelised projektipõhises organisatsioonis, maatriks organisatsiooni ees:
 Äri- ja projektide otsustusprotsess on paremini integreeritud kui maatriks
 Projektimeeskondade ainus eesmärk on saavutada ettevõtte eesmärgid
 Maatriks organisatsioonis olevaid mitut, eraldi ja sageli vastuolulist eesmärki pole olemas
 Kinnine mõtteviis, mis tihtipeale takistab projekti edenemist, eriti siis, kui see hõlmab muutuvaid nõudeid, on elimineeritud
 Teie unikaalseid ja võtmeisikuid saab luua oma kõige olulisemate projektide juhtimiseks, mis määravad teie ettevõtte, ilma konkureeriva funktsionaalse juhtimise takistusteta

 Viited 

Kategooria:Projektijuhtimine
Kategooria:Tarkvaraarendus