PA1435 Objektorienterad design

Programkurs, 6 Högskolepoäng, Grundnivå, vårterminen 2019

Denna kurs är del av program och går inte att söka till.

Kursens syfte är att ge insikt i den speciella design- och implementationsproblematik som objektorienterad programvaruutveckling medför. Utgående från grundläggande objektorienterade begrepp modelleras struktur och beteende hos objektorienterade system med hjälp av modelleringsspråket UML (Unified Modeling Language). Designprinciper och designmönster introduceras som verktyg för att skapa robust programvara och förbättra möjligheten till organisation och underhåll av programvara. Designmönster är standardiserade metoder för att sätta samman objekt och klasser för att lösa vanligt förekommande designproblem. Utvecklare av objektorienterad programvara bör veta hur designmönster kan användas för att förenkla utvecklingsarbetet och kunna bedöma kvaliteten och eventuella förbättringar av källkoden. Kursen omfattar laborationer där designkunskaperna tillämpas och implementeras i källkod.

Fakta

  • Undervisningsform: Campus, dagtid, deltid 50%
  • Period: 2019 vecka 04 till 2019 vecka 13
  • Nivå: G1F
  • Anmälan: Denna kurs är del av program och går inte att söka till.
  • Språk: Undervisningen ges normalt på svenska men undervisning på engelska kan förekomma.
  • Ort: Karlskrona
  • Huvudområde: Programvaruteknik
  • Kursplan: Ladda ner
  • Välkomstbrev: Denna kurs är en del av ett program och saknar välkomstbrev.
  • Förkunskapskrav: Grundläggande behörighet Genomgått kurs i objektorienterad programmering

Innehåll

Kursen omfattar följande:
  • Grundläggande begrepp inom objektorienterad modellering.
  • Strukturella och beteendemässiga perspektiv på objektorienterade system.
  • Introduktion till modelleringsspråket UML (Unified Modeling Language).
  • Diagramtyper i UML för användningsfall, klasser, interaktion och tillstånd.
  • Grundläggande designprinciper exempelvis låg koppling, hög sammanhållning, inkapsling och polymorfism.
  • Designmönster samt orientering om hur dessa kan användas i allmänhet och inom en särskild domän.
  • Förbättring av källkod genom s.k. reverse engineering.

Lärandemål

Kunskap och förståelse
Efter genomförd kurs ska studenten:
  • kunna visa förståelse för grundläggande principer i objektorienterad programvaruutveckling.
  • kunna visa förståelse för UML som modelleringsspråk.
  • kunna visa kunskap om grundläggande designprinciper.
  • kunna visa kunskap om grundläggande designmönster.


Färdigheter och förmåga
Efter genomförd kurs ska studenten:
  • kunna uttrycka strukturen och beteendet hos ett system i termer av objektorienterade koncept.
  • kunna korrekt använda UML för att uttrycka struktur och beteende hos ett system.
  • kunna korrekt transformera en objektorienterad design till källkod.
  • kunna tillämpa designprinciper och designmönster i allmänhet och inom en särskild domän.


Värderingsförmåga och förhållningssätt
Efter genomförd kurs ska studenten:
  • kunna analysera källkod för eventuella förbättringar.
  • kunna analysera och kritiskt diskutera en design för eventuella förbättringar.

Generella förmågor

Kurslitteratur och övriga läromedel

Huvudlitteratur
Applying UML and patterns - An Introduction to Object-Oriented Analysis and Design and Iterative Development, third edition
Författare: C. Larman
Förlag: Prentice Hall
Utgiven:2005, Antal sidor: 703
ISBN10:0-13-148906-2


Referenslitteratur
Design Patterns - Elements of Reusable Object-Oriented Software
Författare: E. Gamma, R. Helm, R. Johnson, J. Vlissides
Förlag: Addison-Wesley
Utgiven: 1995, Antal sidor: 416
ISBN: 9780201633610

Game Programming Patterns
Författare: R. Nystrom
Förlag: Genever Benning
Utgiven: 2014, Antal sidor: 354
ISBN: 9780990582908

Kurslitteratur och övriga läromedel

Huvudlitteratur
Applying UML and patterns - An Introduction to Object-Oriented Analysis and Design and Iterative Development, third edition
Författare: C. Larman
Förlag: Prentice Hall
Utgiven:2005, Antal sidor: 703
ISBN10:0-13-148906-2


Referenslitteratur
Design Patterns - Elements of Reusable Object-Oriented Software
Författare: E. Gamma, R. Helm, R. Johnson, J. Vlissides
Förlag: Addison-Wesley
Utgiven: 1995, Antal sidor: 416
ISBN: 9780201633610

Game Programming Patterns
Författare: R. Nystrom
Förlag: Genever Benning
Utgiven: 2014, Antal sidor: 354
ISBN: 9780990582908

Lärande och undervisning

Undervisningen består av föreläsningar och laborationer. Föreläsningarna behandlar centrala begrepp, tekniker och metoder inom objektorienterad design. Laborationerna syftar till att ge förståelse för hur begrepp, metoder och tekniker kan tillämpas i designarbetet och realiseras i källkod.

Arbetslivsanknytning

Ingen praktik ingår i planerade lärtillfällen. BTH strävar efter tät kontakt med näringslivet vid utveckling av kurser och program.

Lärare

Examinator
  1. Ludwik Kuzniarz
Kursansvarig
  1. Ludwik Kuzniarz

Tidsåtgång

I genomsnitt bör en student räkna med att studera 160 timmar för att nå lärandemålen.
I denna tid ingår alla olika förekommande lärandeaktiviteter (föreläsningar, självstudier, examination m. m.).
Tidsuppskattningen baseras på att ett akademiskt år omfattar 60 högskolepoäng (motsvarar 60 ECTS credits),
som svarar mot en total studietid på ca 1 600 timmar. Den faktiska studietiden varierar individuellt.

Bedömning

Examinationsmoment för kursen
Kod Benämning Högskolepoäng Betyg
1505 Laboration 1 1.5 A-F
1515 Laboration 2 0.5 G-U
1525 Skriftlig tentamen 2 A-F
1535 Laboration 3 2 A-F

Betyg

Kursen bedöms med betygen A Utmärkt, B Mycket bra, C Bra, D Tillfredsställande, E Tillräckligt, FX Otillräckligt, komplettering krävs, F Underkänd.

Kommande tentamenstillfällen

Inga kommande centralt samordnade tentamenstillfällen hittades för denna kurs.

För att få delta vid ett centralt samordnat tentamenstillfälle måste du ha anmält dig i Studentportalen senast 15 dagar innan tentamensdagen.


Lokal och tidpunkt publiceras ca 5 dagar innan tentamensdagen.


Det kan finnas andra planerade examinationstillfällen. Information om de finns i It's Learning eller på annan plats som kursansvarig hänvisar till.

Kursutvärdering

Kursansvarig ansvarar för att studenternas synpunkter på kursen systematiskt och regelbundet inhämtas och att resultaten av utvärderingar i olika former påverkar kursens utformning och utveckling.