Hoppa till huvudinnehållet
Till KTH:s startsida

HI1039 Projektkurs inom programvaruutveckling 9,0 hp

Kurs-PM VT 2026-60619

Version 3 – 2026-02-25 14:20:12

Kursomgång

VT 2026-60619 (Startdatum 2026-03-16, Svenska)

Undervisningsspråk

Svenska

Kursen ges av

CBH/Medicinteknik och hälsosystem

Kurs-PM VT 2026

Rubriker markerade med en asterisk ( * ) kommer från kursplan version VT 2023

Innehåll och lärandemål

Kursinnehåll

  • Kravhantering: funktionella och icke funktionella krav, användarhistorier, produktlogg
  • Analys och systemspecifikation
  • Projektprocesser för mjukvaruutveckling
  • Design och implementationsregler för återanvändning, underhåll och utbyggbarhet
  • Metoder för testning och programvalidering som enhetstester, integrationstester och acceptanstester
  • Dokumentation av kod, produktbeskrivning samt installationsanvisningar och manual
  • Introduktion till flerlagerarkitektur
  • Upphovsrättsliga och andra juridiska aspekter på programvaruutveckling.

Lärandemål

Kursen skall ge studenten träning i att utveckla en större programvara samt en fördjupning i projektmetodik. Arbetet utförs i projektform. Projektet skall ge förståelse och träning i projektmetodiker och verktyg som används vid framtagning av större program.

Efter genomgången kurs ska studenten ha:

  1. kunskap om olika projektmetodiker samt deras fördelar och nackdelar samt fördjupad kunskap inom agil projektmetodik
  2. färdigheter i att ta fram och hantera krav för ett mjukvarusystem
  3. kunskaper om genomförandet av utvecklingsprocessen för en större programvara med hänsyn tagen till återanvändbarhet, underhåll och utbyggbarhet
  4. förmåga att, i dialog med beställare eller produktägare, genomföra analys och design av en större programvara
  5. färdighet i att implementera, testa och utvärdera en större programvara
  6. färdigheter i dokumentation av lösningen, både ur utvecklar- och användarperspektiv
  7. tillämpa kunskaper inom teknikområdet och använda lämpliga metoder och modeller samt kritiskt analysera resultat och alternativa lösningar
  8. kunna sätta in tekniken i ett större sammanhang och beakta användarkrav, ekonomiska, miljömässiga och samhälleliga aspekter och kunna överväga teknikens möjligheter och begränsningar

Under projektet ska agil projektmetodik, återkoppling till beställare, testning, versionshantering och dokumentation implementeras på det sätt som beskrivs i teoridelen av kursen.

Lösningen ska, så långt möjligt, implementeras så att återanvändning av moduler är möjlig och så att det är enkelt att bygga vidare på lösningen.

Dessutom ska studenten, tillsammans med projektgruppen, ha producerat en produktbeskrivning med tydlig problemformulering, beskrivning av metoder samt utvärdering av produkten gentemot målen.

Detaljplanering

Kursivt = obligatoriskt

Datum Kursivt = obligatoriskt
16/3

Introduktion till kursen
Föreläsning: Kravhantering, användarhistorier

16/3

Obligatorisk övning om kravhantering och användarhistorier

17/3 Föreläsning: Agil projektmetodik, SCRUM, eXtrem Programming
20/3, kl. 12:00 Inlämning av uppgift om användarhistorier
25/3 Föreläsning: Trelagerarkitektur, Object-Relational-Mapping, REST API
26/3, kl. 12:00 Inlämning av sammanfattning av "Agil Projektmetodik"
27/3

Föreläsning: Testning
Seminarium om implementation av agil projektmetodik,
OBS! Gruppen måste ha tillgång till en produktlogg från uppdragsgivaren till detta pass.

1/4 Kravspecifikation, grov tidsplan inklusive milstolpar, produktlogg,  m.m. publiceras enligt instruktioner i kurs-PM
Möte med handledaren
vecka 14 - 21  Arbete med projektet. Möte med handledaren en gång i veckan ("Handledning" i schemat). Handledaren ska även vara inbjuden till alla etappuppföljningsmöten.
4/5 Rapportskrivning, Gunilla Nauclér
22/5, kl. 12:00 Första version av rapport inlämnad via kurswebben samt till opponerande
grupp
28/5 Slutseminarium: Muntlig redovisning och opposition på den tekniska produkten.
Skriftlig sammanställning av kommentarer på produkt och rapport lämnas in av opponerande grupp.
2/6 Seminarium och prisutdelning tillsammans med Hing Valhallavägen.
3/6 Inlämning av slutlig version av rapporten.

