Kursplan för Avancerad programvaruteknik för AI/ML-aktiverade system

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

Kursöversikt

  • Engelskt namnAdvanced Software Engineering for AI/ML-Enabled Systems
  • KurskodDAT550
  • 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 24113
  • Max antal deltagare30 (minst 10% av platserna reserveras för utbytesstudenter)
  • Sökbar för utbytesstudenterJa

Poängfördelning

0122 Inlämningsuppgift 7,5 hp
Betygsskala: TH
0 hp0 hp0 hp7,5 hp0 hp0 hp

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 kurser i:
  • Programmering (t.ex. DAT042, DAT050, DAT055, DAT170, TDA545, TDA550 eller motsvarande)
  • En grundläggande kurs i AI/ML (t.ex. DAT405, DAT410, DAT440 eller motsvarande)
  • En allmän kurs i Software Engineering (t.ex. TDA594 Software engineering principles for complex systems eller motsvarande) eller 6 hp inom ett eller flera av följande ämne inom Software Engineering: Mjukvaruprocess, Mjukvaruarkitektur, Mjukvarukvalitetsäkring eller testning, Kravhantering (t.ex. DAT257, EDA397, DAT360, DAT490, TDA567, DAT321 DAT356, DAT231 eller motsvarande)

Syfte

Artificiell intelligens och maskininlärning används mer och mer i praktiken. Men introduktionen av AI/ML-komponenter i ett mjukvarusystem kommer med nya utmaningar och behov och förändrar hur mjukvarusystemet konstrueras. Denna kurs introducerar processer, metoder och tekniker för att konstruera AI/ML-aktiverade mjukvarusystem.

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

Kunskap och förståelse
- Förklara processer och tekniska metoder för att utveckla AI/ML-aktiverade system, från kravteknik till testning
- Förklara typiska roller inom mjukvaruteknik för AI/ML -aktiverade system samt utmaningar i tvärvetenskapliga team bestående av datavetare och programvaruingenjörer
- Förklara typiska krav för AI/ML-komponenter, till exempel icke-funktionella krav, krav på data, och kontextuella krav
- Förklara arkitekturer och mönster för AI/ML-aktiverade system
- Beskriva befintliga tekniker för att verifiera och förklara beslut som fattas av AI/ML-aktiverade system
- Ge en översikt över ny forskning om SE för AI/ML-aktiverade system

Färdighet och förmåga
- Läsa en forskningsartikel om mjukvaruteknik för AI/ML-aktiverade system, presentera dess innehåll och diskutera kritiskt den presenterade forskningsdesignen
- Demonstrera en mjukvaruteknik för AI/ML-aktiverade system med lämpliga exempel
- Bedöma ny teknisk kunskap för AI/ML-aktiverade system och relatera den till den kunskap som presenteras i denna kurs

Värderingsförmåga och förhållningssätt
- Bedöma i vilken utsträckning systemet kring AI/ML-komponenter behöver skyddas
- Bedöma vilka verifieringsmetoder är lämpliga när man utvecklar ett AI/ML-aktiverat system med tanke på kraven på det systemet
- Bedöma om en modell har systematiska fördomar och diskutera konsekvenserna
- Bedöma rättvisa och potentiella andra etiska frågor i ett AI/ML-aktiverat system
- Bedöma användarens behov av information för att kunna arbeta med ett AI-aktiverat system
- Bedöma begränsningar av en toppmodern programvaruteknik för AI/ML med hjälp av bevis som presenteras i forskningsartiklar

Innehåll

Kursen baseras på ett antal teman angående programvaruteknik för AI/ML-aktiverade system som behandlar:
  • Processer, tekniska metoder och tvärvetenskapliga team
  • Kravhantering
  • Arkitekturer
  • Verifikation och testning
  • Analys av felfall och felsökning
  • Rättvisa, partiskhet och etik
  • Användarhantering och förklarande AI-beslut

Organisation

Kursen ges i form av ett litteraturseminarium, som kombinerar aktiviteter som att studera publikationer, studentpresentationer och diskussioner. Studenterna kommer att utforska ett av ämnena i detalj och få mer överskådlig kunskap i de andra ämnena. En individuell essä/rapport är det sista elementet i kursen.

Litteratur

Kurslitteratur kommer att publiceras senast 8 veckor innan kursstart.

Examination inklusive obligatoriska moment

Examinationen består av en individuell presentation. Dessutom krävs aktivt deltagande och bidragande i diskussioner samt en individuell rapport.

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.