Þróunarferlið

Hugbúnaðarþróun er yfirleitt flókið ferli og því nauðsynlegt að halda vel utanum alla þá margvíslegu þætti sem snúa að því ferli. Það þarf að halda utanum kröfur viðskiptavinarins og tryggja að þær séu uppfylltar, samhæfi kóða þarf að vera réttur, prófanir framkvæmdar og réttar, halda utanum útgáfustýringu, og svo mætti lengi telja.

Það er því ljóst að ef allt á að ganga upp þarf að fylgja ákveðnum þróunarferli í hugbúnaðarþróuninni.

Í gegnum árin höfum við fylgt ákveðnum þróunarferli sem hefur virkað mjög vel og er auðveldur í aðlögun að stærð verkefnisins. Ferillinn byggir á SCRUM en er ekki SCRUM að öllu leyti.

Hér fyrir neðan er yfirlit yfir helstu skref ferilsins:

  1. Kröfulýsing skrifuð og samþykkt
  2. Mílusteinar dagsettir
  3. Kröfum forgangsraðað og skipt á mílusteina
  4. Ítrun útfærslu (oft 2-3 vikur hver ítrun):
    1. Valdar kröfur útfærðar
    2. Fráviksprófanir
    3. Kerfisprófanir
    4. Kröfulýsing endurskoðuð með viðskiptavini
    5. Kerfishluti afhentur ef tilbúinn
    6. Viðtökuprófanir
    7. Ítrun endurtekin þar til kröfur klárast

Þetta ferli tryggir að verið sé að þróa þann hugbúnað sem óskað er eftir og gefur viðskiptavininum möguleika á því að hafa áhrif á hugbúnaðinn á meðan á þróuninni stendur.

Í útfærsluhluta ferilsins notum við tækni sem kölluð er Test Driven Development eða annað afbrigði sem nefnist Behaviour Driven Development. Þessi útfærslutækni eykur til muna prófanleika hugbúnaðarins því öll próf eru útfærð fyrst, áður en sjálf virknin er útfærð. Þannig byggist smátt og smátt upp banki af prófum sem styður við þróunina allan þróunartímann og minnkar líkurnar á villum til muna.

Þróunarumhverfið

Allur okkar hugbúnaður er þróaður í sérstöku þróunarumhverfi sem er alltaf einangrað frá raunumhverfinu. Þetta þýðir að hugbúnaður í þróun getur aldrei haft áhrif á hugbúnað né gögn sem eru í notkun í raunumhverfinu. Þetta þróunarumhverfi skiptist upp í tvö aðskilin umhverfi: DEV og TEST.

DEV

Öll hugbúnaðarþróun fer fram í umhverfi nefnt DEV og inniheldur ýmsan búnað sérstaklega ætlaðan til stuðnings við hugbúnaðarþróun en er ekki nauðsynlegur í raunumhverfinu. DEV gefur forritaranum það frelsi sem hann þarf til að gera allar þær nauðsynlegu tilraunir með hugbúnaðinn sem þarf til að tryggja að hann virki rétt.

TEST

Áður en hugbúnaður er afhentur til notkunar er hann prófaður í sérstöku prófunarumhverfi nefnt TEST. Þetta umhverfi nálgast það að vera nákvæm eftirlíking af raunumhverfinu og því góðar líkur að hugbúnaðurinn virki rétt í raunumhverfinu ef hann virkar rétt í TEST. Sjálfvirkar prófanir reyna á hugbúnaðinn á sama hátt og venjulegur notandi.

Afhending

Ef allr prófanir ganga upp og eru réttar þá er hugbúnaðurinn afhendur viðskiptavini. Þetta getur verið hluti af kerfinu eða allt kerfið, allt eftir stærð kerfisins.