A Stylers Groupnál tele vagyunk kísérletező kedvű emberekkel. A szoftverfejlesztésben is kipróbáltunk már többféle módszertant. A kezdetek kezdetén vízesés modellt használtunk, aztán 2015-ben az agilis módszertan mellett tettük le a voksunkat, és ez a „szerelem” azóta is töretlen. Mivel mindkét módszertanban több éves tapasztalatot szereztünk, komoly rálátásunk van a metodológiák előnyeire és hátrányaira. Ezeket szeretnénk most megosztani veletek.
Mint sok dologban az életben, a szoftverfejlesztési modellek esetében is első lépésben azt kell mérlegelnünk, hogy az aktuális működésünkhöz, munkáinkhoz mi felel meg a legjobban. A Stylers Groupnál kezdetben még elboldogultunk a vízesés modellel is, azonban ahogy egyre összetettebb rendszerek fejlesztésével kezdtünk el foglalkozni, már nem volt kielégítő ez a modell, áttértünk az agilis módszertanra.
Mikor használjunk agilis módszertant?
Az agilis módszertant elsősorban gyorsan változó környezetben érdemes alkalmazni, ahol versenyelőnyt jelent a változásokhoz való azonnali, dinamikus alkalmazkodás, az adaptációs képesség. Az agilis szemléletben a legfontosabb cél a gyors reakciókészség megőrzése. Talán egy követőrakétával lehetne a legjobban szemléltetni, ami mindig a célpontot követi, és aszerint változtat irányt, merre halad a kitűzött cél. Az IT világában és a szoftverfejlesztésben is tapasztalható állandó változások szükségessé teszik, hogy rugalmasan alakítsuk, korrigáljuk a célunkhoz elvezető utat. Ehhez viszont az egész munkafolyamatunknak is flexibilisnek kell lennie. Ebben segít az agilis szemlélet. Az agilis módszertan IT cégek körében legismertebb és leginkább használt típusa a scrum, melyre egy későbbi blogposztban térünk ki részletesebben.
Mi a leglényegesebb előnye az agilis szemléletnek?
Az agilis metodológia előnyeiről könyveket lehetne írni, mi most csak a projektek szempontjából leglényegesebb előnyét szeretnénk felvázolni a vízesés modellhez képest. Az agilis és a vízesés módszertan szerint elkészült projekteket vizsgálva megfigyelhető, hogy mikor agilis metódust alkalmaznak, lényegesen több a sikeres, és kevesebb a kritikus vagy bukott projekt. Miért? Mert az agilis módszertannal sokkal hatékonyabban lehet alkalmazkodni a megrendelő változtatási igényeihez, a felhasználói akarathoz, a piaci körülményekhez, bármihez, ami a terméket, a projekt eredményét érintheti. Ezt támogatja, hogy nincs hierarchia a csapatokon belül, a csapatok felhatalmazást kapnak, hogy eldöntsék a technológiát, időbeosztást, munkamódszertant, a sprintek lehetővé teszik a hibák korai feltárását és a projektfolyamat precíz és időben történő korrigálását. Ezáltal jobban tervezhető a munka, könnyebben betartható a határidő, gyorsabban kijavítható a hiba, sokkal kevesebb a feszültség a csapattársak között – emiatt a fejlesztők is sokkal inkább szeretnek agilis szemlélet szerint dolgozni.
Mikor a járhatóbb út a vízesés modell?
Az agilis módszertan használata nem minden projekt esetében javasolt. A vízesés jellegű módszertan akkor jó, mikor a koncepció nem változik a projekt során, mikor a feladatok jól definiálhatók és elkülöníthető, egymásra épülő lépésekre oszthatók. Például olyan projekteknél, ahol több különböző szakterület dolgozik együtt, kiváló módszer a vízesés modell. Vagyis amikor egy termék, projekt esetében időközben nem lesz változás, azaz mikor pontról pontra azt kell megvalósítani, ami a legelején el lett tervezve, akkor érdemes a vízesés módszertant alkalmazni.