Mis vahe on Agile ja Waterfall metoodikal?


Vastus 1:

Alustame põhitõdedest ja vaatame enne, kui hüppame nende plussidesse ja miinustesse, uurime, millised need projektijuhtimise metoodikad on oma olemuselt.

Jugade metoodikat peetakse tarkvaraarenduse traditsiooniliseks lähenemiseks. Selle metoodika järgi jaguneb projekt mitmeks järjestikuseks etapiks, mida ei saa üheaegselt täita. Iga etapi lõpus peaksite läbi vaatama nõuded ja alles siis liikuda järgmisse etappi. Arvesse tuleb võtta seda, et kui olete ühe etapi lõpetanud, ei saa te selle juurde naasta enne, kui kogu arendustsükkel on lõpule viidud. Seetõttu kirjeldab see metoodika arengut kui lineaarset ja järjestikust protsessi, mis koosneb tavaliselt seitsmest etapist:

Plussid:

  • kasutamist on lihtne alustada: oma olemusliku lihtsuse tõttu on seda metoodikat uutele tulijatele ja / või noorematele arendajatele lihtne kasutusele võtta; üksikasjalik dokumentatsiooni fookus: iga etapi jaoks on vaja luua dokumentatsioon, mis muudab eesmärgid arendusmeeskonnale, projektile selgemaks ise on kliendi jaoks selgem ja meeskonnas uue inimese poolt hõlpsamini haaratav; hõlpsasti kasutatav: kuna juga on jäik, on igas etapis alati teatud nõuded, eeldatavad tulemused ja ülevaated, mis muudab projekti juhendamise vajalikuks käkitegu.

Miinused:

  • nõuete tuvastamine pole nii lihtne, kui tundub: selged nõuded on olulised, kuid sageli juhtub, et klient ei suuda projekti alguses tuvastada kõiki peamisi „soove ja vajadusi“; muudatuste tegemine on kulukas ja ebaefektiivne: kui meeskond tuvastab kodeerimise käigus mõne probleemi, ei saa ta lihtsalt naasta eelmisesse etappi ja selle lahendamiseks kohandada; kliendid võivad olla kannatamatud vähemalt mõnda operatsioonisüsteemi tarkvara vaatama, kuid arendusetapp ise algab üsna hilja; hilinenud katsetamine on liiga riskantne, kuna enne tähtaja lõppu ei pruugi selleks olla piisavalt aega; sel juhul ei pruugi teatavaid vigu ja vigu õigel ajal tuvastada.

AGILE: plussid ja miinused

Liigume edasi meie konkureeriva konkurendi Agile vs Waterfall väljakule. Esiteks peame märkima, et Agile esindab üldisi juhiseid, mis kajastuvad Agile Manifesto (2001). See tarkvaraarenduse raamistik on rakendatud erinevates Agile metoodikates, näiteks Scrum, Kanban jne.

Lühidalt öeldes jätab Agile metoodika tähelepanuta lineaarse juga lähenemise iteratiivse kasuks. Agile sõnul algab projekti rakendamine toote mahajäämuse loomisega, mis on põhimõtteliselt kõigi ülesannete loetelu, mida tuleks arenduse käigus täita. Ülesanded tuleks tähtsuse järjekorda seada ja teatav arv ülima prioriteediga ülesandeid koosneb sprindi mahajäämusest. Sprindid tähistavad projekti rakendamise iteratsioone. Iga sprint võib kesta nädalast kuuni ja see peab sisaldama projekti prioriteetide ülevaatamist, kavandamist, kujundamist, kodeerimist ja testimist (ühiku- ja vastuvõtutestid). Iga sprindi eesmärk on esitada toote omanikule selle lõpus kasutusvalmis toode, isegi kui sellel on piiratud hulk funktsioone.

Agile sõnul on fookuses ka meeskonna enesekorraldus, vähese juhendamise ja kontrolliga. Agile paneb prioriteedinimekirjas esikohale näost näkku suhtlemise, koostöö ja muutustega kohanemise.

