Architecture, Patterns, et Intégration : systèmes embarqués et mobiles en Java et Android (1)

Code UE : NSY208

  • Cours
  • 6 crédits

Responsable(s)

Yann POLLET

Public et conditions d'accès

Auditeurs se destinant aux métiers de l'intégration des systèmes et désireux de maîtriser en particulier les technologies de la mobilité. Des connaissances préalables en génie logiciel, en conception et en programmation par objets sont requises pour suivre ce cours, avec connaissance d'au moins un langage à objet (Java, C#, ..).

Objectifs pédagogiques

Savoir concevoir et développer des systèmes intégrant des éléments embarqués et communicants, en utilisant les produits industriels ou grand public (téléphones mobiles, tablettes, ...) et les technologies logicielles actuelles (Java, C#, .NET, Android,...)

Compétences visées

Maîtriser l'architecture d'un système autonome ou basé sur un intergiciel (middleware). Savoir choisir les patrons de conception (design patterns) adaptés. Etre capable de réaliser la conception, l'intégration, le déploiement, et la mise en oeuvre de tels systèmes.

Contenu

Programmation Java avancée : concurrente, distributive  et dynamique.
La conception orientée domaine (Domain Driven Design)
Design Patterns: notion de motif (description, utilisation). Intégration des motifs de conception dans les systèmes embarqués. Patterns MVC , Inversion de Contrôle, Interceptor, ...
Programmation en langage Python
Modélisation des systèmes: le langage SysML (System Modeling Language).
Persistance et mapping objet-relationnel (ORM): principes de base, programmation de la persistance. L'interface JPA (Java Persistance API), Hibernate, patterns pour la persistance, DAO, ...
Architecture REST: principes et mise en oeuvre des services REST
Programmer avec le cloud : principes, SaaS, PaaS, IaaS. Concepts et programmation avec Amazon AWS (EC2, S3, EFS, ...).
Bases de données NoSQL, Big Data: motivations, typologie des approches, paradigmes clé-valeur, bases orientées document, orientées colonnes, ... Panorama des logiciels existants.
La programmation en Javascript et le langage HTML5
Les architectures à microservices. La conteneurisation avec Docker. L'approche DevOps
Etude de cas.
 

Modalité d'évaluation

Examen écrit

Bibliographie

  • Douglas C Schmidt, Michael Stal, Hans Rohnert, Frank Busc : Pattern-Oriented Software Architecture Volume 2: Patterns for Concurrent and Networked Objects.
  • Frank Buschmann, Kevlin Henney , Douglas C. Schmidt : Pattern Oriented Software Architecture Volume 5: On Patterns and Pattern Languages
  • Yann Pollet : Architectures, systèmes, intégration (Ellipses, reférence science)
  • Yann Pollet : Architectures logicielles réparties. Du client-serveur au cloud (Ellipses, reférence science)

Cette UE apparaît dans les diplômes et certificats suivants

Contact

EPN05 - Informatique
2 rue Conté 33.1.13A
75003 Paris
Tel :01 40 27 26 81
Safia Sider

Voir les dates et horaires, les lieux d'enseignement et les modes d'inscription sur les sites internet des centres régionaux qui proposent cette formation

UE

    • Paris
      • Centre Cnam Paris
        • 2019-2020 1er semestre : FOAD 100%
        • 2020-2021 1er semestre : FOAD 100%
        • 2021-2022 1er semestre : FOAD 100%
        Comment est organisée cette formation ?

        Organisation de la modalité FOAD 100%

        Planning

        1er semestre

        • Date de démarrage : 01/10/2019
        • Date limite d'inscription : 02/11/2019
        • Regroupements facultatifs : 3 pour une totalité de 9 heures
        • Date de 1ère session d'examen : la date sera publiée sur le site du centre ou l'ENF
        • Date de 2ème session d'examen : la date sera publiée sur le site du centre ou l'ENF

        Accompagnement

        • Plateforme Moodle
        • Chat
        • Forum
        • Classe virtuelle
        • Séance de démarrage

        Ressources mises à disposition de l'auditeur

        • Documents de cours
        • Enregistrement de cours
        • Documents d'exercices, études de cas activités
        • Bibliographie et webographie

        Modalités de validation

        • Examen sur table
        • 12 devoirs à rendre
        :
    • Liban
      • Liban
        • 2019-2020 1er semestre : Présentiel soir ou samedi
        • 2020-2021 1er semestre : Présentiel soir ou samedi
        • 2021-2022 1er semestre : Présentiel soir ou samedi