Kursplan för Kvalitetssäkring och testning

Kursplan fastställd 2022-02-01 av programansvarig (eller motsvarande).

Kursöversikt

  • Engelskt namnQuality assurance and testing
  • KurskodDAT321
  • Omfattning7,5 Högskolepoäng
  • ÄgareMPSOF
  • UtbildningsnivåAvancerad nivå
  • HuvudområdeDatateknik, Informationsteknik
  • InstitutionDATA- OCH INFORMATIONSTEKNIK
  • BetygsskalaTH - Mycket väl godkänd (5), Väl godkänd (4), Godkänd (3), Underkänd

Kurstillfälle 1

  • Undervisningsspråk Engelska
  • Anmälningskod 24115
  • Max antal deltagare80 (minst 10% av platserna reserveras för utbytesstudenter)
  • Blockschema
  • Sökbar för utbytesstudenterJa

Poängfördelning

0116 Inlämningsuppgift 3 hp
Betygsskala: TH
0 hp3 hp0 hp0 hp0 hp0 hp
0216 Tentamen 4,5 hp
Betygsskala: TH
0 hp4,5 hp0 hp0 hp0 hp0 hp
  • 12 Jan 2024 fm L
  • 05 Apr 2024 em L
  • 22 Aug 2024 em L

I program

Examinator

Gå till kurshemsidan (Öppnas i ny flik)

Behörighet

Grundläggande behörighet för avancerad nivå
Sökande med en programregistrering på ett program där kursen ingår i programplanen undantas från ovan krav.

Särskild behörighet

Engelska 6
Sökande med en programregistrering på ett program där kursen ingår i programplanen undantas från ovan krav.

Kursspecifika förkunskaper

För behörighet till kursen krävs minst en kandidatexamen inom software engineering, informationsteknik, programvaruteknik, datavetenskap eller motsvarande. Dessutom krävs avklarade i:
  • programmering (t.ex. TDA548 Grundläggande programvaruutveckling eller motsvarande) och
  • ett praktiskt projekt inom systemutveckling eller mjukvaruutveckling (t.ex. DAT257 Agile software project management )

Syfte

Programvara förekommer i vårt samhälle och misstag eller problem i mjukvarusystem kan leda till allvarliga ekonomiska, miljömässiga eller till och med säkerhetsmässiga konsekvenser. Därför är det en viktig del av programvaruteknik att identifiera dessa problem och säkerställa kvalitet i våra programvaruprodukter. Syftet med denna kurs är att undervisa de grundläggande och praktiska aspekterna av kvalitetshantering och programvarutestning i programvaruutvecklingsprojekt.

Lärandemål (efter fullgjord kurs ska studenten kunna)

Kunskap och förståelse
  • Förklara grundläggande begrepp inom mjukvarukvalitet (t.ex. intern / extern kvalitet, liksom kvalitet vid användning) och kvalitetssäkringsmodeller.
  • Beskriva hur hållbarhet kan betraktas som ett kvalitetsattribut hos mjukvaruprodukter
  • Redogöra för och förklara definitioner och aktiviteter relaterade till mjukvarutestning, såsom fel, felnivåer vid testning och testautomatisering
  • Förklara nuvarande trender i forskning om mjukvarukvalitet och testning (t.ex. teststabilitet, sökbaserad programvarutestning) 
  • Förklara skillnaden mellan mjukvaruverifiering och mjukvaruvalidering.
  • Namnge och beskriva olika testtekniker och tillvägagångssätt, såsom mutationstest, automatiserad testprioritering, testfallgenerering, utforskande test etc.
  • Förklara "continuous integration" och relatera det till mjukvaruutvecklingsprocesser
Färdigheter och förmåga
  • Definiera metrik som krävs för att övervaka och analysera olika kvalitetsattribut för programvaruprodukter
  • Mäta mjukvaruprodukternas kvalitet baserat på data från utvecklingsmiljöer och verktyg.
  • Förklara och implementera testaktiviteter i samband med olika testnivåer (t.ex. system-, integrations- eller enhetsnivåtester)
  • Definiera och implementera en testplan eller ett testomfång baserat på kvalitetsmål.
  • Utforma lämpliga och meningsfulla tester.
  • Tillämpa automatiserade testtekniker på realistiska exempel med relevanta verktyg (t.ex. automatiserad regressionstestning på kontinuerliga integrationsledningar)
  • Använda automatiserade system för att mäta kvalitet av mjukvaruprodukter baserat på data från moderna utvecklingsverktyg
  • Använda moderna verktyg för visualisering av trender av mjukvarukvaliten
Värderingsförmåga och förhållningssätt
  • Värdera vikten av mjukvarukvalité i relation till tids- och kostnadsbild för moderna mjukvaruprojekt
  • Bedöma kvaliteten av testuppsättningar med hjälp av programvaru artefakter (t.ex. exekveringsloggar, testskript, historik över testkörningar). 
  • Relatera mjukvarukvalitet till samhällsliga aspekter av mjukvarutveckling

Innehåll

Kursen behandlar följande innehåll:
  • Definitioner av kvalitetssäkring av programvara, kvalitetsattribut, mjukvarumått och modeller inom kvalitetshantering, intern kvalitet och extern kvalitet;
  • Definitioner och skillnader mellan mjukvaruverifiering och valideringsmetoder;
  • Definitioner och praktisk tillämpning av tekniker och metoder för testning av programvara relaterade till testplanering, design, utförande och analys.
Kursen förbereder studenterna att arbeta som kvalitets- eller testingenjörer (eller chefer) i programvaruutvecklingsorganisationer.

Organisation

Kursen består av föreläsningar där teori förklaras samt praktiska inlämningar som fokusera på användningen av testverktyg och metoder för att möjliggöra kostnadseffektiv testning.

Litteratur

Kurslitteratur kommer att publiceras senast 8 veckor innan kursstart.

Examination inklusive obligatoriska moment

Kursen bedöms genom en skriftlig rapport och en individuell skriftligsalstenta. Rapporten betygsatts individuellt.

Kursens examinator får examinera enstaka studenter på annat sätt än vad som anges ovan om särskilda skäl föreligger, till exempel om en student har ett beslut från Chalmers om pedagogiskt stöd på grund av funktionsnedsättning.