DM861: Concurrency Theory

Det Naturvidenskabelige Studienævn

Undervisningssprog: På dansk eller engelsk afhængigt af underviser, men engelsk ved internationale studerende
EKA: N340005112, N340005102
Censur: Intern prøve, en bedømmer
Bedømmelse: Bestået/Ikke bestået
Udbudssteder: Odense
Udbudsterminer: Efterår
Niveau: Kandidat

STADS ID (UVA): N340005101
ECTS-point: 10

Godkendelsesdato: 25-04-2019


Varighed: 1 semester

Version: Arkiv

Kommentar

15019801 (tidligere UVA) er identisk med denne kursusbeskrivelse. 


Indgangskrav

Igen

Faglige forudsætninger

Studerende, der følger kurset, forventes at: Have et indgående kendskab til stoffet fra DM519 Concurrent Programming.

Formål

Multi-core processorer, cloud computing, og web services gør
”concurrent” systemer udbredt. At designe og programmere disse
systemer korrekt er udfordrende. Det kræver at man kan forudsige,
hvordan flere programmer, som udføres selvstændigt, vil interagere.
Dette kursus har til formål at præsentere og undersøge modeller, ræsonnementteknikker og abstrakte programmeringsdiscipliner for
concurrent systemer. Disse værktøjer giver mulighed for at omsætte
konkrete krav og design i præcise matematiske definitioner, som kan
bruges til at bevise, at de ønskede egenskaber leveres (f.eks deadlockfreedom
eller sikker brug af asynkrone kanaler).

Mange af de modeller omfattet i kurset er grundlaget for nye
programmeringssprog og designværktøjer, såsom BPMN, Go og Jolie.

I forhold til uddannelsens kompetenceprofil har kurset eksplicit fokus
på at:
  • Give kompetence til at: planlægge og udføre videnskabelige projekter på højt fagligt niveau herunder styre arbejds- og udviklingssituationer, der er komplekse, uforudsigelige og forudsætter nye løsningsmodeller.
  • Give færdigheder i at: beskrive, analysere og løse avancerede datalogiske problemstillinger ved hjælp af de lærte modeller; udvikle nye varianter af de lærte metoder, hvor det konkrete problem kræver det.
  • Give viden om: et udvalg af specialiserede modeller og metoder udviklet inden for datalogi baseret på højeste internationale forskning, herunder emner fra fagets forskningsfront; at kunne forstå og på et videnskabeligt grundlag reflektere over det datalogiske fagområdes viden samt kunne identificere videnskabelige problemstillinger.

Målbeskrivelse

For at opnå kursets formål er det læringsmålet for kurset, at den
studerende demonstrerer evnen til at:
  • repræsentere reele concurrent systemer i de abstrakte modeller
  • dækket i kurset;
  • identificere og formalisere typiske nyttige egenskaber af
  • concurrent systemer, ligesom deadlock-freedom og
  • kommunikation sikkerhed;
  • bevis egenskaber af concurrent systemer;
  • bevis generelle egenskaber af formelle modeller for concurrency.

Indhold

Kurset indeholder følgende faglige hovedområder:
  • Procesmodeller for concurrency, herunder: CCS, pi-calculus og
  • nogle af dens varianter.
  • High-level programmeringssprog til concurrent systemer.
  • Typesystemer til concurrency, herunder: typer for process
    calculi, koreografi-baserede typesystemer.
    Koreografier: sprog, typer, oversættelse og syntese.

Litteratur

Se BlackBoard for pensumlister og yderligere litteraturhenvisninger.

Eksamensbestemmelser

Forudsætningprøve a)

Tidsmæssig placering

Efterår

Udprøvninger

Opgaver i løbet af kurset

EKA

N340005112

Censur

Intern prøve, en bedømmer

Bedømmelse

Bestået/Ikke bestået

Identifikation

Fulde navn og SDU brugernavn

Sprog

Følger, som udgangspunkt, undervisningssprog

Hjælpemidler

Oplyses på kurset

ECTS-point

0

Uddybende information

 Forudsætningsprøven er en forudsætning for deltagelse i eksamenselement a) 

Eksamenslement a)

Tidsmæssig placering

Januar

Forudsætninger

Type Forudsætningsnavn Forudsætningsfag
Delprøve Forudsætningprøve a) N340005101, DM861: Concurrency Theory

Udprøvninger

Skriftlig Eksamen

EKA

N340005102

Censur

Intern prøve, en bedømmer

Bedømmelse

Bestået/Ikke bestået

Identifikation

Studiekort

Sprog

Følger, som udgangspunkt, undervisningssprog

Hjælpemidler

Ingen hjælpemidler tilladt. Nærmere beskrivelse af eksamensreglerne vil blive offentliggjort under 'Course Information' på kursets side i BlackBoard’

ECTS-point

10

Uddybende information

Eksamensformen ved reeksamen kan være en anden end eksamensformen ved den ordinære eksamen.

Vejledende antal undervisningstimer

60 timer per semester

Undervisningsform

For at sætte de studerende i stand til at nå læringsmålene for kurset tilrettelægges undervisningen således, at

Der er 60 forelæsningstimer, holdtimer etc. på et semester.

Disse undervisningsaktiviteter udmønter sig i en anslået vejledende fordeling af arbejdsindsatsen hos en gennemsnitsstuderende på følgende måde:

  • Introfase (forelæsning, holdtimer) - Antal timer: 30
  • Træningsfase: Antal timer: 30
  • Total: Antal timer: 60

Forelæsning vil fokusere på indførelsen af teoretiske modeller, programmeringssprog og relevante bevisteknikker. Træningstimer vil fokusere på at få praktisk erfaring med disse værktøjer.

Ansvarlig underviser

Navn E-mail Institut
Fabrizio Montesi fmontesi@imada.sdu.dk

Skemaoplysninger

Administrationsenhed

Institut for Matematik og Datalogi (datalogi)

Udbudssteder

Odense

Anbefalede studieforløb

Profil Uddannelse Semester Udbuds periode