Az agilis szoftverfejlesztési módszerek használata, és a folyamatos visszacsatolás az ügyféltől elkerülhetetlen ahhoz, hogy sikeresen záruljon egy programozási megbízás.
Az agilis szoftverfejlesztési módszerek használata, és a folyamatos visszacsatolás az ügyféltől elkerülhetetlen ahhoz, hogy sikeresen záruljon egy programozási megbízás. A Scrum keretrendszer, amit kifejezetten komplex problémák megoldására találtak ki, pont ezeken az elveken alapul, így hatékonyabbá válhat a használatával a fejlesztési folyamat. A Sigma Technology Kft. az elmúlt években nagyobb ügyfél-elégedettségre tett szert a Scrum módszer alkalmazásának köszönhetően úgy, hogy közben még az ott dolgozó fejlesztői csapatok morálját is emelték. Erről beszélgettünk Tóth Árpád Product Ownerrel, aki elmesélte, hogyan használják a mindennapokban ezt a megközelítést a lehető legmagasabb hatékonyság elérése érdekében.Hogy működik a Scrum?
A Scrum módszertan lényege, hogy a Product Owner, azaz a termék koordinátora folyamatosan kapcsolatban van az ügyféllel, akivel a meetingek során megbeszélik a termékhez fűzött elvárásokat és az irányvonalakat. Majd ezeket a Product Owner a megrendelő elképzeléseinek megfelelően olyan apró részekre bontja, melyek önállóan is értéket képviselnek, és megválaszolják a fejlesztők által feltett „Mit kell fejleszteni?” kérdést. Ezeket nevezik User Story-nak. Majd második lépésben a fejlesztő csapat ezeket a story-kat még tovább osztja olyan egységekre, amik a „Hogyan valósítsuk ezt meg?” kérdésre adnak választ. Ezt pedig Technikai Task-nak hívják. Ezután ezeket a feladatokat önszervező módon kiosztják egymás között a csapat tagjai az úgynevezett grooming session-ök során. Ez a meeting továbbá arra is szolgál, hogy a fejlesztői csapat feltegye a felmerülő kérdéseit a user storykkal, vagy a termékkel kapcsolatban a Product Ownernek, hogy még jobban képbe kerüljenek az elképzelésekkel. A grooming session további elemei közé tartozik az egyes feladatokhoz tartozó becslések elkészítése is, ami alapján a fejlesztő csapat meg tudja tervezni az egyes iterációkba, azaz sprintekbe bekerülő feladatok mennyiségét. Az ilyen keresztfunkcionális fejlesztői csapatok lényege az, hogy nincsenek előre leosztott szerepek, mint például architect, tesztelő, fejlesztő stb., illetve hierarchia sincsen a csapattagok között.Hogyan zajlik a fejlesztés folyamata?
A csapat fejlesztési ciklusokban, a már korábban is említett iterációkban, vagy másnéven sprintekben dolgozik, ez a Sigmánál két hetet ölel fel. A sprintek hossza cégenként változó lehet, de egy projekten belül mindig ugyanazt az időintervallumot kell használniuk. Ezeknek a célja 1-1 működő termékfunkció elkészítése. Iterációkba osztják a már lebontott, és a Product Owner által priorizált Technikai Task-okat, és a backlog tetejéről indulva döntik el, hogy pontosan hány elemet fognak beletenni az adott ciklusba. A sprintek során folyamatosan ürítik a termék backlog-ját, ami az elkészítésre váró feladatokat tartalmazza, addig, amíg a projekt teljes egészében el nem készül. Mivel magának a fejlesztésnek a “hogyanja” nincsen meghatározva, csak a cél van kiszabva, a fejlesztők kreativitása is jobban szárnyra kaphat. Több esélyük van megismerkedni új megoldásokkal és kamatoztatni tudásukat. Így a dolgozók elégedettsége, és megítélése is nő a munkáltatóról és a pozíciójukról.Aki elhárítja az akadályokat: a Scrum Master
A keresztfunkcionális csapat jobb keze, vagy a „kiszolgálója” a Scrum Master, aki az agilis folyamatok koordinálásáért felelős. Nincsen menedzsment hatásköre, az ő feladata 1) elhárítani a csapat haladásának útjában álló akadályokat, illetve 2) megszervezni a Scrum ceremóniákat, mint például a Sprint Review vagy a Daily Standup – amiről lentebb lesz szó részletesen – és támogatni azok problémamentes lefolyását. Ezeken felül a Scrum Master felelős a 3) sprintek megtervezéséért is. A Sigma csapatának egy része. Készítette: Kovács Tamás A haladás ellenőrzése érdekében a Scrum módszer tartalmazza az elkerülhetetlen daily standup-ot, ami egy napi rendszerességgel történő meeting, ahol minden csapattag a következő kérdésekre válaszol:- Min dolgoztam tegnap?
- Min fogok ma dolgozni?
- Van-e olyan akadály, ami miatt nem tudok haladni?