Mennyi idő alatt, mikor lesz készen egy szoftver?

A mai világban megváltoztak a régebben használt folyamatok. Minden felgyorsult, mindent azonnal akarunk és nem mellesleg elsőre tökéletesen. Ezek a kiváltó okai az agilis szoftverfejlesztés elterjedésének. A hagyományos projektmenedzsment módszerei nem voltak elég hatékonyak sem pénz sem idő tekintetében. Az egyre csak növekvő verseny, és a konkurencia növekedésének hatására módosultak az igények és a biztos, de nagyon hosszú távú tervek helyett a rugalmasság nagyobb teret nyert, ezért az agilis szoftverfejlesztési modell egyre nagyobb népszerűségnek örvend.
Nagyon nehéz előre megmondani, pontosan mennyi ideig is fog tartani egy szoftver fejlesztése, rengeteg változótól függhet, de hogy elkerüljük a félreértéseket ejtünk pár szót az agilis szoftverfejlesztésről.
Ezen fejlesztési elvek segítségével gyorsabban fejleszthetünk szoftvereket. Az agilis folyamatok iteratív folyamatok, ahol a specifikáció, a tervezés, a fejlesztés és a tesztelés átfedi egymást. A szoftvert nem egy teljes egységként fejlesztik, hanem lépésenként, kisebb részenként, és minden lépés magában foglalja a rendszer bővülését további funkciókkal.
Az agilis módszertanokat gyakran a „terv-vezérelt” vagy „fegyelmezett” módszertanok ellentétének szokták nevezni, de ez persze nem azt jelenti, hogy tervezetlenek vagy fegyelmezetlenek lennének. Szerencsésebb megkülönböztetés inkább, hogy ha adaptív és kiszámítható módszertanoknak tekintjük őket.
Az adaptív módszertanok arra fókuszálnak, hogy a gyakran változó követelményekhez tudjanak alkalmazkodni. Ha egy projektben megváltoznak az igények, akkor egyszerűen alkalmazkodnak. Egy adaptív módszertant képviselő csapat néha nehezen tudja megmondani, hogy mi fog történni vagy, hogy mi lesz a pontos feladata a jövőben, mert rövid, maximum néhány hetes vagy hónapos fejlesztési ciklusokban dolgozik, így a folyamatos visszajelzés alapján meghatározható a bejárni kívánt út.
Az agilis módszertanok egyetértenek abban, hogy a szoftvert rövid időközönként ki kell adni az ügyfeleknek. Az agilis fejlesztésben azonban ez a rövid időköz inkább hetekben mérhető, mintsem hónapokban, továbbá szigorú időkeretként tekinti ezt az időközt, és nem pedig tervezett célként. Az időkeret azt jelenti, hogy a határidő kőbe van vésve, és nem változhat.
Hogyha olyan előre nem látott hátráltató tényező merül fel, ami lehetetlenné teszi az egyes funkciók határidőre történő elkészülését, akkor ezeknek a funkcióknak a fejlesztését ki kell venni az aktuális iterációból és újratervezés után belekerülhet a következő iterációba. Ahhoz, hogy egy szervezet az agilis módszertan által végezze a tevékenységét bizonyos feltételeknek meg kell felelni.
Ami leginkább fontos, hogy képesnek kell lennie jól reagálni a környezetében történő változásokra és rugalmasan kezelni azokat. Az agilis fejlesztés során két oldalú megállapodás jön létre a fejlesztő és a megrendelő között arról, hogy egy sprint ( bizonyos idő intervallum, lehet egy hét, de több hónap is) ideje alatt nem lehet változtatni az igényeken, csak a sprint végén, az újratervezés alatt. Természetesen vannak speciális esetek amikor el lehet térni ettől, de a módszertanilag minőségi fejlesztés fenntartásához mi nem ajánljuk. Az egyik alapvető fontosságú feladat a szoftverek készítése során, hogy a fejlesztők pontosan tudják, hogy mi lesz a fejlesztési iterációban elvégzendő feladatuk. Egyik fő célkitűzés, hogy a fejlesztőcsapat minél gyorsabban szerezze meg a munkájához szükséges tudást és információt. A cél az, hogy minden fejlesztő ugyanúgy lássa a rendszert, ahogy a majdani felhasználók is látni fogják.
Most, hogy kicsit jobban beleláttunk mit is takar az agilis szoftverfejlesztés, rájöhettünk valóban nincs könnyű helyzetben, aki meg szeretné mondani, hogy mennyi időbe fog telni egy projekt véghezvitele. Egy biztos, az agilis módszerek egyik legnagyobb előnye, hogy hétről hétre eredményeket lát a megrendelő, ami egy biztonságérzetet ad neki, hogy valóban zajlik az általa kigondolt szoftver fejlesztése és rövid időn belül kezdheti is tesztelni az első verziót. Bármelyik pillanatban beleszólhat az új iterációba kerülő funkciókról és fejlesztésekről, változtathat elképzelésein vagy kibővítheti azokat. Nincsenek több éves folyamatok, csak hétről – hétre megújuló és pár hónap alatt befejeződő szoftverfejlesztés.

Íratkozz fel és értesítést kapsz a legújabb cikkeinkről és híreinkről!