Förberedelser inför kursstart

Särskilda förberedelser

Särskild behörighet

Följande kurser ingår i den särskilda behörigheten:
- HI1038, projektkurs inom data- och nätverksteknik.
- HI1027, objektorienterad programmering. TEN1, kan tenteras i slutet av peirod 3.
- HI1030, databasteknik. HI1030, LAB1, kan redovisas den 4/3.

Projektuppgift

Studenter bildar projektgrupper och söker företag samt projektuppgift på egen hand. Gruppstorleken bör
vara 3-5 personer, lämplig storlek beror bl.a. på vilken uppgift som löses.
I första hand ska uppgiften komma från en extern uppdragsgivare, ett företag eller en organisation. Uppgiftsförslag presenteras för kursens lärare i god tid innan kursstart.
För grupper som inte fått uppdrag av ett företag finns ett begränsat antal uppgifter att utföra på uppdrag av MTH vid campus Flemingsberg.

Krav på uppgiften
Nedanstående bör normalt ingå i projektuppgiften:
• Programmering i något (helst) objektorienterat språk – det kan vara språk som inte använts tidigare i utbildningen.
• En klient-server-lösning, distribuerad applikation. En webb-klient är vanligt, men andra lösningar kan diskuteras.
• En databas
• Någon form av autentisering.
Det ingår naturligtvis också i kursen att på egen hand att sätta sig in i de specifika tekniker som behövs för att lösa den specifika uppgiften.

Mer information finns på programwebben, https://canvas.kth.se/courses/44513/pages/projektkursen-i-arskurs-2-hi1039-2

Kurslitteratur

Agil Projektledning, Tomas Gustavsson, Sanoma Utbildning, femte eller fjärde upplagan (ISBN 9789152364635 respektive 9789152358368).

Boken kommer att behövas redan från första dagen i perioden.

Examination och slutförande

Betygsskala

P, F

Examination

  • PRO1 - Projekt, 7,0 hp, betygsskala: P, F
  • RED1 - Redovisning, 2,0 hp, betygsskala: P, F

Examinator beslutar, baserat på rekommendation från KTH:s handläggare av stöd till studenter med funktionsnedsättning, om eventuell anpassad examination för studenter med dokumenterad, varaktig funktionsnedsättning.

Examinator får medge annan examinationsform vid omexamination av enstaka studenter.

När kurs inte längre ges har student möjlighet att examineras under ytterligare två läsår.

Kursen avslutas med en presentationsdag där grupperna presenterar sin slutprodukt.
Godkänt projektarbete (PRO1; 7,0 hp), betygsskalan P/F och godkänd redovisning av teoriavsnitt (RED1; 2,0 hp), betygskala P/F

Avsnittet nedan kommer inte från kursplanen:

RED1 - Redovisning, 2,0 hp

Kravhantering, funktionella och icke-funktionella krav och användarhistorier redovisas via en obligatorisk övning och en inlämning, enligt detaljplaneringen.

Projektmetodik redovisas genom en inlämningsuppgift kopplad till boken ”Agil
projektledning”, inlämning, samt deltagande i obligatoriska föreläsningar, övningar och ett
seminarium, enligt detaljplaneringen. Inlämningsuppgiften, som skrivs enskilt, ska innehålla en
sammanfattning av boken på minst 10 000 och max 13 000 tecken, exklusive blanksteg,
samt en separat reflektion, på en sida, över hur denna metodik kan implementeras i ditt
projekt. Notera att reflektionen inte ingår i de 10 – 13 000 tecknen.

PRO1 - Projekt, 7,0 hp

Gruppen ska träffas IRL, på plats, alla dagar som är markerade "projektarbete" och "handledning" i schemat. Studenter som inte deltar aktivt i arbetet kan avskiljas från projektet.

Slutseminarium, 28/5

Varje grupp kommer att presentera sin rapport under MAX 10 minuter. Därefter följer ca 5 minuter med kommentarer och frågor från examinator och opponerande grupp (se nedan). Samtliga gruppmedlemmar skall kunna svara för rapportens innehåll. Obligatorisk närvaro gäller hela dagen.

