DD2385 Programutvecklingsteknik 6,0 hp

Software Engineering

OBS!

Detta är en nedlagd kurs.

En fortsättningskurs i datalogi som behandlar objektorienterad programmering i Java, objektorienterad modellering och analys, programutveckling med designmönster samt avancerade klassbibliotek i Java.

  • Utbildningsnivå

    Avancerad nivå
  • Kursnivå (A-D)

    C
  • Huvudområde

    Datalogi och datateknik
    Informations- och kommunikationsteknik
    Informationsteknik
  • Betygsskala

    A, B, C, D, E, FX, F

Sista planerade examination: VT20.

Det finns inget planerat kurstillfälle.

Lärandemål

Efter kursen ska studenten kunna:

  • Använda objektorienterade begrepp och tekniker som lös koppling, inkapsling, arv och polymorfism vid eget programmeringsarbete i Java.
  • Redogöra för och tillämpa kriterier för god objektorienterad design.
  • Redogöra för de vanligaste designmönstren inom objektorienterad programutveckling samt välja lämpliga mönster för enkla tillämpningsexempel.
  • Använda UML-klassdiagram för att på ett överskådligt och tydligt sätt dokumentera eget programmeringsarbete.
  • Läsa och förstå UML-klassdiagram, t.ex. som introduktion till nya designmönster.
  • Förstå avancerade språkelement och biblioteksklasser i Java som undantag, trådar, grafiska Swing- komponenter, objektsamlingar och nätprogrammering samt använda dessa i eget programmeringsarbete.
  • Genomföra en objektorienterad analys av en informell kravspecifikation, och med hjälp av en Substantiv/Verb/Relation-metodik skapa ett "data dictionary".
  • Översätta informationen i ett data dictionary till ett UML-klassdiagram som representerar samma information inklusive aggregationer, arv och multipliciteter.

Kursens huvudsakliga innehåll

Objektorienterad programmering i Java. Användning av klassbibliotek i Java för objektsamlingar, grafiska komponenter, klient-server-programmering och trådar. UML-klassdiagram.

Designmönster för objektorienterad programutveckling, kriterier för god design.

XML. Orientering om vanliga utvecklingsmetodiker, testning, UML för annat än klassdiagram.
  
Laborationer i Java som samtliga dokumenteras med UML.

Behörighet

För fristående kursstuderande krävs 90 högskolepoäng varav 45 högskolepoäng inom matematik eller informationsteknik. Dessutom krävs engelska B eller motsvarande och svenska B eller motsvarande.

Rekommenderade förkunskaper

Kunskaper i programmering och datalogi motsvarande kurserna DD1320, DD1321, DD1343 + DN1243 eller DD1344.
Programmeringsfärdigheter i programspråket Java motsvarande DD1342 eller DD2310.

Litteratur

Kurslitteratur meddelas senast 4 veckor innan kursstart på kursens hemsida. Föregående år användes: Brande, Software design.

Examination

  • LABA - Laborationsuppgifter, 3,0, betygsskala: A, B, C, D, E, FX, F
  • TEN1 - Skriftlig tentamen, 3,0, betygsskala: A, B, C, D, E, FX, F

I denna kurs tillämpas skolans hederskodex, se: http://www.kth.se/csc/student/hederskodex.

Ges av

CSC/Teoretisk datalogi

Kontaktperson

Vahid Mosavat (vahid@kth.se)

Examinator

Ann Bengtsson <ann@kth.se>

Vahid Mosavat <vahid@kth.se>

Övrig information

Kursen byter från och med läsåret 2017/2018 kurskod till DD1385.

Påbyggnad

DD1388 Program System Construction Using C++

Versionsinformation

Kursplan giltig från och med VT2013.
Examinationsinformation giltig från och med VT2009.