Ensimag Rubrique Formation 2022

Introduction aux applications réparties - WMMFMB11

  • 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.

Contact Patrick REIGNIER

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 des connaissances

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

Informations complémentaires

Cursus ingénieur->Filière IF->Semestre 9

Bibliographie

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.