La WOA synthétise des concepts et des techniques multiples : SOA, cloud, micro-services, API et Web. En s’appuyant sur de nombreuses démonstrations, ce cours présente tous les aspects de cette famille d’architectures jusqu’aux problèmes de sécurité, de monitoring, d’automatisation de l’intégration et du déploiement.

Description

Durée : 28 heures
Modalités techniques d’évaluation : Évaluation des connaissances par QCM, évaluation des compétences au travers de travaux pratiques et de cas d’études. Contrôle de l’acquisition des connaissances et des compétences pendant la formation par le formateur.
Moyens pédagogiques : Apports théoriques réalisés en classe et complétés par de nombreux travaux pratiques permettent aux participants de disposer d’une expérience concrète. A l’issue des sessions magistrales, réalisation de cas d’études tutorés.

Objectifs pédagogiques

À l’issue de la formation, le participant sera en mesure de :

  • Comprendre l’architecture des services Web
  • Sécuriser l’accès aux données
  • Mettre en place une stratégie d’API
  • Maîtriser les performances et la gestion du traffic
  • Maîtriser les normes Web du SI

Méthodes pédagogiques

Les concepts seront illustrés par des démonstrations techniques et visuelles.
PROGRAMME DE FORMATION

Web Oriented Architecture

  • Architectures n-tiers, applications et composants distribués.
  • Entreprise, SOA, WOA, ROA. Introduction au SI Web.
  • Alignement du Système d’Information : DevOps, Cloud, IaaS, PaaS, BaaS…
  • Industrialisation extrême des pratiques IT. Théorème de Brewer (CAP).
  • Ouverture, structuration et orchestration. Microservices applicatifs.
  • Technologies des Web Services (REST, SOAP, LDP, SOLID…).
  • Architectures orientées ressources.
  • Filtrage et transformation des formats d’échanges (XML, JSON).
  • Gestion des relations transactionnelles. (ACID).

Démonstration
Analyse d’un SI WOA (Google, Facebook), identification des composantes métiers et techniques. Étude de cas sur les réponses spécifiques apportées.

Choix d’un socle technologique

  • Les principaux styles d’architecture. REST, SOAP.
  • Particularités du protocole HTTP.
  • Traduction des protocoles et filtrage des contenus.
  • Positionner la ressource (URI) au cœur du sytème.
  • Représentation des bonnes pratiques. Communication par message et asynchrone.
  • Granularité et couplage faible.
  • Les normes : BPMN, BPEL, SCA…
  • HATEOAS, Hypermedia As The Engine Of Application State.
  • Outils pour la normalisation de la conception : Swagger, BluePrint, RAML…

Démonstration
Conception et génération de Web Service dans de multiples technologies avec Swagger, intégration et inter opérabilité. Rédaction d’une documentation adaptée.

Gérer les cibles et les modes de consommation

  • IoT et applications mobiles.
  • Caractéristiques de la scalabilité (verticale/horizontale).
  • Les stratégies de gestion du cache.
  • Performances et gestion du trafic.
  • Créer, gérer et exposer des API pour les communautés de développeurs.
  • Supporter les projets Cloud, mobiles et les API REST dans l’existant.
  • Supporter les clients du parc de consommateurs.

Démonstration
Sur la base d’un cas d’étude (ex : Google) revue des modes d’utilisation du IT ouvert sur le Web. Des différents modes de production et de consommation selon le profil des acteurs depuis l’utilisateur final.

Interface Homme-Machine

  • Volatilité des IHM. IHM « on-demand ».
  • Quels types d’interface prévoir ?
  • Apports et évolution du standard HTML5.
  • Progressive Web Application : renforcer l’engagement des utilisateurs.
  • Anticiper le développement d’applications Offline.
  • Isolation de la sécurité et des traitements métiers avec JavaScript.
  • Avantages et limitations du développement en mode hybride.
  • Evolution des solutions de développement. L’apport de JavaScript.

Démonstration
Utilisation d’une stratégie de développement multicibles, multisupports

Distribution des données

  • Evolution des architectures de stockages.
  • Limitation du modèle relationnel.
  • Les alternatives « NoSQL », définition solutions et usages.
  • Utilisation des méta-données : FOAF, GraphQL.
  • Découpage des couches de distributions.
  • Choix des datastores (SaaS, BaaS…)
  • Duplication et synchronisation.

Sécurité et confidentialité

  • Définition des règles d’usage (chiffrement, autorisation, SLA).
  • Standards d’authentification (mise en œuvre et délégation : OpenID et oAuth).
  • Solutions : filtres, encryption et signature.
  • Mécanisme de cryptage.
  • Standards cryptographiques.
  • Gestion des clés de stockage.
  • Cycle de vie des accès et identités.

Etude de cas
Anticipation des faiblesses techniques d’une architecture.

Support et monitoring

  • Mise en place de procédures, indicateurs et méthodologie.
  • Accessibilité de la plateforme.
  • Consolidation des « metrics » d’activité.
  • Développer une nouvelle BI (Business Intelligence).
  • Ouverture d’une offre partenaire.
  • Packaging d’APIs, création de produits et de plans.
  • Gestion des erreurs.

Démonstration
Analyse collective des IOV (Indices Objectivement Vérifiables) d’exploitation au service de l’analyse métier.

Automatisation du déploiement et de la gestion d’API

  • Architecture et stratégies d’automatisation, (Cloud Management, OpenStack, « Dockérisation »).
  • Critères d’évaluation d’une solution. Offres du marchés.
  • Stratégies : Proxies, Agents or Hybrid.
  • Choisir une solution de pilotage et de gestion des API.
  • Fonctionnalités caractéristiques.
  • Points clés pour la réalisation d’un cahier des charges.

Réflexion collective
Présentation des solutions majeures : MAS Azure, Apigee, Oracle SOA, WSO2…