Kursplan för

Programvaruutveckling i grupp – projekt
Software Development in Teams – Project

EDA260, 6 högskolepoäng, G2 (Grundnivå, fördjupad)

Gäller för: Läsåret 2012/13
Beslutad av: Utbildningsnämnd 1
Beslutsdatum: 2012-03-19

Allmänna uppgifter

Huvudområde: Teknik.
Obligatorisk för: D2
Valfri för: C4, E4, E4-pv, F4, F4-pv, Pi4
Undervisningsspråk: Kursen ges på svenska

Syfte

Många civilingenjörer kommer under sin karriär att samarbeta med andra i utveckling av programvara. Syftet med kursen är att ge kunskaper om och praktisk erfarenhet av hur man samverkar i ett team för att ta fram en programvaruprodukt. Fokus ligger på metoden extremprogrammering, en högiterativ, så kallad agil, utvecklingsprocess som syftar till hållbar utveckling av mjukvara. Kursen tar upp principer för samarbete med beställaren, planering, hållbar design/implementation, testning och leverans. Kursen fungerar samtidigt som fördjupning inom objektorienterad programmering.

Mål

Kunskap och förståelse
För godkänd kurs skall studenten

Färdighet och förmåga
För godkänd kurs skall studenten

Kursinnehåll

En konkret iterativ, så kallad agil, programutvecklingsmetodik 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, versionshantering 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.

Kursens examination

Betygsskala: UG
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. Detaljer kommer att finnas i kursprogrammet.

Delmoment
Kod: 0112. Benämning: Laborationer och kontrollskrivning.
Antal högskolepoäng: 2. Betygsskala: UG. Prestationsbedömning: Godkänt på laborationer. Godkänt på kontrollskrivning.
Kod: 0212. Benämning: Projekt.
Antal högskolepoäng: 4. Betygsskala: UG. Prestationsbedömning: Godkänt på alla delar av projektet.

Antagningsuppgifter

Förkunskapskrav:

Begränsat antal platser: 120
Urvalskriterier: Studenter som följer D-programmet har platsgaranti. Om de är färre än 120 (och om antalet anmälda överstiger 120) görs ett urval till resterande platser. Urvalet görs genom sammanvägning av betyg i centrala programvarutekniska kurser (Programmering, Programmeringsteknik-fördjupningskurs/Algoritmer och datastrukturer, OMD, Realtidsprogrammering/Nätverksprogrammering) och totalt antal uppnådda poäng på programmet.
Kursen överlappar följande kurser: EDA321, EDA322

Kurslitteratur

Kontaktinfo och övrigt

Kursansvarig: Professor Boris Magnusson,, Boris.Magnusson@cs.lth.se
Kursansvarig: Professor Görel Hedin, Gorel.Hedin@cs.lth.se
Hemsida: http://cs.lth.se/eda260
Övrig information: Kurstyp projekt.