Agile soovitab kaasata kliendi esindaja mitmefunktsionaalsesse meeskonda, kes töötab projekti elluviimise kallal. Lisaks arendajatele, kes koodi ise kirjutavad, ja kliendi esindajale peaksid sellisesse meeskonda kuuluma planeerijad, kujundajad ja testijad.

Scrum on ehk kõige laiemalt tuntud projektihaldusraamistik, mis kehastab Agile põhimõtteid. Scrum määrab kindlaks konkreetse rollide komplekti, mida tuleks täita, vastutused iga rolli eest ja igapäevased stand-up kohtumised, mis on mõeldud plaanide kohandamiseks. Sprindid on kiiremad ja kestavad ühe kuni kahe nädala jooksul. Rollide hulka kuuluvad tooteomanik (kliendi esindaja), arendajad ja koristusmeister, kes hõlbustab tööd ja on “puhver” meeskonna ja võimalike tähelepanu hajutamise vahel.

Veel üks Agile metoodika Kanban sai oma nime jaapani sõnast “kaart” või “visuaalne märk”. See on suuresti keskendunud töövoo visualiseerimisele, voogude käigus pooleliolevate tööde minimeerimisele ja olemasoleva süsteemi väikeste muudatuste tegemisele.

Plussid:

  • kohanemisvõime muutustega: varasemad plaanid võivad muutuvas tehnoloogiamaailmas kiiresti vananeda ning Agile on osutunud muutustega kohanemiseks nii uute tehnoloogiate kui ka kliendi nõudmiste tõttu paremini; suhtlemine on prioriteet: silmast silma - pinna interaktsioon ja tagasiside on meeskonna kompetentside pidevat täiustamist soodustavad agiilsed põhimõtted; tihe koostöö kliendiga: klientidel on tihedam koostöö meeskonnaliikmetega rohkem võimalusi oma arvamuse saamiseks lõpptoote osas; vajadus määratleda kõik nõuded kohe alguses: neid saab projekti elluviimise ajal kohandada; põhjalik testimine: ühikute ja vastuvõtukatsed vähendavad iga sprindi ajal märkimisväärselt lõpptootes ilmnemata ekspluateerimise ja vigade võimalust.

Miinused:

  • tarnekuupäeva ebaselgus: projekti prioriteetide korduvate muutuste tõttu ei ole tarnekuupäevi võimalik 100% täpselt ette planeerida; lisaks võib osutuda vajalikuks sprintide lisamine, mis lükkab edasi ka lõpptoote turuletoomise; meeskonna liikmetelt nõutavad kõrgelt arenenud oskuste komplektid: kuna meeskond peaks olema samal ajal ristfunktsionaalne ja väike, peab iga meeskonna liige sageli täita teatud roll (nt kujundaja); seetõttu peaks iga arendaja oma töövaldkonnas väga valdama; vähem tähelepanu tuleks pöörata dokumentide loomisele: Agile asetab kodeerimise kõrgemale kui üksikasjaliku dokumentatsiooni loomine; dokumentatsioon peaks teenima ainsat eesmärki: võimaldada uustulnukal mõista, kuidas ja miks kood kirjutati.

AGILE VS VEEPUUD: MIS KULUD ON?

Raha on oluline. Me kõik teame seda. Seetõttu on eelarvepiirangud vältimatud ja peate arvestama sellega, mida saate või mida mitte. Võrrelgem siis seda, kui palju Agile ja Waterfall'i arendamine maksaks, et aidata teil teha tark finantsotsus, mis mõjutab teie projekti tulevikku.

