Evolution MM

Formations à l'informatique
Découvrez la différence ENI

Lien accueil

Téléchargez le Calendrier des formations

Nantes, Rennes, Niort, Nice, Paris

jusqu'à juillet 2018

Rechercher
Rechercher une formation
 

SOA - Concevoir une architecture applicative

Elaborer un Système d'Information Agile, répondant aux besoins métier : telle est la promesse de l'approche SOA. Dans cette approche, le SI est conçu comme un assemblage de composants interagissant au travers de services. Oui, mais quels composants ? Quels services ? Comment garantir l'agilité de ces composants et services ?

Public :

  • Architecte logiciel, concepteur-développeur.

Objectifs :

  • Réaliser la conception d'un SI en appliquant un ensemble de bonnes pratiques SOA. Ces bonnes pratiques étant applicables à toute technologie, la conception est réalisée au travers de la notation UML, complétée par des illustrations systématiques dans les principales technologies d'implémentation : JEE, .NET. et Web Services.

Pré-requis :

  • UML, programmation dans un langage orienté objet (Java, C#, C++ …), méthodes (UP/MDA, Agiles), bonnes pratiques de conception logicielle (couches, MVC, architecture n-tiers).

Contenu pédagogique

Introduction

  • Les enjeux pour l'entreprise : un SI agile et répondant aux besoins métier (gestion des informations au sein de processus transverses, ouverture vers l'extérieur …) - la problématique des silos applicatifs
  • Une architecture applicative selon l'approche SOA : un assemblage de composants, interfacés par des services - Une réponse aux enjeux ?
  • Les éléments principaux de l'infrastructure technique - la notion de plateforme SOA - Un bus de communication supervisable : l'ESB

Approche méthodologique et patterns d'architecture applicative

  • L'approche méthodologique - Tout commence par une vision claire du besoin métier - La conception : ça sert à quoi ? - Prise en main de l'étude de cas
  • Patterns de conception d'architecture applicative - Pas de bons composants sans une bonne architecture du code source - Patterns d'architecture logique (séparation des préoccupations et limitation des dépendances, couches/layers, pattern "Métier, Contrôleur/Vue") - L'importance des interfaces

La conception des composants et des services

  • Qu'est-ce qu'un service ? Service et composant : deux notions différentes mais intimement liés - Implémentations en JEE, .NET et Web Services
  • L'art de concevoir les composants
    • Le composant : véritable unité d'urbanisation du SI
    • Des composants "agiles" : modularité et découplage - les rôles "fournisseur" et "consommateur" de service
    • La communication entre composants : définition des interfaces de service, communication orientée requête vs notification, communication synchrone vs asynchrone - La problématique de la communication distribuée - Impact sur les dépendances

Les composants fournisseurs de service métier

  • Les informations échangées - Importance du langage métier pivot
  • Accès aux référentiels de données et à l'existant
  • Organisation en couches des composants métier
  • Les "processus métier SOA" - Moteur d'orchestration BMP, langages BPMN et BPEL

Les composants consommateurs de services métier

  • Le concept d'application composite/solution métier - les enjeux organisationnels
  • Composants interactifs
    • La relation vue/contrôleur et la notion de contexte
    • Les différents frameworks d'IHM ("fenêtré vs "page") - Impact des différentes topologies en "tiers"
  • Composants non interactifs : les batchs

Conclusion

  • Synthèse et mise en perspective : avons-nous répondu aux enjeux ciblés ?