Kursplan för kalenderåret 2006
PROGRAMVARUUTVECKLING I GRUPP – PROJEKTEDA260
Software Development in Teams – Project

Antal poäng: 4. Betygskala: UG. Obligatorisk för: D2. Valfri för: C3. Kursansvarig: Professor Boris Magnusson, Boris.Magnusson@cs.lth.se och professor Boris Magnusson, Boris.Magnusson@cs.lth.se, Inst f datavetenskap. Förkunskapskrav: EDA027 Algoritmer och datastrukturer samt de obligatoriska momenten i EDA061 Objektorienterad modellering och design. Prestationsbedömning: För godkänt krävs fullgjorda laborationer, godkänt på kontrollskrivningen samt fullgjorda planeringsövningar, långlaborationer och godkänd projektredovisning under kursens andra läsperiod. Detaljerade föreskrifter angående fullgörande av obligatoriska moment kommer att finnas i kursprogrammet. Övrigt: Kurstyp projekt. Hemsida: http://www.cs.lth.se/EDA260.

Mål
Syftet med kursen är att ge en metod för, och praktisk erfarenhet av, programutveckling i grupp samt att ge inblick i viktiga principer för iterativt framtagande av programvara såsom planering, design/implementation, testning och leverans. Kursen ger förståelse för användarens krav och metoder för att hantera dem. Kursen fungerar som en introduktion till området programvaruutveckling samt ger en fördjupning inom objektorienterad programutveckling.

Innehåll
En konkret iterativ lättviktsmetod används där studenterna tränas i att arbeta i grupp. Den använda metoden tar sin utgångspunkt i idéer från extremprogrammering (XP) med deltekniker som iterativ planering, automatiserad testning, test-first, parprogrammering, refaktorisering och täta leveranser. Kundens/användarens krav formuleras och prioriteras i samarbete med studenterna. Därigenom får studenterna inblick i de olika rollerna i processen exempelvis som kund/användare, projektledare och utvecklare samt förståelse för användarens behov och hur de kan hanteras. Kursen ger praktisk erfarenhet av hur ett småskaligt projekt kan drivas och ger därmed en referensram för påbyggnadskurser, som behandlar metodik för programutveckling för större projekt och organisationer.

Kursen går över två läsperioder. Under den första perioden varvas föreläsningar med laborationer på enskilda moment som planering, testning, konfigurationshantering och refaktorisering. Under andra perioden delas studenterna in i grupper om cirka 10 personer. Varje grupp driver ett programutvecklingsprojekt som en serie av planeringsmöten varvade med långlaborationer och med en avslutande projektredovisning.

Litteratur
chromatic: Extreme Programming Pocket Guide. O'Reilly 2003. ISBN: 0-596-00485-0. Dessutom tillkommer kursmaterial i form av artiklar.