Web Services
- Les Web Services vus par l’utilisateur final.
- Quelles différences entre un Web Service et une application Web.
- Fonctionnement d’une interaction Web Services.
Microservices
- Les limites des Web Services en architectures complexes.
- Introduction au concept des Micro-Services.
- Les idées reçues sur l’orchestration de micro-services.
Web API
- Définition d’une API.
- Les différences entre un service et une API.
- Les types d’API : P/R, R/R, Stream, etc. ?
Design d’API
- Construire une API à scalabilité infinie.
- La problématique de versioning d’API.
- Rôle de l’annuaire d’API ou AP Manager.
Les Web Services et API dans le SI de l’entreprise
- Web Services et API en interne à l’entreprise.
- Coûts de conception, de développement et d’exploitation.
- Les limites de la prolifération d’API dans l’entreprise.
Les standards de base
HTTP
- Rappel des principes du protocole HTTP.
- Quel intérêt à utiliser HTTP comme un protocole applicatif ?
- La place de HTTP dans les Web Services et les API.
XML
- Quelle est la place de XML dans les Web Services ?
- Quels sont les avantages et les limites de XML ?
- Quelles alternatives à XML ?
JSON
- JSON vis-à-vis de XML.
- Exemples d’utilisation de JSON.
- Quelle interopérabilité entre JSON et XML ?
SOAP
- Principes de fonctionnement de SOAP.
- Les middleware qui supportent SOAP ?
- Quels avenir pour SOAP ?
WSDL
- Présentation du langage WSDL. État des lieux et perspectives de WSDL ?
- Les alternatives à WSDL pour décrire des Web Services.
- Quel lien avec SOAP ?
Hypermedia
- Introduction au concept hypermedia.
- Les liens sémantiques et hyperlink.
- Qu’est ce que HATEOAS ?
Concevoir une architecture distribuée
ROA (Rest Oriented Architecture)
- Principes de l’architecture REST.
- REST vs SOAP : complémentaires ou concurrents ?
- Quelle standard de description de Services pour REST ?
WOA (Web Oriented Architecture)
- Introduction à la WOA (Web Oriented Architecture) ?
- Rôle des Web Services dans les architectures Web.
- Quels choix d’architectures aujourd’hui : WS-*, SOA, WOA ou ROA ?
API Management et découverte de services
- Quelle topologie pour une architecture de Web Services et Web API ?
- Les bonnes pratiques de référencement et de documentation ?
- Les différents modèles de découverte dynamique des services.
SOA vs WOA vs Microservices vs API
- Quelle zone de confort pour chacun des concepts ?
- Quelle interopérabilité entre les 3 concepts ?
- Démarche méthodologique de mise en œuvre réaliste.
Web Services vs EAI vs ESB
- Les difficultés pour bâtir un EAI basé sur les Web Services.
- Les EAI et ESB du marché revisités par les Web Services.
- Web Services : EAI du « pauvre » ou EAI ouvert et standard ?
Sécurité des Web services et Web API
Sécurité des Web Services
- La sécurité des Web Services et des Web API.
- Comment simplifier la sécurité ?
- Comment contrôler finement les autorisations ?
- Les pratiques en déploiements sécurisés.
Sécurité des Web API
- Comment concilier ouvertures de SI et sécurité.
- Introduction à la sécurité applicative.
- Pratique de détection de « fraud-patterns »
La sécurité WS-*
- Quelle pérennité des standards WS-Security ?
- La gestion des droits sur des services distribués.
- Intérêts et limites des firewalls et autres reverse proxies.
Fiabilité et performances
Sécurité des échanges de messages
- Mise en œuvre d’interactions sécurisées.
- Concevoir, développer et déployer une API publique sécurisée.
- Concepts avancés en conception de services sécurisés.
Robustesse
- Design d’architectures robustes.
- Diagnostic de robustesse d’architecture distribuée.
- Introduction à « chaos Monkey ».
Performances des interactions Web Services
- Les facteurs majeurs de la performance applicative.
- Comment mesurer les performances et la montée en charge ?
- Comment concevoir des services à scalabilité infinie ?
Conception et déploiement de transactions
Principes transactionnels dans un système distribué
- Rappel des transactions ACID.
- Introduction au théorème CAP.
- Les limites des architectures modernes.
Transactions Web Services et API
- Comment gérer une transaction longue entre plusieurs acteurs ?
- Introduction aux principes de relaxation transactionnelle.
- Principes des transactions de compensation.
Transactions Microservices
- Comment maîtriser la granularité des Microservices ?
- Quels sont les anti-patterns et les pièges à éviter ?
- Intégration de Microservices technologiquement hétérogènes.
L’administration des Microservices
- Environnements de développement, de certification et de supervision.
- Technique de conception de services testables.
- Comment faire évoluer et gérer les versions des Microservices ?
Description de processus et orchestration
BPEL (Business Process Execution Language)
- Quel positionnement par rapport aux standards XPDL, BPML, BPMN, etc. ?
- État des lieux du support de BPEL par les produits du marché.
- Dans quels cas doit-on utiliser un moteur d’orchestration de Web Services ?
- Quelle alternative à BPEL pour l’orchestration ?
API Management
- Rôle de l’API Manager dans l’orchestration.
- Les limites de localisation des traitements dans un API manager.
- Les zones de confort de l’API Manager pour les API et les Microservices.
Panorama du marché des outils Web Services et Web API
- Ce chapitre dresse un panorama critique de l’offre du marché : typologie des acteurs et de l’offre de standards, de normes et de produits, caractéristiques des principaux produits dans chaque catégorie, évolutions fonctionnelles et techniques attendues, points forts et limites, domaines d’application privilégiés et principales contre-indications respectives, etc.