2008/2009

02344 OOAD og databaser

Engelsk titel: 


Object-oriented Analysis and Design and Databases

Sprog:


Point (ECTS )

  10

Kursustype:   

Diplomkursus
Kurset udbydes under åben uddannelse


Skemaplacering:

F5A og Juni
Ved overtegning har diplomstuderende fortrinsret.
 

Undervisningsform:

Klasseundervisning og laboratoriearbejde

Kursets varighed:

13-uger

Eksamensplacering:

Aftales med læreren  Ingen eksamen i den ordinære eksamensperiode

Evalueringsform:

Hjælpemidler:

Bedømmelsesform:

Faglige forudsætninger:


Deltagerbegrænsning:

Maksimum:  100
 

Overordnede kursusmål:

Kursets mål er at sætte den studerende i stand til at bruge objektorienterede teknikker i alle trin af løsningen af et software problem, dvs. fra analyse af problemstillingen, opstilling af modeller, system design og objekt design til den endelige programmering i et objektorienteret sprog. Endvidere at sætte den studerende i stand til at vælge hensigtsmæssige persistente lagringsmetoder, herunder implementering af persistens vha. databaser med tilhørende valg og brug af DBMS system.


Læringsmål:

En studerende, der fuldt ud har opfyldt kursets mål, vil kunne:
  • Udvælge proces, dokumentation og roller til en given udviklingsopgave.
  • Analysere funktionelle og non-funktionelle forretningskrav og kategorisere disse i use cases og FURPS+. (Functionality, Usability, Reliability, Performance, Supportability)
  • Anvende UML som visuelt modelleringsværktøj i en udviklingsproces.
  • Identificere og forklare softwarearkitektur, herunder SOA, OOAD og designmønstre
  • Fastsætte testmetoder i udviklingsprocessen og udføre test cases på use case niveau.
  • Udarbejde en begrebsmæssig datamodel for et system som en integreret del af et samlet udviklingsforløb.
  • Gennemføre logisk datamodellering ud fra den begrebsmæssige datamodel og foretage normalisering til 3NF.
  • Anvende avanceret SQL til implementering af forskellige former for databasetilgang.
  • Gennemføre udvalgte aktiviteter ved fysisk databasedesign (eks: query-optimering vha. index, administration af tilgangsrettigheder samt design og implementering af transaktionsstyring)
  • Designe og implementere persistens mellem et objektorienteret program og en relationsdatabase.
  • Gengive væsentlige principper ved alternative databasemodeller: Objektdatabaser samt Datawarehouses med multidimensionelle databaser og OLAP.
  • Gengive væsentlige egenskaber for nogle udvalgte kommercielle databasesystemer

Kursusindhold:

• UML syntax og semantik: use case diagram, domænemodel, systemsekvensdiagrammer, klassediagrammer, komponentdiagrammer, etc.
• Use case beskrivelser som udgangspunkt for use case drevet udvikling. Unified process, samt forskellige metoder derunder, SCRUM og XP. Iterativ og inkrementel udvikling.
• Objekt orienteret analyse og design
• Softwarearkitektur, herunder SOA og designmønstre
• Modellering af forretningskrav
• Begrebsmæssig databasedesign
o ER-modellering med ER- og EER diagrammer
o Strukturelle constraints
o Nøgler, domæner og andre constraints
• Logisk databasedesign
o Mapping fra ER-model til relationel model
o Normalisering af relationel model til 3NF/BCNF
• Fysisk databasedesign
o Optimering af forespørgsler vha. valg af index
o Administrering af tilgangsrettigheder
o Design og implementering af transaktionsstyring
• Designe og implementere tilgang til en relationsdatabase fra et objektorienteret program
o Metoder til objektpersistens
• SQL
o Avancerede SQL forespørgsler
o Views
o Triggers
o Stored Procedures
o Index
• Orientering om alternative databasemodeller:
o Objektdatabaser
o Datawarehouses med multidimensionelle databaser og OLAP
• Orientering om udvalgte kommercielle databasesystemer


Bemærkninger:

Faget består af en kombineret teori/øvelsesperiode og en projektperiode.
Deltagerne inddeles i arbejdsgrupper, der skal samarbejde om øvelser/projekt.


Kursusansvarlig:

Mads Nyborg, 322, 023, (+45) 4525 5280, mn@imm.dtu.dk  

Institut:

02 Institut for Informatik og Matematisk Modellering

Kursushjemmeside:

http://www.imm.dtu.dk/courses/02344

Nøgleord:

Eksempler på:, Objektorienteret analyse, Objektorienteret design, UML, Databaser
Sidst opdateret: 9. juni, 2008