• Aucun résultat trouvé

Urbanisation et BPM Retours d expérience sur le SI de Bouygues Telecom

N/A
N/A
Protected

Academic year: 2022

Partager "Urbanisation et BPM Retours d expérience sur le SI de Bouygues Telecom"

Copied!
18
0
0

Texte intégral

(1)

Urbanisation et BPM Urbanisation et BPM

Retours d’expérience sur le SI de Bouygues Telecom Retours d’expérience sur le SI de Bouygues Telecom

26 Janvier 2006 Jeudis de l’objet

Yves Caseau

Plan Plan

z

I: Urbanisation & Bouygues Telecom

z

II: BPM & Architecture

z

III: BPM & Qualité des données

z

IV: BPM & Exploitation

(2)

Première Partie: BPM & Bouygues Telecom Première Partie: BPM & Bouygues Telecom

z

Refonte du SI de Bouygues Telecom

z

L’orientation processus

z

Les Objets Métier

z

Les Processus Métier

z

Urbanisation du « back-office »

Histoire du SI de Bouygues Telecom Histoire du SI de Bouygues Telecom

z

95-99 (croissance exponentielle): le SI est construit autour du progiciel BSCS (valorisation, facturation, CRM,

Provisioning, gestion client, …)

z

Pourquoi changer ?

T Problèmes de capacité et de performance

T Trop de développements ad-hoc (coûts)

T Augmentation du “Time-to-market” et décroissance de la flexibilité

z

Stratégie d’urbanisation décidée en 99-2000 :

T Se réapproprier le SI: Objets métiers et Processus métiers, maîtrise de l’intégration

T Performance and scalabilité: architecture à composants

T Flexibilité: orientation processus (moteur de processflow) &

components flexibles (meta-data)

T Qualité de service: sécurisation infrastructure, monitoring SLA

(3)

L’orientation processus L’orientation processus

I: Urbanisation

Gestion des Processus

Gestion des Objets Métiers

Infrastructure Systèmes Techniques

CRM Gestion Facturation DWH Provisioning

Processus Entreprise

P1

P2

Tâche

Tâche

Tâche

Tâche

Processus Entreprise

Processus Techniques

Transport Annuaires

Chaque transition est définie par des modifications sur les objets métiers distribution

Objets Métiers Objets Métiers

zLe modèle des objets métier est la pierre angulaire de l’urbanisation (hiérarchie de modèles)

zModèle UML –> XML schéma -> transformation automatisée de formats de données

zLes objets métier sont distribués parmi plusieurs composants (philosophie “keep the data where it is”)

DWH

Modèle des échanges Avec l’extérieur Modèle historique

cumulé Modèle « métier »

local Modèle des échanges

Internes ST

(4)

Urbanisation du Back

Urbanisation du Back- -office office

zInfrastructure d’intégration (WebMethods) and intégration de plates-formes de service (CORBA Visibroker): 2001-2002

zMédiation: 2001-2003

zRoaming: 1Q04 (réutilisation moteur de valorisation)

zCRM : 2001 à 2004 (Siebel 7.5)

zProvisioning: 1Q04 (développement spécifique sur base Kabira - ObjectSwitch)

zValorisation : (spécifique) partie données 2002, complet Juillet 2004

zFacturation : 2005 – Geneva (package)

I: Urbanisation

Deuxième Partie: BPM & Architecture Deuxième Partie: BPM & Architecture

z

Trois dimensions

z

Architecture Fractale

z

Cible Bouygues Telecom

z

EAI & SOA réconciliés

z

Agilité ?

(5)

Services et Événements Services et Événements

z« Services métiers » vs. « Services logiciels »

z Services métiers (plus générique, plus réutilisables) : investissement pour le futur zService vs. Événements: ne pas connaître son consommateur

„ Pas une question de technologie: pub/sub se traduit en orchestration de service

„ Une question de modélisation: un événement est plus réutilisable

Bus Adaptateur Composant

Interface I2 Interface

I1

Responsabilité Composant (vision EAI)

Responsabilité Infrastructure (vision SOA) Responsabilité Composant Responsabilité Infrastructure

Processflow

Référentiel

transforme services

II: Enterprise Architecture and Re-engineering

