TESTARBETETS SVÅRA VAL - BADA - Högskolan i Borås
TESTARBETETS SVÅRA VAL - BADA - Högskolan i Borås
TESTARBETETS SVÅRA VAL - BADA - Högskolan i Borås
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Reliability används ibland synonymt med availability eller MTBF, men vanligtvis<br />
indikerar en liten del av alla prövade operationer som kan vara programkörningar,<br />
interaktioner eller sessioner som lyckas fullföljas. (ibid)<br />
Just availability och reliability kan vara viktigt i en verksamhet eftersom availability<br />
syftar till att organisationen inte vill ha någon såkallad ”down time” (tiden som ett system<br />
ligger nere) mer än nödvändigt eftersom organisationen förlorar pengar. Olika grader av<br />
failures kommer påverka företaget som förlorar pengar om det inte fungerar pga. viss<br />
frekvens av failures för t.ex. kunder då systemet ligger nere. Pezzé & Young (2008)<br />
redogör vidare för tre distinkta mål:<br />
Förbättra en mjukvaruprodukt genom att förhindra, hitta och eliminera faults.<br />
Bedöma kvaliteten av mjukvaruprodukten.<br />
Förbättra kvalitetsaspekten under längre tid och kostnadseffektivisera<br />
kvalitetsprocessen.<br />
Varje mål kräver en ihopvävning av kvalitetssäkring och förbättringsaktiviteter i en<br />
övergripande utvecklingsprocess genom gruppering, utveckling och avslut. (ibid)<br />
4.3.4 Kvalitetsprocessen<br />
Inom systemutveckling måste hänsyn tas till att mjukvaran uppnår en tillräcklig kvalitet.<br />
Systemutvecklingsprocessen som helhet måste därför ta hänsyn till många olika faktorer<br />
genom att samtidigt som mjukvaran skall uppnå en acceptabel tillförlitlighet bör den<br />
också vara användbar och hålla en viss kvalitet beroende på vilket sammanhang<br />
produkten finns i. För att tackla dessa olika aspekter runt mjukvarans kvalitet måste detta<br />
planeras och schemaläggas för att kvalitetsprocessen skall kunna genomsyra hela<br />
systemutvecklingsprocessen. Det är dock viktigt att säga att kvalitet både ingår och är<br />
separerade från den övergripande systemutvecklingsprocessen. Det betyder att<br />
kvalitetsprocessen bör vara som ett ramverk där specifika mål skall uppnås för varje del<br />
av systemutvecklingsprocessen. (Pezzé & Young, 2008)<br />
Det finns också flera faktorer som spelar roll för mjukvarukvaliteten. Enligt McCalls<br />
modell som tar upp tre faktorer för att mäta mjukvarukvalitet som är tänkt att användas<br />
inom systemutvecklingsarbetet (se kap. 4.3.2). Kvalitetsprocessen skall vara strukturerad<br />
på ett sådant sätt att completeness (fullständighet), timeliness (aktualitet) och cost<br />
effectiveness (kostnadseffektivitet) uppnås. Completeness betyder att nödvändiga<br />
aktiviteter behövs för att planera och för att hitta varje viktig del eller klasser av faults.<br />
Vad dessa viktiga klasser av faults är beror på applikationen, organisationen och vad det<br />
är för program t.ex. otillräckligt minne är en viktig klass av faults för C++ program, men<br />
kanske sällan för Java program. Timeliness är att faults hittas så tidigt som möjligt, cost<br />
effectiveness menas att aktiviteter bör väljas beroende på vad de kostar att genomföra och<br />
hur effektiva de är. Kostnadsaspekten måste beaktas i hela utvecklingsfasen så den<br />
vinnande faktorn blir att bedriva kvalitetsaktiviteter så tidigt som möjligt. Att hitta en<br />
mjukvarudefekt i kodningsfasen och i enhetstesterna blir billigare ur kostnadssynpunkt än<br />
- 37 -