I det här inlägget går jag igenom exakt vad kvalitetssäkring är.
Vad är kvalitetssäkring?
Kvalitetssäkring (QA) är ett testsystem som garanterar att kunden får en högkvalitativ produkt utan kritiska fel.
Målet med QA, precis som för utvecklingsteamet, är att lansera en produkt av så hög kvalitet som möjligt.
Kvalitetssäkring förekommer inom många branscher, till exempel livsmedel, tillverkning och läkemedel. Teknikbranschen är dock den mest populära sektorn för QA just nu.
Branschen har vuxit fantastiskt mycket under det senaste årtiondet, och opinionsbildare inom området fortsätter att utveckla bästa praxis och metoder för både utveckling och kvalitetssäkring.
Alla företag, även teknikjättar som Amazon och Google, utför QA.
4 fördelar med QA
Det finns fyra huvudsakliga fördelar med QA.
1. Ökar kundernas förtroende
Bara vetskapen om att ett företag har ett QA-team ökar kundernas förtroende och stärker företagets trovärdighet som en verksamhet som sätter kunderna främst.
2. Sparar tid
Ett välutbildat QA-team sparar utvecklingsteamet värdefulla timmar genom att upptäcka buggar tidigt i utvecklingen och föreslå möjliga förändringar.
3. Produkt av högre kvalitet
Utan QA skulle produkter ta längre tid att utveckla och lanseras med fler buggar.
4. Nya perspektiv
QA-team bidrar ofta till programvaruutvecklingen. Deras externa perspektiv kan ge projektet en unik synvinkel.
Vad gör kvalitetssäkring?
QA säkerställer att slutprodukten uppfyller de krav som kunden har fastställt och minskar antalet fel i programvaran.
QA-testare är de första som upptäcker sådant som kan försämra användarupplevelsen. Efter att ha testat programvaran dokumenterar en QA-testare alla problem de stött på och skickar rapporten till utvecklarna, som reviderar programvaran.
Denna cykel av utveckling och testning fortsätter tills QA-analytikern (eller teamet av QA-analytiker) är nöjd med slutprodukten och ger den sitt godkännande. När QA-analytikern har godkänt en produkt anses den vara redo för lansering.
Metoder för kvalitetssäkring
I takt med att kvalitetssäkring har blivit allt vanligare inom programvaruutveckling har flera strategier utvecklats för att optimera processen.
Integration av kapacitetsmognadsmodell (CMMI)
CMMI utvecklades av avdelningen för programvaruteknik vid Carnegie Mellon University och bygger på principen att ”kvaliteten hos ett system eller en produkt i hög grad påverkas av den process som används för att utveckla och underhålla den”.
CMMI-modellen rangordnar mognaden hos områden inom en organisation och identifierar andra områden som kan förbättras. Mognadsnivån för ett område avgörs av hur optimerad utvecklingsprocessen är för närvarande. En mognadsnivå på ett innebär att processen inte är väl optimerad – den är ofta oförutsägbar och okontrollerad, medan en mognadsnivå på fem innebär att processen är förutsägbar, välkontrollerad och stabil, och endast behöver mindre justeringar för att bli fullt optimerad.

