Kursplan för |
|
EDA397 - Agile development processes |
Agile development processes |
|
Kursplanen fastställd 2018-02-28 av programansvarig (eller motsvarande) |
Ägare: MPSOF |
|
7,5 Högskolepoäng
|
Betygskala: TH - Fem, Fyra, Tre, Underkänd |
Utbildningsnivå: Avancerad nivå |
Huvudområde: Datateknik, Industriell ekonomi, Informationsteknik
|
Institution: 37 - DATA- OCH INFORMATIONSTEKNIK
|
Undervisningsspråk: Engelska
Sökbar för utbytesstudenter: Ja
Max antal deltagare: 65
Modul |
|
Poängfördelning |
|
Tentamensdatum |
Lp1 |
Lp2 |
Lp3 |
Lp4 |
Sommarkurs |
Ej Lp |
0107 |
Projekt |
4,5 hp |
Betygskala: UG |
|
|
|
|
4,5 hp
|
|
|
|
|
0207 |
Tentamen |
3,0 hp |
Betygskala: TH |
|
|
|
|
3,0 hp
|
|
|
|
04 Jun 2019 em L, |
13 Okt 2018 fm L, |
29 Aug 2019 fm L |
I program
MPSOF SOFTWARE ENGINEERING AND TECHNOLOGY - UTVECKLING OCH IMPLEMENTERING AV MJUKVARA, MASTERPROGRAM, Årskurs 1 (obligatoriskt valbar)
MPIDE INTERAKTIONSDESIGN, MASTERPROGRAM, Årskurs 2 (valbar)
Examinator:
Eric Knauss
Gå till kurshemsida
Ersätter
EDA395
Individuell programvaruutveckling och processförbättring EDA396
Agile development processes
Behörighet:
För kurser på avancerad nivå gäller samma grundläggande och särskilda behörighetskrav som till det kursägande programmet. (När kursen är på avancerad nivå men ägs av ett grundnivåprogram gäller dock tillträdeskrav för avancerad nivå.)
Undantag från tillträdeskraven:
Sökande med en programregistrering på ett program där kursen ingår i programplanen undantas från ovan krav.
Kursspecifika förkunskaper
För behörighet till kursen krävs minst 1) en kandidatexamen i Software Engineering, Programvaruteknik, datavetenskap eller motsvarande, inklusive an godkänd kurs i programmering (t.ex. DAT042, DAT050, DAT055, DAT170, TDA545, TDA550 eller motsvarande), och 2) en godkänd kurs i praktisk mjukvaruutveckling eller programvaruteknik projektet (t.ex. DAT255 Software Engineering Project).
Syfte
Modern mjukvaruutveckling inom industrin har antagit agila principer och metoder, för att t.ex. öka kundfokus, öka hastigheten på utveckling och releaser, och omfamna förändringar. Kursen syftar till att lära sig om mjukvara design och utveckling med hjälp av dessa metoder och principer, i både teori och praktik
Lärandemål (efter fullgjord kurs ska studenten kunna)
- Kunskap och förståelse
- Jämföra agil mjukvaruutveckling med mer traditionell
- Sätta lean i relation till agil utveckling
- Kontrastera olika agila metoder
- Använda det agila manifestet och dess principer
- Diskutera skillnader mellan att leda ett agilt team och ett mer traditionellt
- Förmågor och färdigheter
- Organiskt bilda ett team
- Samarbeta i små mjukvaruutvecklingsteam
- Interagera med och kontinuerligt demonstrera framsteg för en kund eller användare
- Utveckla program i korta och frekventa iterationer
- Använda testdriven utveckling och testautomation
- Refaktorera ett program och en design
- Vara medlem i ett agilt team
- Utföra inkrementell planering medelst user stories
- Värderingsförmåga och förhållningssätt
- Förklara hur mjukvaruutveckling kan ses som primärt människo- och kommunikations-centrerad
- Tillämpa faktumet att det som primärt driver framgång i projekt är människor
- Beskriva varför ingen enskild metod kan passa alla projekt eller kontexter
- Diskutera hur utvecklingsmetoder behöver anpassas till olika mänskliga kulturer och val
Innehåll
Agil mjukvaruutveckling strävar efter att etablera en mjukvaruutveckling grundad på följande principer från det agila manifestet:
- Individer och interaktioner värderas mer än processer och verktyg
- Fungerande programvara värderas mer än omfattande dokumentation
- Kundsamarbete värderas mer än kontraktsförhandling
- Anpassning till förändring värderas mer än att följa en plan
Kärnan i dessa principer är insikten att förändringar är oundvikliga och slutsatsen att förändringshantering behöver integreras i utvecklingsprocessen. Agila förhållningssätt främjar iterativ och inkrementell utveckling genom en mycket kort design-kod-test-cykel.
I denna interaktiva kurs utforskar vi tillsammans tillämpning av dessa agila principer för mjukvaruutveckling och projektstyrning.
Kursen omfattar:
- Ledning och metoder för att utveckla mjukvara inkrementellt
- Principer för agila processer
- Vanligt använda agila tillämpningar
- Kommunikation- och människo-centrerad mjukvaruutveckling
- Agila metoder i förhållande till mer traditionella, plandrivna metoder
- Kritik av agila metoder
Organisation
Kursen består av föreläsningar, samt en projektdel där mjukvara utvecklas med agila förhållningssätt.
Litteratur
Se separat litteraturlista.
Examination inklusive obligatoriska moment
För godkänt krävs godkänd skriftlig tentamen och ett godkänt projekt.