KRAVHANTERINGETS670
Requirements Engineering

Poäng: 4.0 Betygskala: UG Obligatorisk för: PVH3 Kursansvarig: Björn Regnell, e-post: bjorn.regnell@telecom.lth.se Rekomenderade förkunskaper: Programvaruteknik översiktskurs (ETS652), Programmeringmed processuppföljning (EDA680), Programvaruutveckling för stora system (ETS311) Prestationsbedömning: Fördjupningsuppgift och projekt. Presentationer och rapporter är betygsgrundande. Webbsida: http://www.telecom.lth.se Övrigt: Rapporter skrives på engelska. Obligatoriska moment: Fördjupningsuppgift, projekt, övningar, presentationer.

Mål:
Kunskapsmål:
Kursen ger förståelse för utmaningar och möjligheter inom kravhantering för programvara, samt kunskap om kravhanteringsprocessens olika aktiviteter. Kursen ger även kännedom om olika typer av krav och olika kvalitetsattribut som är önskvärda för en kravspecifikation. Av vikt är även insikten om inneboende konflikter mellan dessa kvalitetsattribut. Förståelse ges för skillnaden mellan krav och design. Kursen belyser skillnaden i kravhantering mellan olika kravsituationer så som upphandling, kontraktsutveckling och marknadsdriven programvaruutveckling. Förståelse ges för rollen som kravdokumentet spelar i utvecklingsprocessen och kännedom erhålls om kommersiella verktyg för kravhantering.
Färdighetsmål:
Det huvudsakliga färdighetsmålet är att ge god förmåga att samla in, dokumentera, granska och prioritera krav. Färdighet kommer även att ges i ett antal specifika metoder för kravanalys och kravmodellering. En viktig färdighet är att kunna välja de metoder som passar bäst i en specifik situation.
Attitydmål:
Kursen illusterar vikten av att göra rätt från början i stället för att laga på slutet. En grundläggande insikt är att kvaliteten hos slutprodukten i hög grad beror av kvaliteten i arbetet med kraven. Kursen betonar vikten av användbarhet och användarens deltagande i kravprocessen.

Innehåll:
Föreläsningar ger en översikt och helhetsbild av kravhanteringsområdet, samt belyser generella problemställningar. Övningarna ger praktisk färdighet i olika kravhanteringsmetoder som berör t.ex. användningsfall, prioritering, kravgranskning, målanalys, och datamodellering. Realistiska kravspecifikationer kommer att användas på övningarna. I projektform kommer arbetsgrupper att arbeta med att ta fram, dokumentera, validera och prioritera krav för ett realistiskt system, och på så sätt ges förståelse för hur olika tekniker kan samverka genom hela kravprocessen. I ett fördjupningsarbete kommer ytterliggare litteratur om kravhantering att studeras. Arbetsgrupperna presenterar för varandra resultaten från projektet och fördjupningsarbetet.

Litteratur:
Søren Lauesen, "Software Requirements - Styles and Techniques", Samfundslitteratur, ISBN 87-593-0794-3, samt ytterliggare fördjupningslitteratur som anvisas av institutionen.