Arkitektur och designmönster

7,5 hp

Kursplan, Grundnivå, 2IS226

Det finns en senare version av kursplanen.
Kod
2IS226
Utbildningsnivå
Grundnivå
Huvudområde(n) med fördjupning
Programvaruteknik G1F
Betygsskala
Underkänd (U), godkänd (G), väl godkänd (VG)
Fastställd av
Institutionsstyrelsen, 24 januari 2019
Ansvarig institution
Institutionen för informatik och media

Behörighetskrav

30 hp programvaruteknik eller motsvarande

Mål

Vad gäller kunskap och förståelse förväntas studenterna efter genomgången kurs kunna:

  • beskriva arkitekturmodeller inklusive deras styrkor och svagheter,
  • förklara grundläggande designprinciper inom objektorienterad programmering,
  • redogöra för vanligt förekommande designmönster inklusive deras möjligheter och begränsningar,
  • beskriva och exemplifiera hur designmönster är kopplade till designprinciper.

Vad gäller färdigheter och förmågor förväntas studenten efter genomgången kurs kunna:

  • översiktligt modellera IT-system utifrån arkitekturmodeller.
  • använda designmönster för att skapa objektorienterade program som är enkla att underhålla och testa.

Vad gäller värderingsförmåga och förhållningssätt förväntas studenten efter genomgången kurs kunna:

  • värdera objektorienterade program med utgångspunkt från designprinciper.

Innehåll

Kursen fokuserar på objektorienterad design utifrån designprinciper och designmönster men behandlar även mjukvaruarkitektur. En designprincip inom mjukvaruutveckling beskriver på hög nivå hur objektorienterade program som är enkla att underhålla och testa kan utvecklas. Kursen behandlar designprinciper såsom Single responsibility principle, Open-closed principle och Dependency inversion principle som tillämpas genom vanligt förekommande designmönster såsom State, Observer och Factory Method. Designmönster är mer konkreta lösningar för hur vanligt förekommande problem inom objektorienterad programmering kan lösas, genom att föreslå hur klasser och deras relationer kan struktureras.

En arkitektur inom mjukvaruutveckling beskriver på en hög nivå hur olika delsystem är strukturerade och relaterade till varandra och fungerar som en ritning när system ska utvecklas, utökas eller omstruktureras. Kursen behandlar olika modeller för mjukvaruarkitektur såsom skiktad, händelsedriven och microservices inklusive deras styrkor och svagheter och när de är lämpliga att använda.

Undervisning

Kursen ges i form av föreläsningar och laborationer.

Examination

Kursen examineras genom inlämningsuppgifter och tentamen.

Om särskilda skäl finns får examinator göra undantag från det angivna examinationssättet och medge att en student examineras på annat sätt. Särskilda skäl kan t.ex. vara besked om särskilt pedagogiskt stöd från universitetets samordnare eller beslut om undantag som fattats av institutionens arbetsgrupp för studieärenden.

FÖLJ UPPSALA UNIVERSITET PÅ

facebook
instagram
twitter
youtube
linkedin