EAI et SOA réconciliés EAI et SOA réconciliés

Transfor- mation

XML Portail Composant 1

Orchestration de services Processflow (par

événement) UDDI / WSDL UDDI / WSDL UDDI / WSDL UDDI / WSDL Catalogue CatalogueCatalogue Catalogue De service De service De service De service

Composant 2 Composant 3 Comp. n

Passerelle 1

2 3

4

Adaptateur simple : Transformation I1 vers I2 Adaptateur complexe

avec processflow

Référentiel

On peut mélanger les « services » et les « événements » sur une même infrastructure avec les mêmes applications

(6)

Trois dimensions de l’urbanisation Trois dimensions de l’urbanisation

fournit la structure asynchrone des échanges qui permet de définir des processus

permet de stabiliser la contribution de chaque composant au système d’information les flux d’échanges

de données doivent être harmonisés avec les flux de contrôle EAI

permet de produire un ensemble d’interfaces de service qui sont facilement re- composables Fournit le catalogue

de services qui sont implémentés par les composants induit une partie des

services métiers structure les interfaces

de service SOA

permet de valider la cinématique et planification des échanges de données Le modèle de donnée

objet est enrichi par la vision service fournit le modèle de

donnée qui est commun aux échanges ETL

Vision Evénements Vision Services

Vision Données

Construire une architecture cible Construire une architecture cible

Fonctions Processus Données

Terminologie Métiers

Objets (ontologie)

Cycle de vie objets Macro-fonctions Macro-processus

(ébauche)

Macro-processus

Echanges – Contenu Evénements

Services

Processus

Protocole m-a-j Archi. Données v1 Archi. Processus v1

Archi. Services v1 Level 0

Catalogue

Référence externe

Référence externe

Référence externe

(7)

Urbanisation fractale Urbanisation fractale

passerelle

passerelle Processflow

interne

Processflow Infra A

Infrastructure A

Bus interne

Infrastructure B Composant de l’infra. B zDeux motifs:

zDiviser pour régner: le droit à la différence

T Échelle

T Contraintes (performances, etc.)

T déploiement

Double proxy

Architecture Cible Architecture Cible

GW B2B

i-mode™

MMS-C

RT produits

Jade back-end

RAM Roaming Interco

Fraude

Valo / Fact.

Partenaires distributeurs

Fournisseurs de contenu

fabricants logisticiens réparateurs

SI Grand Public SI Entreprises

SI Services PMA

LIGIS

Réseau Client

Médiation

Opérateurs CdC

...

portail RT clients

ent

collecte diffusion

annuaire P3G RT

OPS GAC

RAC3G LYP

analyse client

analyse client

Infrastructure d’intégration

DWH XT

Réquisi- tions

2G 3G

FEVE F3GFAR PGI ?

GVO AAC

Portail CDC

Gestion actions distrib.

Extradis Infodis

Diamant SI Ventes

SAV Commis. SIL

2005,2006

2005-2007

2005-2007 RT Clients

2004-2007

2008 ? 2005

ACD IVR SVS DAB

2005- 2007 RT distrib

2005- 2006

2005, 2006, 2007 2007

2005- 2007

2005,2 006

Gestion des demandes (consistance des

processus)

•Middle-Office : Gestion client

EAI & BPM :

Instances multiples

standardisation progressive

Référentiel Client

(8)

Qui a dit «

Qui a dit « agilité agilité » ? » ?

zParamétrage … mais tests de non-regression => 3mois

zOrientation-processus … mais besoin de redévelopper les adaptateurs

zChangement dans un échange entre deux systèmes … l’ensemble des composants est impacté

Anecdote Telcordia: du «best of breed integration» à la pré-intégration

zLa flexibilité n’est pas une question de technologie

zPlutôt une question de conception et de processus(voire d’état d’esprit)

Conception modulaire et tests agiles Conception modulaire et tests agiles

Conception

„Modularité de l’architecture fonctionnelle (importance de la vision métier – mutualisation/ réutilisation)

„Conception des échanges et compatibilité ascendante

„Rôle de l’ingénierie XML

Tests Agiles

„A inventer (processus, responsabilité, analyse)

„« bouchonner » … avec rigueur et conviction

„Créer des « trains » de tests agiles (planification)

(9)

