valtech - architecture agile des si

24
Architecture Agile 16 juin 2015 – Yann Le Tanou, Directeur Archi&Urba [email protected]

Upload: valtech

Post on 28-Jul-2015

338 views

Category:

Technology


0 download

TRANSCRIPT

Architecture Agile 16 juin 2015 – Yann Le Tanou, Directeur Archi&Urba

[email protected]

Pourquoi Valtech ?

STRATEGY CREATIVITY TECHNOLOGY AGILITY

Valtech, acteur full-service de votre transformation digitale

Des nouvelles tendances et nouveaux besoins…

Recentrage sur le cœur de métier Multiplication des partenaires

Cloud

Big Data

NoSql

TransformationDigitale

Connaissanceaccrue

des usages

Mobilitéétendue

LeanStartup

Devops

Transformationagile

Mais les autres besoins sont toujours d’actualité !

« Lutter contre les résistances au changement… »

« Améliorer la relations MOA-MOE… »

« Limiter les redondances de données, flux, fonctionnalités… »

« Améliorer la qualité des données… »

« Réduire les Coûts récurrents SI dont MCO… »

« Intégrer plus facilement… »

« Améliorer temps de réponse et scalabilité… »

« Déployer plus fréquemment… »

« Réduire les Adhérences fournisseurs… »« Réduire la dette technique et l’obsolescence… »

Des enjeux métiers totalement imbriqués aux enjeux du SI

Évolution permanente des besoins

Mobilisation des parties prenantes

Marchés en transformation continue

Connaissance « intime » des usages des clients et consommateurs

Intégrer au plus tôt les innovations technologiques

Multiplication des canaux de communication

Fiabilité et sécurité du SI

Suivi des processus de bout en bout et de plus en plus fin

Un foisonnement technologique sans équivalent

Innovation technologique en accélération

Multiplicité et hétérogénéité des sources de données

Traitements de plus en plus scalables et volumineux

Multiplication des canaux de communication et des partenariats

« Il devient fondamental d’investirdans des pratiques d’architectured’intégration partagées par tous eten phase avec les pratiques agiles ! »

Système Agile

Capacités d’un système agile

C1Capacité à évoluer en continue avec des déploiements fréquents de nouveaux services à valeur métier

C2Capacité à manipuler des données métier multiples, hétérogènes et volumineuses

C3 Capacité à s’adapter à de fortes variations de charge

C4 Capacité à offrir une très haute disponibilité

C5Capacité à dialoguer avec des périphériques et des partenaires multiples tout en offrant une expérience continue et globale aux utilisateurs

Quelles méta-exigences d’architecture agile

SystèmeAgile

Conduite par le métier, centrée sur la donnée

Orientée-services Fondée sur une forte cohésion et un faible

couplage des composants

Événementielle

Communicante via des médiations

Favorisant le stockage sans contrainte

Portée par un langage commun d’échange des données

Construite pour le Cloud

12

3

4

567

8

L’Entreprise (vue métier)

Le Système d’Information (vue fonctionnelle)

Le Système Informatique (vue applicative)

L’Infrastructure (vue technique)

Conduite par le métier et centrée sur la donnée

Clients FournisseursFiliales

DistributeursPartenaires

Unicité de la donnéeRéférence unique et immuable

Modèle de données pivot

Entités métier(invariants)

Responsabilité sur la donnéequalité de la donnée

Format d’échange unifié

Disponibilité de la donnéeRéplication, ArchivageVolumétrie, Sécurité

« entité métier »Stock

« entité métier »Produit

« entité métier »Commande

« entité métier »Client

C1 C2 C3 C4 C5

capacitésArchitecture

Orientée-service

L’Entreprise (vue métier)

Le Système d’Information (vue fonctionnelle)

Le Système Informatique (vue applicative)

L’Infrastructure (vue technique)

Servicesexposés

Servicesexposés

Servicesexposés

Servicesexposés

Servicesconsommés

Servicesconsommés

Servicesconsommés

Servicesconsommés

Clients FournisseursFiliales

DistributeursPartenaires

support

réalisation

déploiement

support

réalisation

déploiement

C1 C2 C3 C4 C5

capacitésArchitecture

Un service représente une capacité qu'un fournisseur met à disposition de multiples consommateurs, aux travers d'interfaces clairement établies et masquant la façon dont la

capacité est réaliséeUne interface spécifie un ensemble d’opérations associé à des structures d’échange de

données que le service met à disposition de ces consommateurs pour accéder à la capacitéLa mise en œuvre du service est précisée par la définition de rôles et contraintes à respecter

côté fournisseur et consommateur

Orientée-services

«service»sStocks

«interface»iStocks

capacitérôlescontraintes

«service»sProduits

«interface»iProduits

capacitérôlescontraintes

Fournisseur du service sStocks ;

consommateur du service sProduits

Fournisseur du service sProduits

«fournit»

«requiert»

«fournit»

« entité métier »Stock

«dérive»

« entité métier »Produit

«dérive»

«responsabilité» «responsabilité»

C1 C2 C3 C4 C5

capacitésArchitecture

Fondée sur une Forte cohésion et un faible coupage des composants

«composant»Gestion des Stocks

Ports d’entrée Ports de sortie

(…)«composant»Gestion des

Achats

«composant»Suivi des

Commandes

«composant»Catalogue Produits