Peame ühes asjas selgeks saama. Iga projekt on tehniliste kirjelduste, nõuete jms tõttu ainulaadne. Seetõttu on teile võimatu öelda: „Teie projekti agiilne arendamine maksab teile X USA dollarit või peate kulutama Y USA dollarit projekti juga arendamiseks. sama projekt. ” Arenduskulud sõltuvad paljudest teguritest, mille hulka kuuluvad teie palgatud arendajate tunnitasud, funktsionaalsus, mida soovite rakendada, arenduse tüübist (veebirakenduse või Androidi ehitamine on erinevad projektid) jne.

Nagu aga Standishi rühma läbi viidud uuring näitas, on üks asi, mida võime teile kindlalt öelda: Agiilne arendusmetoodika on osutunud ökonoomsemaks kui Waterfall'i metoodika. Uuringud näitasid, et Agile projektid on keskmiselt neli korda odavamad kui Waterfall projektid ja need purunevad isegi 10 korda kiiremini kui Waterfall projektid. Seega on meil selgeid empiirilisi tõendeid selle kohta, et Agile metoodika on kulutõhusam kui Waterfall. Võib-olla on see üks peamisi põhjuseid, miks Agile kogub IT-ettevõtete seas populaarsust nii kiiresti kui tahes.

AGILE VS VEEPUUD: KUIDAS VALIDA

Sellised olulised otsused nagu projektijuhtimise metoodika valimine ei ole mingil juhul kerge otsus. Siiski tahaksime selle otsuse teie jaoks vähemalt natuke lihtsamaks teha.

On viis peamist näitajat, mida peaksite enne valiku tegemist analüüsima ja arvesse võtma:

  • projekti ulatus; projekti kestus; keerukus; mitmesugused korralduslikud tegurid; sidusrühmad ja kliendid.

Juga sobib neile lihtsatele, väikesemahulistele projektidele, mis ei eelda tõenäoliselt palju muudatusi. Neid projekte võib nimetada muutmatuteks. Lisaks võimaldab Waterfall'i metoodika luua üksikasjalikke põhjalikke dokumente ja loomupärase lihtsuse tõttu on seda uustulnukatele ja / või noorematele arendajatele lihtne vastu võtta.

Kuna Waterfall on range ja soodustab distsipliini, on Waterfall hea võimalus projektideks, mis hõlmavad teisi organisatsioone või kaugemaid töötajaid. Pealegi sobib see metoodika erinevalt Agile metoodikast olukorras, kus klienti ei saa projekti elluviimisse tugevalt kaasata. Kui teie projektil on fikseeritud aja- ja eelarvepiirangud, samuti fikseeritud ulatus, võib juga olla just see, mida vajate.

Agiilne metoodika sobib suuremahuliste projektide jaoks, millel on paindlik ajakava ja eelarvepiirangud. Kui projekti ulatust on alguses üsna raske määratleda, siis see läheb keeruliseks. Kui olete kindel, et mõned muudatused tuleb teha kliendi või sidusrühmade nimel, on Agile kindlasti teie valik. Kuna klient peaks olema kaasatud kogu arendusprotsessi, peate enne projekti jaoks kasutatava metoodika lõpliku otsuse tegemist olema kindel, et ta on seda nõus tegema.

Lisaks peate olema kindel, et meeskonna liikmed on valmis täielikult pühenduma projektile, kuna see on üsna aeganõudev ja vajab nende ööpäevaringset tähelepanu. Teie meeskond peaks ka valdama oma töösuhet, et oleks võimalik töötada selle metoodika järgi.

ALUMINE RIDA

Ükski metoodika pole veatu. Teie ülesandeks on kaaluda iga metoodika plusse ja miinuseid, hinnata oma projekti ja vaadata ise, milline metoodika sobib teie projektiga kõige paremini.

Kui kahtlete, milline metoodika sobib teie projekti vajadustele kõige paremini, pöörduge julgelt meie spetsialistide poole. Ükskõik milliseid küsimusi teil võib olla, saame alati vastuse.


Vastus 2:

Waterfall projektijuhtimine kasutab projekti riski kontrolli ennustavat mudelit. Idee on järgmine: kui suudate täpselt ennustada kõiki nõudeid, ressursse jne, siis on teil väike riskiprojekt.

Ennustavad lähenemisviisid projektihaldusele toimivad ainult siis, kui - arvasite ära - saate projekti alguses teha häid ennustusi. Kui juga ei tööta - arvatavasti arvasite ka seda -, kui teie ennustused osutuvad valedeks.

Agiilses lähenemises kasutatakse seevastu riskikontrolli empiirilist mudelit. See toimib paremini, kui teie projektis on rohkem tundmatuid. Täpsemalt aitab see siis, kui mõni neist kolmest tingimusest on täidetud:

  • Teil on projekt, mis on keskmisest kõrgem risk. Üks või enam teie ressursist (aeg, raha, töötajad jne) on ebamugavalt piiratud. Teie projektile võivad tekkida uued probleemid

Sel juhul on paindlik (aka: empiiriline) lähenemisviis koos oma iteratsioonide ja sagedaste kontrollimis- ja kohanemispunktidega nende riskidega tegelemiseks.

Nii et näete, et ei liikuv ega juga pole halb. See on lihtsalt selleks tööks õige tööriista kasutamine.

—Angela


Vastus 3:

Waterfall projektijuhtimine kasutab projekti riski kontrolli ennustavat mudelit. Idee on järgmine: kui suudate täpselt ennustada kõiki nõudeid, ressursse jne, siis on teil väike riskiprojekt.

Ennustavad lähenemisviisid projektihaldusele toimivad ainult siis, kui - arvasite ära - saate projekti alguses teha häid ennustusi. Kui juga ei tööta - arvatavasti arvasite ka seda -, kui teie ennustused osutuvad valedeks.

Agiilses lähenemises kasutatakse seevastu riskikontrolli empiirilist mudelit. See toimib paremini, kui teie projektis on rohkem tundmatuid. Täpsemalt aitab see siis, kui mõni neist kolmest tingimusest on täidetud:

  • Teil on projekt, mis on keskmisest kõrgem risk. Üks või enam teie ressursist (aeg, raha, töötajad jne) on ebamugavalt piiratud. Teie projektile võivad tekkida uued probleemid

Sel juhul on paindlik (aka: empiiriline) lähenemisviis koos oma iteratsioonide ja sagedaste kontrollimis- ja kohanemispunktidega nende riskidega tegelemiseks.

Nii et näete, et ei liikuv ega juga pole halb. See on lihtsalt selleks tööks õige tööriista kasutamine.

—Angela


Vastus 4:

Waterfall projektijuhtimine kasutab projekti riski kontrolli ennustavat mudelit. Idee on järgmine: kui suudate täpselt ennustada kõiki nõudeid, ressursse jne, siis on teil väike riskiprojekt.

Ennustavad lähenemisviisid projektihaldusele toimivad ainult siis, kui - arvasite ära - saate projekti alguses teha häid ennustusi. Kui juga ei tööta - arvatavasti arvasite ka seda -, kui teie ennustused osutuvad valedeks.

Agiilses lähenemises kasutatakse seevastu riskikontrolli empiirilist mudelit. See toimib paremini, kui teie projektis on rohkem tundmatuid. Täpsemalt aitab see siis, kui mõni neist kolmest tingimusest on täidetud:

  • Teil on projekt, mis on keskmisest kõrgem risk. Üks või enam teie ressursist (aeg, raha, töötajad jne) on ebamugavalt piiratud. Teie projektile võivad tekkida uued probleemid

Sel juhul on paindlik (aka: empiiriline) lähenemisviis koos oma iteratsioonide ja sagedaste kontrollimis- ja kohanemispunktidega nende riskidega tegelemiseks.

Nii et näete, et ei liikuv ega juga pole halb. See on lihtsalt selleks tööks õige tööriista kasutamine.

—Angela