Troisième Partie: «

Troisième Partie: « Urbanisation et données Urbanisation et données » »

z

Architecture de données

z

QoS et QoD

z

Re-synchronisation

z

Synchronisation et Transactions

Architecture de données Architecture de données

À traiter:

1. Synchronisation de copies

z Gérer le flux de synchronisation

z Garantir la cohérence des « snapshots »

z Impossible dans le cas général

z OK si on se limite à une cohérence modulo les observations des processus 2. Interactions

z Les activités interagissent via (1) messages/services (2) ressources partagées (objets)

z La cohérence => signalisation / exclusion / sérialisation

composant A

Réferentiel Technique broker cache Bus

Référentiel : Modèle commun

message Données

locales

Données partagées

composant B

composant C

(10)

Qualité de service et qualité des données Qualité de service et qualité des données

zEtudes

„ Sterling: « Data synchronization: What is Bad Data Costing Your Company »

„ DWHI: «Data Quality and the bottom line – achieving business success through a commitment to high quality data»

„ Taux d’erreurs allant de quelques % à quelques dizaines de % !

„ Impact direct : perte de revenu

zExpérience Bouygues Telecom: dégradation réciproque

„QoS => QoD :

ÎDésynchronisation => erreurs fonctionnelles

ÎBaisse QoS => détournement des processus => erreurs (cohérence/saisies)

„QoD => QoS:

ÎErreurs dans les passerelles/adaptateurs => demandes en attente

ÎTemps de traitement dégradé => baisse de QoS

Re Re- -synchronisation synchronisation

z

Désynchronisation:

„ Erreurs durant le processus

„ Crash/ incidents /reprises / retard de planification

„ Erreurs de saisie

z

La désynchronisation est une condition récurrente -

z

Besoins:

1. Outils de re-synchronisation

Î Utilisation régulière

Î Reprise sur incident

2. Processus permanent de nettoyage des données

ƒ Administration de données

ƒ Implication MOA (propriétaire)

(11)

Synchronisation et transaction Synchronisation et transaction

Approche Bouygues Telecom

1. Mise-à-jour des objets entrelacée dans les processus (sous-processus)

2. Implémentation simple de LRA au moyen de la resynchronisation

Gestion Demandes

Re- synchronisation Service Métier

NOK cohérence

compensation Gestion distribution

Objets métiers

Exécution Processus Métiers Événement

externe

Etat Règles

Les processus ne sont pas indépendants

z Dépendances liées aux ressources partagées (objets)

z Dépendances métiers

Ÿ Il faut valider (exclusions)

Processus et Transactions Longues Processus et Transactions Longues

z

Les processus servent à implémenter les transactions longues

z

L’implémentation s’appuie sur la (re)synchronisation

Etat S1 initial cohérent : Une référence unique + Toutes les copies sont synchronisées

Etat final cohérent (modification de la référence)

Retour à S1 par re-synchronisation des systèmes impliqués dans la Transaction depuis la référence succès

échec

Début du processus Fin du processus

Etat temporaire : deux parties= les systèmes qui participent à la transactions et les autres

Participants : l’état des objets

est contenu dans les messages qui circulent

Non-participants : l’état des objets est défini par la référence

avec un « lock » sur l’écriture

(12)

Quatrième Partie: Exploitation Quatrième Partie: Exploitation

z

Position du problème

z

Difficultés

z

OAI : exemple

z

Pilotage des processus

z

OAI : mode d’emploi

Position du Problème Position du Problème

z

(2) Un contrat de service (3) des aléas ….

Bus Processflow Engine

adapter

PFS Customer CRM Base

Provisioning Help

zSoit: (1) un ensemble de composants qui exécutent des processus

z

Question: peut-on automatiser le pilotage des processus ?

20 clients par Heure en moins

De 2 minutes

•Pics d’activité

•Pannes

•Autres processus

(13)

Exemple : Exemple :

zLancement i-mode™2002

„La souscription i-mode est un processus métier parmi d’autres …

„Par exemple: facturation, gestion des comptes payeurs, …

„Les SLA semblent conservateurs …

Processes

CRM Service

Platform

Customer Base

Provisioning

Network Accounts Help

Fraud Order

Management

Infrastructure Systems

Difficultés Difficultés

