Languages and algorithms for distributed applications [ LSINF2345 ]
5.0 crédits ECTS
30.0 h + 15.0 h
<<< Page précédente
Van Roy Peter ;
of the course
- Mastering of at least one programming system (eg Mozart system through the course INGI1131)
- basics of concurrent programming such as provided by INGI1131
- Study of the theoretical basis of distributed systems, distributed algorithms, and languages for distributed programming. -
- Study of the specific issues related to distributed and mobile systems : geographic distribution, management of localized and distributed resources, fault tolerance, security, interoperability, and openness.
- Practical use of several representative and advanced systems and languages for programming collaborative, distributed, and mobile applications.
Students completing successfully this course will be able to
- define distributed systems and distributed algorithms with concepts they contain and the properties they give to programs.
- design collaborative applications on distributed systems using rigorous models to deal with concurrency and partial failure.
- implement collaborative applications on distributed systems using appropiate technics.
- use some advanced tools for the development of distributed and mobile applications.
Students will have developed skills and operational methodology. In particular, they have developed their ability to
- think with abstractions (reason correctly about a system that consists of several layers of abstractions, and define new abstractions to simplify a problem's solution).
- Dispensatory test 25% (around week 7)
- Project 25%
- Final exam 50% (or 75% if redoing test part)
- Lectures each week
- Practical sessions in the computer room, every two weeks, to solve simplified problems using concepts explain during the lectures
- Design and programming project to apply these concepts in a more complexe application
- Introduction to distributed systems
- Formal models of distributed systems
- Specification and implementation of distributed systems
- Failure detectors
- Reliable broadcast
- Causal broadcast
- Shared memory
- Applications of concensus
- Rachid Guerraoui and Luis Rodrigues. "Introduction to Reliable Distributed Programming". Springer-Verlag, 2006.
- Hagit Attiya and Jennifer Welch. "Distributed Computing: Fundamentals, Simulations, and Advanced Topics". McGraw-Hill, 1998.
- Peter Van Roy et Seif Haridi, Chapter 11 de Concepts, Techniques, and Models of Computer Programming, MIT Press, 2004.
- Peter Van Roy, Per Brand, Seif Haridi et Raphael Collet, A Lightweight Reliable Object Migration Protocol, Springer LNCS 1686, 1998.
|Cycle and year
> Deuxième année de master  en sciences informatiques à finalité spécialisée
> Première année de master  : ingénieur civil en informatique, à finalité spécialisée
> Master in Computer Sciences
> Première année de master  en sciences informatiques à finalité spécialisée
> Deuxième année de master  : ingénieur civil en informatique, à finalité spécialisée
|Faculty or entity