IT-Universitetet i København
 
  Tilbage Kursusoversigt
Kursusbeskrivelse
Kursusnavn (dansk):Modelbaseret design af distribuerede og mobile systemer 
Kursusnavn (engelsk):Model-based Design of Distributed and Mobile Systems 
Semester:Forår 2004 
Udbydes under:cand.it., internet- og softwareteknologi (int) 
Omfang i ECTS:7,50 
Kursussprog:Engelsk 
Kursushjemmeside:https://learnit.itu.dk 
Min. antal deltagere:
Forventet antal deltagere:20 
Maks. antal deltagere:120 
Formelle forudsætninger:You are supposed to be able to develop object oriented programs in Java. The prerequisites may for instance be obtained through the introductory programming course at ITU, followed by a four week programming project or the Object oriented programming course. Knowledge of the architecture of distributed systems, as e.g. obtained through the course in distributed systems at ITU, is an advantage, but not a requirement. 
Læringsmål:The aim of the course is to give a conceptual basis for the understanding of concurrency and mobility in distributed systems, and to make the participants able to use this conceptual basis for implementation of safe concurrent systems and design of distributed and mobile systems, in particular location based systems.

Having followed the course you will:

  • master basic concepts for concurrency: processes, synchronization, and communication,

  • master basic concepts and dichotomies in distributivity and mobility: flat vs. hierarcical namespaces, weak vs. strong mobility, implicit vs. explicit mobility, static vs. dynamic binding, location based services

  • be able to apply models for concurrency, distributivity and mobility: process expressions and transitions systems,

  • master verification concepts, e.g. deadlocks, safety and liveness properties, invariants, and model checking

  • be able to argue for synchronization and communication mechanisms: semaphores, monitors, synchronous and asynchronous communication and how to use these to solve clasical concurrency problems,

  • able to use the conceptual basis for implementation of safe concurrent threads in Java and for design of distributed and mobile systems.

  • possess knowledge of software architectures for concurrent, distributed and mobile systems, in particular location based services exemplified by the WLAN position server at ITU

 
Fagligt indhold:The course covers the following topics:


  • Models for concurrency, distributivity and mobility: State-Transition systems, Message Sequence Charts, process expressions and calculi, abstraction

  • concepts and dichotomies in distributivity and mobility: flat vs. hierarcical namespaces, weak (applet) vs. strong (agent) mobility, implicit vs. explicit mobility, static vs. dynamic binding, location based services

  • Threads and RMI in Java

  • Shared objects and mutual exclusion

  • Monitors, invariants, semaphores, bounded buffers

  • Deadlocks, analysis and examples

  • Safety and Liveness properties, analysis and examples

  • Model-based design: models and implementation

  • Message passing: synchronous/asynchronous, rendezvous

  • Location based services


The course will put emphasis on modeling of concurrent, distributed and mobile systems as a basis for design and implementation. There will be practical exercises in Java Threads and RMI, and a project using the WLAN location server at the site of the new buildings of ITU. 
Læringsaktiviteter:

3 hours of Lectures, exercise classes, small mandatory exercises. 

Eksamensform og -beskrivelse:X. experimental examination form (7-scale; external exam), Bestået/ikke bestået, Intern censur

There will be 4 mandatory assignments as a requirement for being allowed to hand in the FINAL report.


The final report is to be handed in at the Examination Office. The deadline is noted below.  

Litteratur udover forskningsartikler:Lecture notes and selected research papers.