zDiagnostic

„ Temps réel (fil de l’eau) vs. Analyse de logs

„ Absorption de pics => détecte les problèmes trop tard

„ Capacité d’introspection à chaud

zCapacity Planning

„ OAI (priorités, aléas, latence, …)

„ Modèle unifié

zPlanification

„ Mélange planifié / fil de l’eau

„ ! : asynchrone => accepte les pics de charge mais la QoS se dégrade

=> besoin de SLA explicites

zReprise sur incident

„ À chaud -> contrainte performance

„ Ingénierie de ré-injection de messages (outils)

(14)

SLAs

SLAs, Priorités et Stratégies Adaptatives , Priorités et Stratégies Adaptatives

z

Les processus métiers ont des priorités différentes …

„Une stratégie adaptative devrait équilibrer la charge et les ressources pour satisfaire les SLA en fonction des priorités (“graceful

degradation”)

„Adaptation => doit tolérer les “bursts”

„Adaptation => doit tolérer les indisponibilités courtes

z

Deux approches possibles :

„Ordonnancement des messages

„Contrôle de flux

z

…ont été étudiées par simulation (évènements discrets)

Ordonnancement des messages Ordonnancement des messages

zTri des files d’attente : modifier l’ordre de traitement des messages

zFCFS (FIFO)

„ La méthode par défaut de la plupart des middleware (respect des contraintes temporelles)

„ Cependant, le respect de l’ordonnancement temporel est trop fort pour supporter une stratégie de distribution (nécessaire pour la fiabilité et les performances).

zLCFS (FILO)

„ Une « bonne » stratégie pour gérer les congestions.

z“SLA routing”

„ Prévision du temps de début de traitement à partir du SLA.

zCombinaison avec les priorités

„ On traite les messages à forte priorité en premier

(15)

Contrôle de flux Contrôle de flux

z [cf. Advanced Engineering Informatics 19(2005) 199-211]

z Nous avons évalué plusieurs stratégies

„ RS1: Lorsque la QoS d’un système X tombe en dessous de 90% de son SLA, nous réduisons le flux des systèmes qui fournissent X et dont la “priorité” est inférieure à celle de X.

„ RS2: Une approche similaire fondée sur les processus. Lorsque la QoS d’un processus tombe en dessous de 90%, nous réduisons le flux de tous les systèmes dont la priorité est plus faible que celle de P et qui alimentent des systèmes qui participent à P.

„ Il existe plusieurs variante sur la réduction de flux (couper, ralentir … ou changer la méthode de tri des messages).

z Le contrôle de flux est plus complexe mais n’est pas nécessairement partie du middleware d’intégration

Conclusions tirées de la simulation Conclusions tirées de la simulation

Quelques pas dans la direction “autonomic computing”

1. Self-optimization:

„ La gestion des priorités fonctionne: il est possible (et assez simple) de prendre les priorités des processus en compte dans le traitement des files et d’obtenir de la sorte une véritable amélioration.

„ Les algorithmes de tri des files d’attente ont un impact fort: les méthodes sophistiqués qui utilisent la structure du SLA produisent une véritable amélioration par rapport à FCFS.

„ Les règles de contrôle de flux sont intéressantes, mais moins efficaces et plus difficiles à maîtriser.

2. Self-healing: nous avons obtenu une forme d’ “autoréparation”, mais une véritable robustesse ne peut être obtenue qu’avec une collaboration SW/HW

3. Self-configuration: notre objectif est de rendre la configuration déclarative (à partir des SLA) au lieu de faire de planification et ordonnancement de ressources

(16)

OAI: mode d’emploi OAI: mode d’emploi

1.

Conduite du changement en production

z Formation (nouvelle culture)

z Pilotes

z Outils ! (manipulation de flux « vivants » - exemple: filtrage - et

« morts » - réinjection - )

2.

Déployer des solutions de BAM/ tests de bout-en-bout

3.

Construire la prochaine génération d’outils

z Middleware -> lobbying pour les priorités -

z Simulation

z BAM -> BAOM : pilotage actif par SLA

Pilotage des processus Pilotage des processus

-Urbanisation => IT orientée-processus =>

meilleur pilotage

-BPM/BAR ->

des outils de plus en plus pertinents

