Volumes horaires
- CM 10.5
- TP 7.5
Crédits ECTS
Crédits ECTS 2.0
Objectif(s)
Les systèmes répartis deviennent omniprésents dans la plupart des domaines d'activités. Avec ceci le développement
d'applications réparties prend aujourd'hui une place importante dans les systèmes informatiques. L'objectifs principal de ce
cours est de présenter les principes de construction et le fonctionnement des applications réparties. Nous étudierons également quelques éléments de la gestion des données distribuées sous-jacentes. Les étudiants acquerront un niveau de base dans quelques technologies majeures pour le développement des applications réparties.
Contenu(s)
À partir des caractéristiques et des besoins des applications réparties, ce cours présente les intergiciels (middleware) permettant la construction et le déploiement d'applications réparties. Ces intergiciels ont pour caractéristique commune de permettre à des applications - programmées dans des langages différents et s'exécutant sur des systèmes matériels et logiciels hétérogènes -, d'interagir et d'interopérer pour offrir un service commun.
Des differentes technologies permettent aujourd'hui de construire des systèmes reparties. Ce cours présentera des principes architecturaux (client-serveur, pair à pair) ainsi que les modèles de communication (RPC, MOM, Web Services) et technologies (CORBA, Java RMI, J2EE, .NET Remoting) les plus en vogue pour la réalisation d'applications réparties.
Un volet du cours sera consacré au traitement des données par les applications réparties. Il abordera la conception de bases de données réparties ainsi que les supports pour l'exécution cohérente de traitements distribués. Les supports pour transactions réparties seront étudiés ainsi que les principaux protocoles de cohérence de données dupliquées.
Dans la mesure du possible, les approches présentées seront illustrées par des expérimentations.
Prérequis
Connaissances de base dans les domaines des langages de programmation orientés objets C++ ou Java; concepts et techniques de base utilisés dans les systèmes d'exploitation centralisés et les réseaux.
CONTRÔLE CONTINU :
Type d'évaluation (ex : TP, assiduité, participation) :
SESSION NORMALE :
Type d'examen (écrit, oral, examen sur machine) :
Salle spécifique :
Durée :
Documents autorisés (ex : aucun, résumé feuille A4 manuscrite, dictionnaires, tous documents) :
Documents interdits (ex : livres, tous documents) :
Matériel (ex : calculatrices):
- matériel autorisé, préciser :
- matériel interdit, préciser :
Commentaires :
SESSION DE RATTRAPAGE :
Type d'examen (écrit, oral, examen sur machine) :
Salle spécifique :
Durée :
Documents autorisés (ex : aucun, résumé feuille A4 manuscrite, dictionnaires, tous documents) :
Documents interdits (ex : livres, tous documents) :
Matériel (ex : calculatrices):
- matériel autorisé, préciser :
- matériel interdit, préciser :
Commentaires :
Note de projet obtenue à la suite d'une soutenance
N1 = P
Distributed Systemes, Principles and Paradigms. Andrew S. Tanenbaum and Maarten van Steen, Prentice Hall, 2002.
Distributed Systems, Concept and Design. Georges Coulouris, Jean Dollimore ant Tim Kindberg, Addison Wesley, Third, Edition, 2001.
Engineering Distributed Object, Wolfgang Emmerich, John Wiley & Sons, 2000.