Les composants sont indépendants les uns des autresChaque composant encapsule un ensemble de fonctions cohérentes entre elles

Les composants communiquent uniquement via leurs portsLes ports définissent des protocoles d’échanges indépendamment de la façon dont les

composants sont implémentés

connecteur

données échangées

sous-compo-

sant

Architecture interne du composant(sous-composants)

données échangées

responsabilités ; données stockées

C1 C2 C3 C4 C5

capacitésArchitecture

L’Entreprise « composant »Unité

Organisationnelle

Des composants de services à tous les niveaux

Le Système d’Information

Le Système Informatique

L’Infrastructure

Servicesexposés

Servicesexposés

Servicesexposés

Servicesexposés

Servicesconsommés

Servicesconsommés

Servicesconsommés

Servicesconsommés

« composant »Unité

Organisationnelle

« composant »Unité

Organisationnelle

« composant »Bloc

Fonctionnel

« composant »Bloc Applicatif

« Composant »Ressource

d’Exécution

Clients FournisseursFiliales

DistributeursPartenaires

support

réalisation

déploiement

C1 C2 C3 C4 C5

capacités

«composant applicatif»Gestion des Stocks

Composant applicatif de service

«service»sStocks

iStocks

capacitérôlescontraintes

port1:sStocks«consomme»

«service»sProduits

iProduits

capacitérôlescontraintes

port2~:iProduits«produit»

Stock«donnée stockée »

« ref »Produit

«composant applicatif»Catalogue Produits

Produit«donnée stockée »

port1:sProduits

« entité métier »Stock

« entité métier »Produit

«dérive»

«dérive»«produit»

C1 C2 C3 C4 C5

capacités

«événement»evCommande

Un événement véhicule un changement d’état à un instant t d’un élément significatifTout composant peut produire des événements consommés par d’autres composants et

réciproquement, dans la limite des fonctions qu’il encapsuleUn composant produisant un événement ignore toujours ce qu’il adviendra de celui-ci

Les événements sont véhiculés via des composants techniques équivalent à des « boites aux lettres », dans lesquels les producteurs postent leurs événements tandis que les

consommateurs retirent ces événements

Événementielle

«composant»Gestion des Stocks

port1:sStocks

DéfinitionCycle de vieContraintes

«consomme»

port2~:evCommande

« boites aux lettres »«composant»Gestion des Commandes

port1:evCommande

«produit»

Stock«donnée stockée »

Commande«donnée stockée »

C1 C2 C3 C4 C5

capacitésArchitecture

Communicante via des médiationsproducteurs d’événements

Logique de routage événements vers orchestration de

services

producteurs de services

« médiation »Routage Ev

Événement (Asynchrone) Service (synchrone)

C1 C2 C3 C4 C5

capacitésArchitecture

Portée par un langage commun d’échange de données

L’Entreprise

Le Système d’Information

Le Système Informatique

L’Infrastructure

Clients FournisseursFiliales

DistributeursPartenaires

« entité métier »Stock

« entité métier »Produit

« entité métier »Commande

« entité métier »Client

« document »eClient

« document »eCommande

« document »eProduit

« document »eStock

« format »eClient.json

« format »eClient.xml

« format »eClient.html

Protocoles : http, amqp, ftp, smtp, etc.

ETL Message Queue ESB API Gateway

C1 C2 C3 C4 C5

capacitésArchitecture

Node n

Node 2

Favorisant le stockage sans contrainte

Node 1Stocks Produits

Clients

Stocks Produits

Commandes

Stocks Produits

Clients Commandes

DATA CLUSTER

Catalogue Produits

Produit«donnée stockée »

Gestion Client

Client«donnée stockée »

Prise de Commandes

Commandes«donnée stockée »

Gestion des Stocks

Stock«donnée stockée »

Serv

ice

d’I

nfr

astr

uct

ure

Serv

ice

d’In

fras

tru

ctu

re

«consomme» «consomme»

C1 C2 C3 C4 C5

capacitésArchitecture

Construite pour le Cloud (IaaS et PaaS)

IaaS/PaaSComposant de Service

IaaS/PaaS

Composant de Service

Composant de Service

Médiation

«déploiement»

«déploiement»

«déploiement»

«déploiement»

«déploiement»

Élasticité Facturation à la consommationMontée en chargeDisponibilité

VM

VM

VM

VM

VM

VM

C1 C2 C3 C4 C5

capacitésArchitecture

Construite pour le Cloud (SaaS et iPaaS)Les Systèmes de demain seront avant tout une intégration de services SaaS publiques et

de services développés en interne et eux même déployés en cloud privé et/ou publique, à travers la mise en place de composants de médiations

C1 C2 C3 C4 C5

capacitésArchitecture

SI externalisé SaaS Service API

SI Internalisé

MédiationMédiationMédiation

MédiationMédiation(iPaaS)

Service API

Service API

Service API

Service API

Service API

Service APIService API

La complexité de la réalité est souvent sous-estimée

La transformation vers une architecture agile doit se faire par palier

La vision n’est pas la cible, elle définie les orientations à prendre

Vision / Réalité / Futur

« Des architectures agiles pour destransformations plus rapides, plusnombreuses, plus radicales, en tirantpleinement parti des opportunitéstechnologiques au fur et à mesure deleur découverte ! »

THANK YOU

VALTECH.COM