Hoppa till huvudinnehållet

DD2385 Programutvecklingsteknik 6,0 hp

Kursomgångar saknas för aktuella eller kommande terminer.
Rubriker med innehåll från kursplan DD2385 (VT 2013–) är markerade med en asterisk ( )

Innehåll och lärandemål

Kursinnehå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.

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.

Kurslitteratur och förberedelser

Särskild 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.

Utrustning

Ingen information tillagd

Kurslitteratur

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

Examination och slutförande

När kurs inte längre ges har student möjlighet att examineras under ytterligare två läsår.

Betygsskala

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

Examination

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

Examinator beslutar, baserat på rekommendation från KTH:s handläggare av stöd till studenter med funktionsnedsättning, om eventuell anpassad examination för studenter med dokumenterad, varaktig funktionsnedsättning.

Examinator får medge annan examinationsform vid omexamination av enstaka studenter.

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

Möjlighet till komplettering

Ingen information tillagd

Möjlighet till plussning

Ingen information tillagd

Examinator

Etiskt förhållningssätt

  • Vid grupparbete har alla i gruppen ansvar för gruppens arbete.
  • Vid examination ska varje student ärligt redovisa hjälp som erhållits och källor som använts.
  • Vid muntlig examination ska varje student kunna redogöra för hela uppgiften och hela lösningen.

Ytterligare information

Kursrum i Canvas

Registrerade studenter hittar information för genomförande av kursen i kursrummet i Canvas. En länk till kursrummet finns under fliken Studier i Personliga menyn vid kursstart.

Ges av

Huvudområde

Datalogi och datateknik, Informations- och kommunikationsteknik, Informationsteknik

Utbildningsnivå

Avancerad nivå

Påbyggnad

DD1388 Program System Construction Using C++

Kontaktperson

Vahid Mosavat (vahid@kth.se)

Övrig information

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