Agile vs vízesés - melyik projektmenedzsment módszertan választható?
Mi a legjobb módszertan a szoftverfejlesztéshez? A döntés nem mindig könnyű feladat. A projekt hozzáadása értéket ad az ügyfélnek, az üzletnek, vagy sem?
Ezeket a tényezőket szem előtt tartva úgy döntöttünk, hogy a legszélesebb körben használt szoftverfejlesztési módszerek (Agile vs vízesés) fej-fej-összehasonlítását úgy döntöttünk, hogy mindegyike a legjobban alkalmazható.
Mi az Agile?
Az Agile egy sovány, modern megközelítés a szoftverfejlesztéshez, lényegében a korábbi módszerek hátrányaira adott megoldás-válaszként. Tekintettel a névre, az Agile hangsúlyozza a termék korai kézbesítését, és támogatja az adaptív és rugalmas változásokat, amelyek a projekt életciklusának bármely pontján végezhetők.
Agilis módszerek széles skáláját tartalmazza a különböző formák: SCRUM, Extreme Programming (XP), Feature alapú fejlesztés (FDD) és a Crystal.
Ám Globális projektmenedzsment felmérés 2017, kiderült, hogy a szervezetek mintegy 71% -a használja az agilis megközelítéseket.
Agile fő mechanikája
Az Agile Workflow a következő elveken működik:
Iteratív megközelítés -Fejlesztési széttöredezett rövid határidők néven ismétléseket, hogy az utolsó 2-4 hét. Minden iteráció során kereszt-funkcionális csapat teljesítményét, hogy a minőségében a késztermék végére az adott timebox.
Változáskezelés -Minden fejlődési szakaszban keresztülmegy haladás felülvizsgálata és elemzése, hogy biztosítsa a vevői elégedettség egy vonalba kerül a projekt hatókörét. A változtatásokat arra ösztönzik, hogy az optimalizálás és a javítás céljából szükség esetén elfogadják és elfogadják.
Fontossági sorrend -A csapat teljes harmóniában működik a fejlesztési fázis minden területén: tervezése, tervezése, kódolása, tesztelése és értékelése. Minden csapat egység kommunikál a többi egységgel, hogy osszák meg előrehaladási jelentést és a közös munkát, hogy enyhítse a meglévő kiskapukat vagy közelgő útlezárások.
Nézze meg más agilis cikkeket aUDN feladatkezelőBlog:
Agile fejlesztési életciklus
Az Agile Development Life Cycle bontását minden munkát hat lépésből áll:
Terv:Miután a nagyobb képet a hatálya alá a projekt befejeződik, a körvonal bontani kisebb, könnyebben elérhető célokat. E célok mindegyikét ezután hozzárendelik azoknak az iterációknak, amelyeknek céljai és jellemzői magukra kizárólagosak.
Elemzés:Az elemzési szakaszban a csapat együtt jön a projekt fő követelményeinek. Az érdekelt felek és a vezetők közötti találkozókat a termék használatának célját és demográfiai megvalósítására végzik.
Tervezés:A csapat megkezdi munkáját szoftver tervezés és a rendszer kialakítása a követelményeknek, amelyeket az elemzés fázisában.
Kódolás:Ez a végrehajtási fázis, ahol a fejlődés az első iterációval kezdődik. A fejlesztés jellemzőit és aspektusait a hibátlan funkcionalitás alapján teszteljük.
Tesztelés:Miután a kódolás és a fejlesztés befejeződött, ezután az üzleti igények és a lehetséges hibák tesztelése. Ezt a fázist mindenféle vizsgálat jellemzi, amely javíthatja a termelési hatékonyságokat, például az egységvizsgálatot, a rendszervizsgálatot, az integrációs tesztelést és az átvételi teszteket.
Telepítés:Ez az egy iteratív ciklus utolsó fázisa, amelyben a készterméket az ügyfelek számára telepítik. Az ügyfelek visszajelzését kapják meg, és a következő iteratív ciklusban bekövetkezett valószínű változások vagy javítások szükségesek.
Népszerű agilis keretek és módszerek
Az Agile egy széles esernyő, amely magában foglalja a többszörös kereteket és módszereket, amelyek lehetővé teszik, hogy a lehető leghatékonyabb legyen. Az egyik legnépszerűbb:
1. Scrum
Kétségtelenül az egyik legnépszerűbb agilis keretrendszer, amelyet a csapatok széles körben elfogadtak. A keretrendszer célja az iteratív és növekményes eszközökkel történő projektek kezelése. A Scrum a projektciklus közötti csapat tagjai közötti folyamatos szisztematikus együttműködésen alapul.
A scrum, a scrum master, a termék tulajdonosa és a fejlesztési csapat három fő szerepe van.
Menjünk át ezeken az elemeken, hogy jobban megértsük szerepüket:
A Scrum Master, más néven a "facilitator" segít a csapatnak a projekt hatókörének megértésében, és központi szerepkörként működik egy projekten belül. Prime feladataik közé tartozik a csapattagok törlése, amelyet a csapat tagjai lehetnek a projekt hatókörével kapcsolatban, és eltávolíthatnak olyan akadályokat, amelyek a csapat hatékonyabbá válnak.
A termék tulajdonosa jellemzően a projekt legfontosabb érdekeltje. Ő kommunikál a termék látás a fejlesztőcsapat és biztosítja időben visszajelzést adjanak a munkát végzett. Ezenkívül felelős azért is, hogy rangsorolja azokat a feladatokat, amelyek a hátlányban mennek.
A fejlesztőcsapat a csapat, aki a termék minden fejlesztési munkáján dolgozik. A "Scrum Team" néven is ismert, egy olyan keresztfunkciós csoport, amely felelős a tényleges termék vagy szolgáltatás fejlesztéséért.
Ettől eltekintve a munkaciklus "sprints" -ra oszlik, ami általában 2-4 hétig tart. A Sprints során napi állványok zajlanak a projekt előrehaladásáról és a szükséges változtatásokról.
2. KANBAN
Egy másik a csapatok által elfogadott legnépszerűbb agilis módszerek egyike Kanban. Ez az Agile módszertan a kis részekre való elosztásra összpontosít, és a munkafolyamat kártyákon keresztül történő megjelenítését olyan módon, amely lehetővé teszi a szűk keresztmetszeteket.
Jellemzően aKanban rendszerMűködik a munka kategorizálásának elvén keresztül, hogy a "to", a "folyamatban" és a "elvégzést". Könnyedén mozgathatja a kártyákat, hogy képviselje a haladást. Ezenkívül meghatározza a folyamatban lévő munkát (WIP) határértékeket, hogy korlátozza az adott oszlophoz hozzáadható tételek számát, hogy csak a jelenlegi feladatokra összpontosítson.
Kanban egy könnyű, rugalmas rendszer, amely működik a legjobban, ha a projektek követelmények gyakran változnak, mint a lebegő kártyák lehetővé teszik, hogy gyors változások a munkafolyamatot és így a csapat egy heads up a mi jön ezután.
19 Legjobb Kanban eszközök használható 2022-ben
Nézze meg más agilis cikkeket aUDN feladatkezelőBlog:
3. támaszkodik
Az agilis lean módszertana a hulladék és az épület hatékony munkafolyamatának megszüntetésére összpontosít, a projekt életciklus folyamatos fejlesztése révén. Ez a módszertan teljes egészében a hozzáadott, ami csak az értéket hozza létre, és eltávolítja a többit.
„Hulladék” itt utal bármilyen feladatot, találkozók, munkafolyamatok, vagy dokumentációt lehet lassul le. Távolítsa el őket, így kevesebb időt érhet el. A Lean módszertan azt javasolja, hogy megszüntesse a sovány - muda (hulladék), a Mura (egyenetlenség) és a Muri (túlterhel) megszüntetését.
Dióhéjban, sovány változások az utat csapatok működnek, és megtartják a koncentráció lézer fókuszált, hogy optimalizálja a munkafolyamatokat, amennyire csak lehetséges.
4. XP (Extreme programozás)
Extrém programozásAz Agile Project Management módszertana a fejlesztések minőségének javítására és a vevői követelmények kialakítására irányuló válaszadásra irányul. A módszertan a fejlesztők termelékenységének növelésére és a földi szabályok meghatározására irányul, amikor a kódolás és a tesztelésre kerül.
Néhány szabály az XP-ben, beleértve a felhasználói történeteket, pár programozást, tesztvezérelt fejlesztést, és így tovább. Extrém programozás is hajló szoftver kiadás rövid fejlesztési ciklusok, így állítsa szerint a vevői igények várhatók.
Az általános gyakorlat az extrém programozás koncentrátumot folyamatos felülvizsgálata és tesztelése a projekt kijavítani a hibákat és problémákat a lehető legaktívabban. És amikor megfelelően követik, ezek a gyakorlatok magasabb minőségű szoftvereket eredményeznek.
5. kristály
A kristály az egyik legrugalmasabb agilis módszerrel. Ennek a módszernek a fókuszpontja az egyének és azok kölcsönhatásai, nem pedig a folyamatok. A Crystal elsősorban 6 szempontból összpontosít, amikor a szoftverfejlesztés - az emberek, kölcsönhatások között, közösség, kommunikáció, készségek és tehetségek.
A módszertan valójában más módszerek családja, mint például a kristálytiszta, kristálysárga, kristály narancs és mások.
A zseni mögött Crystal, Alistair Cockburn, irányelveket dolgozott csoportmunka és a csapatmunka, hanem lépésről-lépésre fejlesztési stratégiák a projekt. A módszertan támogatja a csapat elszámoltathatóságát és átláthatóságát, és adaptív megközelítést biztosít, hogy hatékonyan válaszoljon a változó követelményekre.
6. Feature-vezérelt fejlesztés (FDD)
Mivel a név azt jelenti, a funkciók az agilis módszertan középpontjában állnak. Az FDD funkciói nem feltétlenül utalnak a termék jellemzőire, hanem a scrum felhasználói történetekre. Feature vezérelt fejlesztés áll, az 5 alap tevékenység - fejlesztés egy átfogó modell, az épület egy listájára, tervezést jellemző, tervezése a jellemző, valamint az épület által funkciót.
A szolgáltatás lista az általában az egyediségét az egyes projektek modell, és a fő célja FDD, hogy adja ki az ügyfél-centrikus szoftver terméket.
Az FDD arra is ösztönzi az állapotjelentést minden szinten, hogy szemmel tartsák a projekt előrehaladását és az idő múlásával. Ez megszünteti a zavart és a túlzott átdolgozást a fejlesztési csapat között.
7. Dinamikus rendszerek fejlesztési módja (DSDM)
A DSDM egy agilis keretrendszer, amely átfogó alapot nyújt a szoftverfejlesztési projektek tervezéséhez és végrehajtásához. Nyúlik vissza, 1994-ben, a Dynamic Systems Development Method dolgozta ki, hogy hozzon létre egy ipari szabvány keretet szolgáltat minőségi szoftvert.
A DSDM 8 alapelve:
Rugalmas agilis keretként a DSDM könnyen használható az informatikai és nem IT projektekhez hasonlóan.
Nézze meg más agilis cikkeket aUDN feladatkezelőBlog:
Mi a vízesésmodell?
Ismerkedés az 1970-ig,Vízesés, a szoftverfejlesztés hagyományos módszere, amely a fejlesztési formátumban működik. Ez maga után vonja a lépésről-lépésre progresszió a folyamat, ahol minden fázis folytatódik lineáris módon, így könnyen kezelhető és érthető.
A Gartner által 2015-ben közzétett jelentés szerint, A vízesés módszertanából származó projektmenedzsment módszerek 56% -a.
Fő mechanika, amelyen a vízesés modell működik
A vízesés modell a következő elveken működik:
Különleges célok:A projekt hosszú távú hatályát a fejlesztés megkezdése előtt határozza meg. A projektvezetők, az érdekeltek és az ügyfelek mindenképpen világos elképzelése van, hogy a végtermék alakuljon ki.
Időblokkolás:Minden fázis meghatározott időtartamú. Miután a fázis befejeződött, befagyasztja, így nincs visszatérési út az előző lépéshez.
Független munka mód:Minden egyes csapat egy adott domainhez, egyedi célokkal dolgozik, kevés vagy semmilyen együttműködéssel, más egységekben dolgozó csapatokkal.
A vízesés módszertanának legfontosabb szempontjai
Az Vízesés munkafolyamatvizualizálható a következő lépésekben:
Követelmények:Hasonlóan Agile, ez az első fázis, amely vesz igénybe a műszaki és nem műszaki követelményeket a projekt követelmény egyedi dokumentumot. Ezek a követelmények szigorúan állandóak, amelyek meghatározzák a végtermék szerepét és kilátásait.
Elemzés:A csapat elvégzi a termékfejlesztés elvégzéséhez használt rendszerek és technikák elemzését.
Tervezés:Tervezési előírások, például szolgáltatások, programozási nyelvek és adatrétegek meghatározása és véglegesítése.
Kódolás:Az előző szakaszokban létrehozott követelmények, elemzések és célkitűzések tekintetében a fejlesztési csapat a negyedik szakaszban írja a forráskódot.
Tesztelés:Ebben a szakaszban minden típusú tesztelő, megkezdi a termék kész verzióját bármilyen hibára és hibára.
Tevékenységek:A műveleti fázis felelős a termék teljes és vizsgált változatának telepítéséért a piacra.
Agile vs vízesés Pross & amp; Hátrányok
Mivel az Agile egy kortárs szoftverfejlesztési módszertan, számtalan előnyöket és előnyt biztosít az informatikai csapatoknak, akik úgy döntenek, hogy elsődleges módszertanként dolgoznak.
Egyben HP Online felmérés 601 fejlesztés és informatikai szakemberek 54% -a állította, hogy elfogadása után agilis módszertanok, hogy a tapasztalt fokozott együttműködése csapatok, hogy nem létezik egyébként. Míg 43% azt mondta, hogy a piacra hozott idő jelentősen csökkent.
Azonban nem minden projekttípus és forgatókönyv búcsúzik az agilis liberális jellemzőivel.
Vessünk egy pillantást az agilis előnyeire és hátrányára.
Ez az agilis legfontosabb előnye. Amint a fejlődés történik ismétléseket, a csapat rugalmas hozzáférést biztosít térjen vissza, hogy az előző szakaszban, hogy bármilyen típusú és méretű változások.
Mivel az agilis projekt rövid iterációjú ciklusokban működik, nehéz lehet hozzárendelni egy meghatározott esedékességi dátumot a projekt idővonalához.
A kisebb darabokban végzett munka lehetővé teszi a csapattagok időben történő befejezését. Továbbá, mivel a kódolás és a tesztelés szinkron módon történik a fejlesztés tervével és tervezési szakaszával, minden változás és fejlesztés a mozgó munkafolyamathoz képest történik.
Ez növeli a korai termékvezetés valószínűségét is.
Az egyes ciklusokban végzett korrekciók és javítások további munkát adnak hozzá a fejlesztési csapat részéről. Ez valószínűleg további időt eredményez, ha az elkötelezettséget és a kompetenciát a fejlesztési csapat tagjai nem mutatják ki.
Az egyes iteratív ciklusok végén az ügyfelek visszajelzése lehetővé teszi az egyenlő ügyfél-részvételt a termék kimenetelében és kialakításában.
Mivel az agilis csapatok szorosan kötött kommunikációra épülnek, az összes csapat tagnak szoros közelségben kell lennie a munka során, hogy a kommunikáció szintjét hatékonyan hordozza.
Agile arra ösztönzi a csapatokat, hogy együttműködjenek a célok és célok összehangolásával. A különböző csapatok közötti átlátható és gyakori kommunikáció lehetővé teszi a nagyobb fokú termelékenységet és törli a konfliktus esélyeit.
Mivel az Agile nem érvényesíti a projektet, hogy a kezdetben szigorú vázlatot hajtson végre, a termék végeredménye teljesen váratlanul, és nagymértékben eltér a kezdeti üzleti igényektől.
Agile megkönnyíti az állandó szobát a javításhoz. A végén minden egyes iteráció, a késztermék teszteljük kiskapukat és javítására tett után minden vizsgálati ciklus befejeződik.
A fejlesztések is folyamatos fejlesztésének részeként a vásárlói visszajelzések kikeressük a projekt teljes életciklusa során.
Mivel az előrehaladás agilis ciklusokon történik, nehéz lesz mérni a teljesítményt. Nem lehet beállítani a sok határozott KPI elején a projekt, így nem tudom, mi hogy néz ki a projekt életciklusa során.
Agile támogatja az ötleteket és döntéseket, hogy illeszkedjen a projekt hatályába és fejlesztő ablakába. Ez különösen előnyös olyan szoftveralkalmazásokra és eszközökre, amelyeknek nincs meghatározott végcéluk, és az ügyfelek tapasztalatán alapuló változásoknak vannak kitéve.
Mivel a projekt végén nincs értelme, kihívást jelent a projekt elején szükséges erőforrások pontos előrejelzésére.
Az képtelenség, hogy dönt a költség-, idő- és erőforrás eredményük gyenge erőforrás-tervezés és kiderülhet, hogy egy nagyobb probléma, ha a projekt előleget.
Annak ellenére, hogy az Agile-tól a nyílt fénybe lépett, a vízesés módszertana most nagyrészt hackneyed, de a szoftverfejlesztés lineáris megközelítése még mindig magában foglalja az előnyöket.
Íme a vízesés módszertanának mindkét előnye és hátrányai: