Domænespecifikke sprog

Om kurset

Kurset giver dig et mindset til at arbejde med software på en abstrakt og semiautomatiseret måde. På kurset lærer du at bruge modelleringssprog og modeller som artefakter, der bliver designet, manipuleret, transformeret og oversat til kode på automatisteret vis.

Kurset vil fokusere på emner som:

  • Domænemodellering, feature modellering, metamodellering og design af domænespecifikke sprog
  • Konkret syntaks og redigeringsværktøjer til konkret syntaks
  • Modellering af arkitektur, arkitektur for produktlinjer, modellering af variabilitet i produktlinjer
  • Strukturelle begrænsninger
  • Modeltransformation og kodegenerering
  • Implementering af domænespecifikke sprog ved brug af generiske værktøjer

Al programmering foregår i Scala for at facilitere diskussion, vejledning og deling af læringsprocesser, men ideerne kan realiseres i mange programmeringssprog.

Efter kurset vil du blandt andet være i stand til at:

  • Skabe objektorienterede domænemodeller og metamodeller
  • Designe og implementere interne og eksterne domænespecifikke sprog
  • Udføre analyse af et domæne og udarbejde en metamodel udtrykt som et klassediagram
  • Anvende objektdiagrammer til at præsentere tidlige eksempler på modeller og bruge repræsentationer af abstrakt syntaks til at manipulere modellerne programmatisk

  • Designe og forbedre konkret syntaks til modelleringssprog
  • Implementere deklarative begrænsninger og typeregler for domænespecifikke sprog
  • Implementere deklarative og imperative transformationer af modeller, kodegeneratorer og oversættere i forskellige scenarier som fx fra tekst til modeller, fra modeller til tekst, inklusiv XML, database osv.
  • Implementere modelleringssprog effektivt ved brug af modeldrevede udviklingsværktøjer (Xtext framework)
  • Teste implementering af modelleringssprog
  • Karakterisere, klassificere og sammenligne programmerings- og modelleringssprog på baggrund af en række egenskaber

Læs mere om forudsætning for at tage kurset, kursets læringsmål m.m.

Undervisning
Undervisningen forløber som ugentlig tirsdag kl. 16-20 fra uge 35-50.

Undervisningen er en kombination af forskellige læringsaktiviteter, hvor deltagerne både bliver undervist ved forelæsning og laver øvelser og aktiviteter i grupper. Der skal også udarbejdes et projekt i løbet af kurset, som udgør 40 procent af arbejdsbyrden. Projektet skrives i gruppe af fire personer.

Eksamen

Eksaminationen er mundtlig og sker med baggrund i et projekt.

Kurset udbydes på masterniveau.
 

DIG

Kurset er for dig, der allerede er en sikker softwareudvikler, men som har brug for teknikkerne til at organisere store eksisterende mængder kode i biblioteker, frameworks og platforme.

Kurset forudsætter, at du er er velbevandret i paradigmer for programmeringssprog og koncepter, og at du er i stand til selv at arbejde med komplekse udviklingsprojekter. Derudover skal du kunne programmere i Scala og udvikle i Eclipse.

Underviser: Andrzej Wasowski

CV

Ahmad Ghazawneh har bred erfaring fra en række virksomheder, som han både har været ansat i og selv har grundlagt.

- CEO og grundlægger, Innovation Villa AB
- Grundlægger, Nordic Startup Day
- CEO og grundlægger, Citix Software og Media
- It-projektleder, MSA Inc.
- Systemanalytiker, Paltel
- CEO og grundlægger, Paldens Technologies

Ahmad Ghazawneh kan kontaktes på agha@itu.dk. Læs mere om Ahmad Ghazawneh og hans arbejde her: www.ghazawneh.com.

Andrzej Wasowski er lektor på IT-Universitetet og har tidligere været ansat på Aalborg Universitet. Han har også været gæsteprofessor på INRIA Rennes og University of Waterloo i Ontario.

Andrzej Wasowski interesserer sig for det semantiske fundament og værktøjer til understøttelse af modeldrevet udvikling - særlig inden for software product lines og component-based systems. Mange af disse projekter involvere kommercielle eller open source partnere inden for området af safety-critical embedded systems. 

Andrzej Wasowski har en ph.d fra IT-Universitetet (2005) og en MSC Eng fra Warsaw University of Technology i Polen (2000). Han har desuden modtaget Det Frie Forskningsråds Sapere Aude pris som forskningsleder (2012).

Praktisk

Du kan søge om optagelse frem til ansøgningsfrist. Ønsker du optagelse på et kursus efter ansøgningsfrist eller kursusstart, skal du kontakte ITU Efteruddannelse. Vær også opmærksom på, at der kan være en stor læsebyrde inden første kursusgang.

Der er begrænset antal pladser på enkeltfagskurser, og vi anbefaler derfor, at du søger hurtigt muligt. Ansøgere optages efter først-til-mølle-princippet.

Ansøgning

Du skal ansøge om optagelse på enkeltfagskurser via ansøgningsportalen. Læs mere om, hvordan du søger her.

Deltagerbetaling

Der er deltagerbetaling på alle enkeltfagskurser. Deltagerbetalingen skal være betalt, før du kan starte på kurset og deltage i undervisning og eksamen. Fristen for rettidig betaling fremgår af fakturaen. Nogle får deres kurser helt eller delvist betalt af deres arbejdsgiver, mens andre betaler selv.

Pris pr. kursus á 7,5 ECTS        10.625 kr. 
Pris pr. kursus á 7,5 ECTS (masterkursus m. forplejning)         12.300 kr.
Pris pr. kursus á 10 ECTS         14.170 kr.
Pris pr. kursus á 15 ECTS         21.250 kr.

Ovenstående priser er for studerende fra EU/EØS-lande. Der gælder andre priser for studerende fra lande uden for EU/EØS. Se priserne her.

Hvad dækker betalingen?
Betalingen dækker undervisning på det kursus, du er optaget på, samt to eksamensforsøg – en obligatorisk eksamen og eventuel reeksamen. 

Hvis du har brugt begge eksamensforsøg
Hvis du har betalt for et enkeltfag, men ikke bestået det, skal du gentilmelde dig kurset og betale for kurset en gang til. Du kan ikke deltage i undervisningen og gå til eksamen igen uden at betale igen.

Opkræves forud for hvert semester 
Deltagerbetalingen bliver opkrævet forud for semesteret og er en forudsætning for, at du kan følge undervisningen og gå til eksamen. Hvis din arbejdsgiver betaler dit kursus, sender vi en faktura med frist for rettidig betaling direkte til din arbejdsgivers E-boks. Husk at give besked om dette i ansøgningsskemaet ved at oplyse CVR-nummer. Hvis din arbejdsgiver er en offentlig institution, skal du også huske at angive EAN-nummer, hvortil fakturaen vil blive sendt som et e-bilag. Hvis du selv betaler for dit kursus, sender vi fakturaen direkte til din E-boks via dit CPR-nummer. 

Hvis du søger om optagelse kort tid inden kursusstart, må du forvente en meget kort betalingsfrist. Den korte frist sikrer også, at du kan gå til første undervisningsgang samt få adgang til de IT-systemer, du skal bruge i forbindelse med dit kursus.

Refundering af deltagerbetaling og afmelding
Afmelding af kursus og refundering af deltagerbetaling inden kursusstart skal altid ske ved at sende en e-mail til ITU Efteruddannelse på efteruddannelse@itu.dk med angivelse af navn, fødselsdato og kursus. Refundering af deltagerbetaling efter kursusstart kan kun ske ved ganske særlige tilfælde såsom sygdom, langvarig sygdom, udstationering og lignende usædvanlige forhold. Henvendelse om refundering af deltagerbetaling efter kursusstart sendes ligeledes til ITU Efteruddannelse vedlagt dokumentation.

SVU - Statens Voksenuddannelsesstøtte
Enkeltfagsstuderende kan i særlige tilfælde få tildelt SVU, dvs. Statens Voksenuddannelsesstøtte. Det er dit eget ansvar at undersøge reglerne og ansøge om SVU. Kontakt www.svu.dk for uddybende information.

Studiestart

Vi har studiestart på enkeltfagskurser både forår, sommer (Summer University) og efterår:

- Ultimo januar (eksamen i juni)
- Primo/medio juli (eksamen i august)
- Ultimo august (eksamen i januar)

Nogle kurser på masterniveau kan have en senere opstart i foråret eller efteråret og forløbe fra fx april til juni eller oktober til december. Er du blevet optaget på et enkeltfag, vil du i umiddelbar forlængelse heraf modtage et velkomstbrev med flere informationer, der klæder dig på til at starte dine studier på IT-Universitetet.

Forbehold

IT-Universitetet forbeholder sig ret til at justere eller aflyse planlagte kurser, kvalifikationsforløb eller masteruddannelser, hvis tilslutningen ikke er stor nok eller andre organisatoriske forhold gør sig gældende.

Kontakt os, hvis du har brug for hjælp til at sammensætte et efteruddannelsesforløb, der passer til dine særlige ønsker og behov. Du kan også få indblik i de forskellige uddannelsers faglige indhold og regler på området.

ITU Efteruddannelse
Rued Langgaards Vej 7
DK-2300 København S

Tlf: +45 7218 5450

Email: efteruddannelse@itu.dk