Architectures et technologies pour l'intégration des systèmes
6 crédits Ghislain ROCHETEAU EPN05 - Informatique Unité d'enseignement de type cours
Publié Du 01-09-2011 au 31-08-9999
Auditeurs préparant le diplôme d'ingénieur informatique, option AISL (Architecture Intégration Systèmes et Logiciels), ingénieurs en activité désireux de se former à l'ingénierie et à l'intégration des Systèmes complexes à dominante logicielle. Ce cours avancé suppose acquises les connaissances de base relatives aux technologies de base client-serveur (cours NSY107 ou équivalent).
Ce cours forme des chefs de projet MOE et MOA, des architectes logiciel et système, ainsi que des ingénieurs en charge de la spécification, de la conception, de l'intégration, ou encore de l'exploitation ou la maintenance de systèmes informatisés à dominante logicielle.
Le cours porte sur la démarche permettant bien appréhender et maîtriser les différents aspects d'un projet d'intégration de système, depuis la rédaction du cahier des charges jusqu'à l'intégration des composants et la validation du système, en passant par l'analyse et la définition de son architecture.
Le cours est structuré en deux Unités d'Enseignement complémentaires positionnées sur deux semestres. La présente unité NSY205 aborde ici les aspects liés aux architectures logicielles et aux technologies de l'intégration, l'unité NSY206, qui en constitue la suite logique, abordant ensuite plus spécifiquement les aspects méthodologiques.
A l'issue de ce cours, l'auditeur doit être capable:
- de définir une architecture de système adaptée à des exigences données
- d'identifier les technologies logicielles à mettre en oeuvre
- de justifier les choix faits en relation avec les exigences des utilisateurs.
L'unité NSY205 apparaît dans 3 cursus.
Les notions d'architectures système et logicielle: composants, connecteurs, styles et patterns architecturaux. Modèles et cadres architecturaux. Qualités d'une architecture. Services de base (nommage, transactions, sécurité, ...).
Architectures orientées données, ORM (Object Relational Mapping): principes, difficultés. Programmation avec l'interface JPA (Java Persistence API). Les DAO (Data Access Object), principes et mise en oeuvre.
Architectures à base de composants métier: principes de l'approche. Etude de Java EE et des EJB3.
Intergiciels orientés message (MOM): structure interne d'un MOM. Programmation avec JMS (Java Message Service).
Les Services Web: standards SOAP, WSDL, et UDDI. Le modèle étendu des standards. L'orchestration de services. Les implémentations existantes.
Les services REST (Representational State Transfer)
Le langage BPMN 2.0 (Business Process Model and Notation). Notations graphiques, types de diagrammes, outils.
Les architectures Web: Javascript et AngularJS. L'approche AJAX.
L'architecture SOA (Service Oriented Architecture). Principes, organisation et types de services. Exemple de mise en oeuvre à travers un cas d'étude.
Les bases de Données NoSQL: objectifs. Approches ACID et BASE. Difficultés et mécanismes internes. Les bases de données clé-valeur, orientées document, orientées colonne, orientées graphe. Etude de quelques produits (MongoDB, CouchDB, Cassandra, ....)
Le cloud computing: approche, intérêt, modèles de déploiement. IaaS, PaaS et SaaS. Exemple d'Amazon Web Services (AWS), machines virtuelles, programmation avec EC2, S3, EBS, ..... Evaluation d'une offre. Transition vers le cloud.
La conteneurisation: principes et mise en oeuvre de conteneurs. Exemples de Docker et Kubernetes.
Les architectures à micro-services. Principes. Passerelles d'API. Protocole de communication. Gestion de la cohérence des données.
Examen écrit
Titre | Auteur(s) |
---|---|
Architectures, systèmes, intégration (Ellipses, reférences sciences) | Yann Pollet |
Urbanisation et BPM (Dunod) | Yves Caseau |
EJB3) | F. Chuong, O. Corgeron, C. Joui, J.B. Renaux, M. VIalette |
Le métier d'intégration des systèmes (Hermès) | J.P Meinadier |
Engineering. Coping with complexity (Prentice Hall) | R. Stevens, P. Brook, K. Jackson, S. Arnold |
SOA. Le guide de larchitecte (Dunod) | X. Fournier-Morel, P. Grojean, G. Plouin, C. Rognon |
Architectures logicielles réparties. Du client-seveur au cloud (Ellipses, reférences sciences) | Yann Pollet |