Avancerad mjukvarudesign
Kursplan, Avancerad nivå, 1DL242
- Kod
- 1DL242
- Utbildningsnivå
- Avancerad nivå
- Huvudområde(n) med fördjupning
- Datavetenskap A1F, Teknik A1F
- Betygsskala
- Med beröm godkänd (5), Icke utan beröm godkänd (4), Godkänd (3), Underkänd (U)
- Fastställd av
- Teknisk-naturvetenskapliga fakultetsnämnden, 9 mars 2017
- Ansvarig institution
- Institutionen för informationsteknologi
Behörighetskrav
120 hp varav 60 hp matematik, datavetenskap eller teknik, inklusive Metoder och projektledning för mjukvaruutveckling och en fortsättningskurs i programmering i ett objektorienterat språk.
Mål
Efter godkänd kurs ska studenten kunna
- sammanfatta och förklara relevanta designprinciper.
- använda objektorienterad programmeringsmetodik för att designa och implementera större program.
- använda ett modelleringsspråk som hjälp för att kommunicera kring verklighetsnära problem och lösningar.
- demonstrera förståelse för kopplingen mellan modelleringsspråk och programspråk, till exempel genom att implementera designmodeller.
- använda designmönster och andra beprövade lösningar på designproblem.
- diskutera olika metoder för programvarudesign, deras egenskaper och tillämpbarhet.
Innehåll
Principer och metoder för programvarudesign med särskilt fokus på objektorienterad design. Domänmodellering, programvaruarkitektur, klass och objektmodellering, beteendemodellering, designmönster, designprinciper för fördelning av ansvar (General Responsibility Assignment Software Principles, GRASP). Utvärdering och förbättring av design samt omstrukturering av kod, refaktorisering. Övning i design för ett större program.
Undervisning
Föreläsningar, projekthandledning.
Examination
Muntlig och skriftlig redovisning av uppgifter inom ett projekt.