At bibringe en grundlæggende forståelse af teori og praksis indenfor konstruktion af distribuerede systemer.
Læringsmål:
En studerende, der fuldt ud har opfyldt kursets mål, vil kunne:
• Forstå hvordan arkitekturen af et distribueret system er med til at bestemme hvilke egenskaber systemet kan have,
• Beskrive vigtige karakteristika af distribuerede systemer og de væsentlige arkitekturmæssige kendetegn ved sådanne systemer,
• Beskrive egenskaber ved og anvendelserne for vigtige standardprotokoller, som benyttes i distribuerede systemer,
• Karakterisere forskellige klasser af distribuerede systemer,
• Karakterisere forskellige implementeringsparadigmaer for distribuerede systemer,
• Vælge en passende distribueret algoritme, der opfylder givne designkrav til et distribueret system,
• Vælge en passende implementeringsparadigme, der opfylder givne designkrav til et distribueret system,
• Udvikle et overordnet design af et distribueret system ud fra valgte distribuerede algoritmer og implementeringsparadigmer.
• Udvikle en delvis implementering af et distribueret system på basis af en uformel beskrivelse af dets funktion og formål.
Kursusindhold:
Fundamentale egenskaber ved distribuerede systemer: parallelisme, kommunikation og distribution af data og kontrol. Grundæggende arkitekturer af distribuerede systemer: centraliserede arkitekturer, fuldt distribuerede arkitekturer og hybrid arkitekturer. Design af distribuerede systemer. Service orienterede arkitekturer (SOA). Programmeringsparadigmer til implementering af distribuerede systemer: client/server, peer-to-peer (P2P), web-services, clusters, cloud og Grid-systemer.