Overordnede kursusmål
Kurset har til formål at give de studerende kompetencer inden for
struktureret og objektorienteret softwareudvikling i en
samarbejdsbaseret projektkontekst. Kurset lægger vægt på design og
implementering af modulære softwareløsninger, principper for
strukturering og kvalitetsforbedring af software, brugercentreret
design og evaluering samt anvendelse af professionelle
udviklingspraksisser i teambaserede projekter.
Læringsmål
En studerende, der fuldt ud har opfyldt kursets mål, vil kunne:
- Forklare og anvende grundlæggende objektorienterede begreber,
herunder indkapsling, arv og polymorfi, i design og implementering
af softwareløsninger.
- Designe og fortolke UML-klassediagrammer samt relatere disse
til konkrete programimplementeringer.
- Strukturere og modularisere softwaresystemer ved at tildele
klare ansvarsområder og adskille concerns.
- Refaktorere og forbedre eksisterende kode med henblik på
læsbarhed, vedligeholdelighed og strukturel kvalitet.
- Udvikle interaktive applikationer ved anvendelse af
strukturerede og objektorienterede tilgange.
- Anvende grundlæggende teststrategier til at vurdere korrekthed
og robusthed af objektorienterede softwarekomponenter.
- Anvende principper for brugercentreret design og gennemføre
grundlæggende brugbarhedsevalueringer af interaktive systemer.
- Samarbejde effektivt i teambaserede softwareprojekter ved
anvendelse af professionelle udviklingspraksisser og
versionsstyringsarbejdsgange.
- Reflektere over forskellige programmeringssprogs og
teknologiers rolle i bredere softwareøkosystemer.
- Formidle og begrunde designbeslutninger og tekniske løsninger i
en professionel sammenhæng.
Kursusindhold
Objektorienteret udvikling:
- Grundlæggende objektorienterede begreber, herunder indkapsling,
arv og polymorfi.
- Klassedesign, ansvarsfordeling og modulær strukturering af
software.
- UML-klassediagrammer og deres relation til programimplementering.
- Principper for adskillelse af ansvar (separation of concerns) og
grundlæggende arkitektonisk strukturering.
- Refaktoreringsteknikker og forbedring af kodekvalitet og
vedligeholdelighed.
Softwaresystemer og samarbejde:
- Iterativ udvikling i samarbejdsbaserede projektforløb.
- Professionelle udviklingspraksisser, herunder versionsstyring og
strukturerede arbejdsgange.
- Teststrategier for struktureret og objektorienteret software.
- Dokumentation og begrundelse af designbeslutninger.
Brugercentreret design og evaluering:
- Principper for brugercentreret design.
- Grundlæggende principper for brugbarhed og evalueringsmetoder.
- Integration af evalueringsresultater i iterative
udviklingsprocesser.
Softwareøkosystemer:
- Perspektiver på forskellige programmeringssprogs og teknologiers
rolle i softwaresystemer.
- Grundlæggende begreber inden for datahåndtering og integration
mellem systemkomponenter.
Bemærkninger
Sektion for Energiteknologi og computer science
Sundhedsteknologi: 2. semester
Kurset bygger videre på de grundlæggende IT kundskaber den
studerende har tilegnet sig på kursus 62420.
Sidst opdateret
04. maj, 2026