DM531: Softwarearkitektur (5 ECTS)

STADS: 15004901

Niveau
Bachelorkursus

Undervisningsperiode
Kurset er placeret i efterårssemesteret.
2. kvartal.

Ansvarlige undervisere
Email: lobo@mmmi.sdu.dk

Skemaoplysninger
Hold Type Dag Tidsrum Lokale Uger Kommentar
Fælles I Tirsdag 10-12 U28 45-51
Fælles I Fredag 10-12 U28 45-51
S1 TE Onsdag 14-16 U26 45-51
Vis hele skemaet
Vis personligt skema for dette kursus.

Kommentar:
Ubegrænset deltagerantal. 2. kvartal.

Indgangskrav:
Ingen

Faglige forudsætninger:
Stoffet fra kurset DM529 Iterativ systemudvikling skal være kendt.

Kursusintroduktion
Kursets målsætning er at give teoretisk indsigt i og praktisk erfaring med design og konstruktion af software, herunder betydningen af at sætte arkitekturdesignet i centrum i softwareprocessen og at arbejde målrettet og målbart med softwarekvaliteti

Forventet læringsudbytte
Ved kursets afslutning forventes den studerende at kunne:
Redegøre for systemudviklingsværktøjer, herunder CASE-værktøjer • Beskrive betydning af og formål med softwarearkitekturdesign i Unified Process (UP)
• Beskrive softwarearkitekturdesign som et artefakt, herunder
o Forklare hvad et softwarearkitekturdesign er og beskrive hvilke elementer der indgår i det
o Beskrive forskellige former for softwarearkitekturmønstre (systemopdeling)
o Forklare den lagdelte softwarearkitektur og de principper den lagdelte arkitektur bygger på
o Forklare mønstre for klient-server arkitekturer og de kræfter der har betydning for valget mellem dem
o Anvende UML til softwarearkitekturdesign, herunder views, pakkediagrammer, klassediagrammer, interaktionsdiagrammer og fordelingsdiagrammer.
• Beskrive softwarearkitekturdesign som en aktivitet, herunder
o Beskrive de delaktiviteter der indgår i softwarearkitekturdesign og de mekanismer de adresserer
o Forklare designmål og opstilling heraf på grundlag af krav
• Beskrive hvordan der kan opnås et forståeligt, vedligeholdelsesvenligt og skalerbart design, herunder
o Beskrive hvad framework og designmønstre er o Forklare udvalgte designmønstre
o Sammenligne forskellige designløsninger
• Beskrive hvilke elementer der indgår i softwarekvalitet, især kvalitetskontrol, herunder
o Forklare kontrolaktiviteterne test og review og beskrive hvordan de indgår i softwareudviklingsprocessen
o Tilrettelægge og gennemføre review
o Udarbejde testcases og gennemføre test på grundlag heraf
o Beskrive konfigurationsstyring, refaktorering, fejlhåndtering ol.
• Frembringe softwarearkitekturprototype i objektorienteret sprog på grundlag af softwarearkitekturdesign og detaljeret designet.

Emneoversigt
Design af softwarearkitektur: Systemopdeling, designaktiviteter og designmål; formålet med softwarearkitektur; udviklingsværktøjer; Softwaregenbrug: Framework og designmønstre; Softwarekvalitet.

Litteratur
    Meddeles ved kursets start.


Pensum
Se pensumbeskrivelse.

Kursets hjemmeside
Dette kursus benytter e-learn (blackboard).

Forudsætningsprøver
Ingen

Eksamen- og censurform:
(a) Projektopgave der bedømmes med B/IB og intern censur ved underviser. (15004912) Projektopgaven skal være bestået for at man kan gå til den mundtlige eksamen.
(b) Mundtlig eksamen der bedømmes med karakter efter 7-skalaen og ekstern censur. (15004902)

Reeksamen efter 4. kvartal.

Vejledende timetal
På naturvidenskab er undervisningen tilrettelagt efter trefasemodellen dvs. intro, trænings- og studiefasen.

Forelæsninger: 28 timer
Eksaminatorietimer: 14 timer
Derudover indgår der projektarbejde.
Aktiviteter i studiefasen

Sprog
Dette kursus undervises på dansk eller engelsk, afhængigt af underviseren.

Kursustilmelding
Se tilmeldingsfrister.

Pris for åben uddannelse
Se priser for enkeltkurser.

Dette er den nyeste version af en kursusbeskrivelse, som trådte i kraft den 1. sep 2009.