Course syllabus

Välkommen till kursrummet för TDA367/DIT212 HT19 Objektorienterat programmeringsprojekt kursen! Kursen ges av institutionen för Data- och informationsteknik på campus Johanneberg i läsperiod 1. Information om kursen hittar du nedan och via följande länkar:

Lärare

Kursplan

Kursen avser att ge kunskap om och övning i professionell utveckling av mjukvara genom praktiskt projektarbete. Kursen presenterar en enkel, testdriven, objektorienterad process. Begrepp som iterativ utveckling, objektorienterad analys och design, domän- och designmodell introduceras. Olika aspekter på design gås igenom: testbarhet, beroenden, krav, m.fl. Utifrån detta implementerar studenter, i grupper om 4 eller 5, ett projekt.

Officiella kursplanen hittar du här:

Kursens upplägg

Vi kommer att ha:

Parallellt med detta genomför studenterna, i grupper om fyra/fem, ett fullständig utvecklingprojekt i form av ett mindre mjukvaruprojekt. I projektet ingår obligatoriska veckovisa handledarmöten och en muntlig slutpresentation.

Veckoplanering

Här är en (grov) översikt över kursen per vecka. Ämnenna spelar förmodligen ut över från ena vecka till den andra.

(Läsvecka / Att göra och diskutera på veckomöte)

  1. Bestäm projekt, preliminärt GUI, user stories, prototypning, samt workshop Maven/Git
  2. Domänmodell, mer prototypning, samt workshop JUnit/Travis
  3. Designmodell (torrköra User Stories m.h.a. design modell); körbar (ev. i form av tester bara)
  4. Design, MVC
  5. Mer design, servicess hantering av resurser
  6. Bygga på mer funktionalitet, tester, kvalitetsverktyg, dokumentation
  7. Gör kollegial granskning och fortsätter med 6
  8. Samma som 6
  9. Redovisning

Lärandemål

Efter fullgjord kurs skall studenten besitta följande kunskaper, färdigheter och förmågor:

Kunskap och förståelse

  • Redogöra för arbetsmetodik i tekniska utvecklingsprojekt, speciellt mjukvaruprojekt.
  • Beskriva alla faser i ett utvecklingsarbete: problemidentifiering, problemformulering, användaranalys, specifikation, design, implementation, testning, utvärdering, etc.
  • Beskriva grundläggande koncept inom mjukvaruutveckling, t.ex. krav och utvecklingsprocess.

Färdigheter och förmågor

  • Genomföra ett mindre objektorienterat mjukvaruprojekt i grupp enligt fastställd utvecklingsprocess och tidsplan.
  • Dokumentera projektarbetet i form av en grundläggande kravspecifikation och ett enklare designdokument.
  • Tillämpa färdigheter från tidigare programmeringskurser, så som design-principer och -mönster, i en projektliknande miljö.
  • Använda moderna hjälpmedel för programutveckling t.ex. testramverk, ‘build automation’, och versionshanteringssystem.

Värderingsförmåga och förhållningssätt

  • Reflektera över god objektorienterad design och implementation i projektet.

Links

Course summary:

Date Details Due