MAIS

- Double cycle de maturation

- Vraie complexité

Système Application Processus

Maturité métier

Maturité technique

Incident Erreur

SLA

Exploitation:

Automatisée 7/7 24/24

MOE -> MOA:

Suivi Tableau de bord

MOA:

Analyse SI bleus

Première étape:

Appropriation des processus

(17)

Production

Production orientée orientée- -processus processus

z

Pilotage différent

z

Gestion des incidents différente (à chaud, ..)

z

Fiabilisation différente (modèle organique)

ST1 ST2 ST3

secoursST1 ST3

secours Bascule

auto

Monitoring/ Réaction par système Bascule manuelle

Monitoring + Réaction au niveau du processus

ST1 ST2 ST3

réflexe ST4 contournement

Echelle de maturité Echelle de maturité

zLa démarche BPM est une « révolution tranquille » sur de nombreuses années.

zDeux thèmes majeurs (TQM et analyse de la valeur)

Analyse de la valeur

Analyse des processus

Mesure des processus

Analyse Amélioration

Implémentation

Proportion de la valeur affectée à un processus

Degré de formalisation des processus

Industria- lisation de la mesure

Modélisation de la performance économique

Automatisation du pilotage

Informatisation des processus

métiers Réactivité du

cycle d’optimisation 100%

0%

100% Temps réel

Continu planifié Ad hoc

Soluble équations modèlisé

Ad hoc BPM dynamique

Processflow automatisé manuel

continu automatisé agile lent 0%

100%

0%

« orientation-processus du SI »

(18)

Conclusion : Architecture d’Entreprise Conclusion : Architecture d’Entreprise

z

UML, XML, ..

„S’appuyer sur un modèle pivot et des schémas

„Utiliser les outils (state-of-the-art, ingénierie XML)

z

Fractal Architecture

„Appliquer l’approche BPM à différentes échelles

„Construire des « régions » qui sont faiblement couplées

z

Les processus ne sont pas indépendants

=> il faut implémenter une vérification de cohérence

z

L’agilité n’est pas une question de technologie mais de conception

„La modularité dépend de l’analyse fonctionnelle

„Penser à la compatibilité ascendante des formats de message

„Pas d’agilité sans « tests agiles »

Conclusion : Opérations et Qualité de Service Conclusion : Opérations et Qualité de Service

zDistribution des données => synchronisation & re-synchronisation

„Les problèmes les plus classiques de l’informatique distribuée …

„… mais pas les plus populaires dans le monde de l’intégration d’applications

zOAI : Optimization of Application Integration

„Optimiser selon les SLA de processus et les priorités métiers

„Un problème réellement complexe (science)

„Besoin de progresser en terme de routage des messages et de supervision des processus

zQoSÙQoD

„La qualité de service et la qualité des données sont liées dans les deux sens

„Attention aux migrations, audits, synchronisations, purges, …

zCf. le livre « Urbanisation et BPM » (Dunod) -

Références

Documents relatifs

» Dans cette leçon, nous explorons les notions mathématiques liées à la chute d'un arbre et répondons à la question : « Si un arbre tombe dans votre quartier, atterrira-t-il

Par exemple, lors d’un tirage au sort, si la 1 ère personne tirée au sort répond à l’appel passé en direct à l’antenne, les personnes tirées au sort de 1 à 9

"M. le président, mesdames et messieurs de la parité administrative, le SNAD CGT sera assez court en matière de déclaration. Les élus du SNAD CGT au Conseil d’Administration

 Suite à ces analyses, envoyer votre production à Fabrice pour validation du projet, un appel téléphonique sera nécessaire pour mettre à jour le projet et le valider..

Voici les niveaux de priorité sur les opérateurs du plus fort au plus faible

Pour rapprocher les bénévoles et les associations, Bouygues Telecom lance sa grande plateforme pour permettre au plus grand nombre de s’engager pleinement dans des missions

Compléter l’algorithme suivant pour qu’il soit capable de calculer et d’afficher la quantité de médi- cament restant dans le sang au bout de 15 minutes..

Un système orthonome passif étant donné, si l'ensemble des éléments arbitraires, dont la connaissance équivaut à celle des déterminations ini- tiales des inconnues, ne renferme,