Kursplan för vårterminen 2007
INGENJÖRSPROCESSEN FÖR PROGRAMVARUUTVECKLINGETS141
Software Engineering Process

Antal poäng: 6. Betygskala: TH. Obligatorisk för: C1. Kursansvarig: Docent Martin Höst, Martin.Host@telecom.lth.se, Inst f telekommunikationssystem. Prestationsbedömning: Redovisade rapporter, tentamen och projektarbete. Poängsatta delmoment: 3. Hemsida: http://serg.telecom.lth.se/education.

Mål
Kunskapsmål
Studenten skall känna till de viktigaste stegen i ingenjörsprocessen för utveckling av ett programvarusystem inom informations- och kommunikationsteknik. Begrepp som krav, design och verifiering skall vara kända liksom viktiga kvalitetsattribut för dessa. Studenten skall känna till en projektstyrmodell och vilken funktion den fyller i ett utvecklingsprojekt. Vidare ska studenten var bekant med etiska och juridiska aspekter för programvara.

Färdighetsmål
Studenten skall kunna skriva en kravspecifikation för ett enkelt system och därmed ta hänsyn till användarnas behov och situation, göra en preliminär design för systemet samt skriva en testplan för det. Vidare skall studenten kunna använda en projektstyrmodell som arbetsprocess för ett mindre projekt. Detta innefattar att skriva en projektplan samt leda och följa upp ett projekt i förhållande till planen. Studenten ska kunna förhålla sig till lagstiftning och etiska regler avseende upphovsrätt, patent och liknande programvarurelaterade områden.

Attitydmål
Studenten skall efter avslutad kurs ha fått insikt i, att utveckling av informations- och kommunikationssystem innehåller många olika moment, från idé till färdig produkt, samt att produkten måste utformas för att passa användarens situation. Studenten skall inse, att detta arbete kräver samarbete och tydlig ansvarsfördelning, samt hållpunkter och en tydlig struktur för arbetet som alla i projektet känner till. Studenten skall förstå betydelsen av projektledningens uppgift, dess sociala aspekter, samt den avvägning mellan tekniska lösningar, kostnader och kvalitet som kännetecknar industriell programvaruteknik. Vidare skall studenterna förstå värdet av tidiga kvalitetshöjande insatser.

Innehåll
Kursen ger en introduktion till hur man utvecklar informations- och kommunikationssystem med betydande andel programvara. Vidare presenteras en enkel projektstyrmodell som studenterna tränas i att använda. Standarder och regelverk för juridiska och etiska aspekter av programvaruutveckling presenteras också.
Kursen är av överblickande och motiverande karaktär. Den gör inget anspråk på att täcka olika varianter på process- och projektstyrmodeller, utan fokuserar på ett valt exempel.
Föreläsningar och övningar ger introduktion till de olika delarna, medan ett projektarbete med ett scenario ger inblickar i hur man från idé till färdig programvaruprodukt samt träning i att använda projektstyrmodellen. Områden som berörs är:

Programvaruprocessen
Begrepp: krav, design, implementation, verifiering.
Dokument: kravspecifikation, designspecifikation, verifieringsplan
Stöd: processmodell, infrastruktur för programvaruutveckling, konfigurationshantering.

Projektstyrning
Begrepp: planering, milstolpar, roller, mätningar, uppföljning
Dokument: projektplan, statusrapport.
Stöd: projektstyrmodell.

Etik och juridik
Begrepp: Upphovsrätt, patent på programvara, etikkod för ingenjörer

Litteratur
Claes Wohlin, "Introduktion till Programvaruutveckling",
Studentlitteratur, 2005, ISBN 91-44-02861-X Ytterligare material som anvisas av institutionen.

Poängsatta delmoment

Kod: 0106. Benämning: Övningar och rapporter.
Antal poäng: 2. Betygskala: UG. Prestationsbedömning: Aktivt deltagande i övningar och inlämnade skriftliga rapporter. Delmomentet omfattar: Övningar i grupp och individuell rapportskrivning.

Kod: 0206. Benämning: Projekt.
Antal poäng: 2. Betygskala: UG. Prestationsbedömning: Godkänt projekt. Delmomentet omfattar: Projekt i grupp.

Kod: 0306. Benämning: Tentamen.
Antal poäng: 2. Betygskala: TH. Prestationsbedömning: Godkänd tentamen. Delmomentet omfattar: Skriftlig tentamen.