Opposition

Vid slutseminariet ska varje grupp opponera på en annan grupps lösning, som den presenteras i rapporten och vid presentationen. Den föreliggande rapporten ska noggrant gås igenom, och opponenterna ska väcka diskussion i frågor som behandlas, visa på tänkbara alternativa lösningar, påpeka eventuella oklarheter och svagheter i rapporten,
etc. Oppositionen ska genomföras i positiv anda, och syftar inte till att hitta så många felaktigheter som möjligt i den andra gruppens arbete. Oppositionen levereras också som ett skriftligt dokument till den andra gruppen direkt
efter presentationen. I den skriftliga oppositionen ges även kommentarer på rapporten som sådan; vid den muntliga oppositionen ska fokus ligga på den tekniska lösningen.

Rapporten

Rapporten skrivs enligt den rapportmall som finns på kurswebben. En första version av den fullständiga rapporten lämnas in via Canvas samt till opponerande grupp, enligt datum i detaljplaneringen. Denna version läses och kommenteras av opponerande grupp. Slutlig rapport lämnas in via Canvas efter slutseminariet, enligt
detaljplaneringen. Det är denna version som bedöms av examinator. 

Notera att den löpande texten i rapporten endast i undantagsfall bör innehålla ren kod. Viktiga delar av koden kan publiceras i ett appendix. Däremot bör ett kondensat av de diagram, och liknande, som beskriver lösningen finnas med i rapporten.

Campusövergripande seminarium

Examinationen inkluderar ett obligatoriskt campusövergripande seminarium där tre grupper från respektive campus, Flemingsberg repsektive Valhallavägen, utsedda genom studenternas bedömning, presenterar sina arbeten.

Etiskt förhållningssätt

  • Vid grupparbete har alla i gruppen ansvar för gruppens arbete.
  • Vid examination ska varje student ärligt redovisa hjälp som erhållits och källor som använts.
  • Vid muntlig examination ska varje student kunna redogöra för hela uppgiften och hela lösningen.

Ytterligare information

Projektarbetets genomförande

Möten under projektet

Projektarbetet startar 1 ½ - 2 veckor in i perioden. Arbetet bedrivs enligt vad som beskrivs i kurslitteraturen, ”Agil projektledning”, av Tomas Gustavsson, samt det kompletterande material som publiceras på kurswebben. Speciellt gäller detta etapper, etappmöten, stå-upp-möten samt produktlogg och etapploggar. Varje etapp rekommenderas vara 1-2 veckor lång.

Gruppen ska dessutom möta sin handledare varje vecka, de dagar som är markerade "Handledning" i schemat, och då redovisa status i arbetet och demonstrerar ny implementerad funktionalitet.

Obligatorisk dokumentation

Gruppen ska fortlöpande presentera information om projektet via en grupp-webb på KTH Social, https://kth.se/social. På denna sida presenteras och uppdateras fortlöpande tidplan, protokoll, produktlogg, protokoll från etappmöten samt ett schema över alla arbetsmöten (minst) en etapp framåt i tiden. I schemat över arbetsmöten ska för varje arbetspass anges var gruppen samlas; handledaren kan besöka dessa möten utan förvarning.

Anteckningar ska föras vid varje etappuppföljningsmöte. Handledaren ska vara kallad till alla etappuppföljningsmöten. Dessa möten bokas om möjligt in med handledaren de dagar som är markerade ”Handledning” i schemat. Vid dessa möten ska en representant för uppdragsgivaren och/eller produktägaren närvara.

Digital projekttavla

Gruppen ska använda en digital projekttavla för att presentera det fortlöpande arbetet under etappen. Tavlan ska uppdateras vid slutat av varje arbetspass. Man kan använda Taiga på KTH, kontakta då Reine Bergström för konto. Handledaren ska ha tillgång till gruppens projekttavla.

Kod, versionshantering

Koden ska finnas på en versionshanteringsserver, eller motsvarande tjänst på internet, som handledaren ges tillgång till (läsrättigheter). Om gruppen inte använder uppdragsgivarens tjänst för detta använder ni lämpligen Github (github.com eller KTH).

Fakta om kursomgång

Startdatum

2026-03-16

Kursomgång

  • VT 2026-60619

Undervisningsspråk

Svenska

Kursen ges av

CBH/Medicinteknik och hälsosystem

Kontakter

Kursansvarig

Lärare

Examinator