För flera år sedan skulle de allra flesta QA-analytiker och programvaruutvecklare, om man frågade dem hur de arbetade, ha sagt att de följde vattenfallsmetoden.
Vattenfallsmetoden
Vattenfallsmetoden kan i alla avseenden beskrivas som det ”traditionella” tillvägagångssättet för programvaruutveckling. Teamen delades upp i tydligt definierade grupper, alla programändringar dokumenterades noggrant och det enda syftet var att skapa programvara som motsvarade de krav som hade fastställts före utvecklingen.
Agil metodik
Den agila strategin skiljer sig helt från vattenfallsmetoden. Agil utveckling främjar flexibilitet i utvecklingen. Teamen arbetar parallellt med varandra och endast minimal dokumentation krävs.
Agil utveckling förbättrade samarbetet inom teamen och ledde till en märkbar förbättring av programvarans kvalitet och kundnöjdheten.
De viktigaste principerna för agil utveckling finns i det agila manifestet. De är:
Individer och interaktioner framför processer och verktyg
Fungerande programvara framför omfattande dokumentation
Kundsamarbete framför avtalsförhandling
Att reagera på förändringar framför att följa en plan
Inom agil utveckling förväntas kvalitetssäkring vara en del av den dagliga utvecklingen.
Om du vill lära dig mer om utvecklingsmetoder kan du läsa 9 av de mest populära projektledningsmetoderna – enkelt förklarade.
Verktyg för kvalitetssäkring
Ett populärt verktyg som används av testare inom kvalitetssäkring är Selenium, ett kostnadsfritt webbläsartestverktyg som kan användas i många webbläsare och på många plattformar.
Programmet skapades av Jason Huggins, som vid den tiden ofta arbetade med webbapplikationer som regelbundet behövde testas.
När han körde dessa tester lade han märke till att manuell testning var ineffektiv. Ofta ägnade han dagarna åt att köra exakt samma tester om och om igen. Det var så repetitivt att till och med en robot kunde göra det.
Därför skapade han ett skript som automatiskt skulle köra testerna.
Så småningom utvecklades detta till Selenium.
Några av de viktigaste funktionerna i Selenium är:
- Fullständigt stöd för flera programmeringsspråk, inklusive Java, Python, C#, Ruby och PHP.
- Stöd för testning på både iPhone och Android
- Kan simulera tangenttryckningar och andra tangentbordsåtgärder.
Förr eller senare kommer de flesta företag inom kvalitetssäkring och IT att använda Selenium när de behöver automatisera sin webbtestning.
En av de mest attraktiva funktionerna i Selenium är att det är lätt att använda. När det introducerades överträffade det omedelbart många andra beprövade testmetoder och blev det självklara verktyget för automatiserad webbtestning. Rekryterare söker ofta efter personer som har goda kunskaper i verktyget.
Vilka verktyg du kommer att använda beror på vad du testar. Om du till exempel utför databastestning kommer du sannolikt att använda MySQL eller Oracle. Något som Watir används däremot för att testa webbapplikationer.
Jobb inom kvalitetssäkring
Jobb inom kvalitetssäkring är mycket varierande. Vanligtvis börjar någon inom kvalitetssäkring som junior testare och väljer sedan sin karriärväg utifrån sina starkaste färdigheter.
Kvalitetssäkring är en blandning av mjuka och hårda färdigheter. De hårda färdigheterna omfattar förmågan att skriva testfall, hitta mönster och vanliga fallgropar i programvara, dokumentera upptäckta fel och testa effektivt. Mjuka färdigheter handlar om hur väl personen samarbetar med andra, förmågan att uppmuntra kollegor samt förmågan att kommunicera på ett tydligt och precist sätt
Om du vill lära dig mer om jobb inom kvalitetssäkring kan du läsa vår fullständiga guide till jobb som QA-testare.
Lön inom kvalitetssäkring
Löner inom kvalitetssäkring beror på personens erfarenhet. Här är en översikt över tre vanliga roller inom kvalitetssäkring och deras löneintervall.
Lön för QA-testare
En QA-testare tjänar mellan $36,000 och $82,000 per år.
Lön för QA-ingenjör
QA-ingenjörer tjänar vanligtvis mellan $40,100 och $71,900 per år.
Lön för QA-analytiker
En QA-analytiker tjänar mellan $33,365 och $116,025 per år.
Läs mer i vår guide till jobb som QA-testare.
Utbildning inom kvalitetssäkring
Om du inte har en kandidatexamen i datavetenskap och det inte är ett alternativ att återvända till skolan i fyra år finns det fortfarande andra vägar att utforska.
Teknikbranschen tycker om att anställa personer med olika utbildningsbakgrunder.
Dessa kallas för “nya kragjobb” – ett område “där färdigheter är viktigare än examina.”
Blivande QA-testare bör överväga att göra ett prov från International Software Testing Qualifications Board (ISTQB). När de har klarat provet får de sin certifiering inom kvalitetssäkring.
Vad är kvalitetssäkring: vanliga frågor
Vad är kvalitetssäkring av programvara?
Kvalitetssäkring av programvara är helt enkelt kvalitetssäkring som tillämpas på programvara. Det handlar om att hitta buggar och fel i programvaran.
Det har blivit en mycket viktig del av programvaruutvecklingsprocessen och sparar utvecklare hundratals timmar genom att upptäcka fel tidigt i utvecklingsprocessen.
Vad är skillnaden mellan kvalitetssäkring och kvalitetskontroll?
Kvalitetssäkring och kvalitetskontroll är två separata områden som ofta slås ihop till qa/qc.
Kvalitetssäkring handlar om att göra systemprogramvara så felfri som möjligt under utvecklingsprocessen, medan kvalitetskontroll äger rum efter att programvaran har färdigutvecklats.
Vad är en kvalitetssäkringsspecialist?
QA-specialister ägnar större delen av sin tid åt att skriva testfall och utvärdera testprocessen. Detta skiljer sig från en QA-testare, som ägnar större delen av sin tid åt att utföra tester.
En kvalitetssäkringsspecialist har arbetat flera år inom kvalitetssäkring, vanligtvis som junior QA-testare, och arbetat sig upp till tjänsten som QA-analytiker.
Hur säkerställer man kvalitetssäkring?
Det bästa sättet att säkerställa kvalitetssäkring av högsta klass är att anställa ett QA-team som har goda kunskaper i programmeringsspråk och är effektivt på att kommunicera.
Dialogen mellan QA och utveckling är en av de viktigaste aspekterna när man utvecklar en tillförlitlig programvara. Utan tydlig information om var felen finns och hur de ska åtgärdas riskerar utvecklingsteamet att upprepa sina misstag.
Vad tycker du?
Det finns många olika områden och inriktningar inom kvalitetssäkring. Efter att ha lärt dig mer om det, vilka aspekter tilltalar dig mest? Berätta för mig i kommentarerna!
