ID1219 Vidareutveckling och underhåll av programvara 7,5 hp

Software Evolution and Maintenance

Underhållskostnaden utgör upp till 90% av livscykelkostnaden (LCC) for IT-system. Idag bedrivs den till stora delar ad hoc utan stöd av adekvata metoder och hjälpmedel. Kursen Vidareutveckling och underhåll av programvara ger ett brett spektrum av programvaruprocesser som genomförs efter det att man har levererat den första versionen av ett nyutvecklat system. Hit hör processer för att korrigera, vidareutveckla, omarbeta, stödja, avveckla programvara och processer för att hantera akuta problem och för att kvalitetshantera systemen. Kursen kommer även att fokusera pa processer som bedrivs parallellt med nyutveckling då man förbereder systemen för framtida vidareutveckling och underhåll.
  • Utbildningsnivå

    Grundnivå
  • Huvudområde

    Teknik
  • Betygsskala

    P, F

Kurstillfällen/kursomgångar

HT19 för programstuderande

Lärandemål

Efter godkänd kurs ska studenten kunna

  • beskriva programvarulivscykelprocessen och dess ingående delprocesser
  • förklara samspelet mellan programvaruutveckling och programvaruvidareutveckling och underhåll
  • tillämpa sina kunskaper inom programvaruvidareutveckling genom att definiera, följa och följa upp programvarucykelprocesser och de roller som är involverade i respektive process
  • tillämpa sina tekniska kunskaper för att vidareutveckla och underhålla programvarusystem
  • hantera programvaruproblem som uppstått i ett befintligt programvarusystem och vidta lämpliga åtgärder
  • förklara nuvarande trender i att hantera programvarulivscykel
  • agera på ett etiskt sätt när han eller hon vidareutvecklar och underhåller programvarusystem
  • arbeta i ett lag vid hantering av komplexa problem
  • kommunicera sitt arbete och dess resultat skriftligt

i syfte att

  • få förståelse för omfattningen och komplexiteten i att utveckla och underhålla redan existerande programvarusystem.

Kursens huvudsakliga innehåll

  • Definition av programvarulivscykeln.
  • Typer av vidareutveckling och underhåll av programvara.
  • Processmodeller för de flesta typer av vidareutveckling och underhåll av programvara.
  • Första, andra och tredje linjens support.
  • Testning inom vidareutveckling och underhåll av programvara.
  • Övergång från nyutveckling till vidareutveckling och underhåll av programvara (software transition).
  • Åldrande av programvara.
  • Avveckling (retirement) av programvara.
  • Omarbetning (reengineering) av programvara.
  • Underhållbarhet (evolvability and maintainability) av programvara.
  • Processmodeller på organisationsstrukturer.
  • Kvalitetshantering och reverse engineering.
  • Status inom industri och forskning.

Behörighet

Slutförd kurs II1302 Projekt och projektmetoder 7,5 hp, eller IV1300 Programvaruteknik 7,5 hp, alternativt både IV1303 Modern mjukvaruutveckling 6 hp och ID1003 Projekt IT 7,5 hp, eller motsvarande projektkurs om minst 7,5 hp.

Litteratur

Uppgift om kurslitteratur meddelas i kurs-PM.

Examination

  • RAP1 - Rapport, 1,5, betygsskala: P, F
  • ÖVN1 - Övningar, 6,0, betygsskala: P, F

Examinator beslutar, i samråd med KTH:s samordnare för funktionsnedsättning (Funka), om eventuell anpassad examination för studenter med dokumenterad, varaktig funktionsnedsättning. Examinator får medge annan examinationsform vid omexamination av enstaka studenter.

Ges av

EECS/Datavetenskap

Examinator

Versionsinformation

Kursplan gäller från och med HT2019.
Examinationsinformation gäller från och med HT2019.