Upload
lemrabet
View
783
Download
1
Embed Size (px)
Citation preview
Directeur de thèse : Jean-Pierre Bourey (LM²O)Co-directeur de thèse : Michel Bigand (LM²O)
12/04/2023
Proposition d’une méthode de spécification d’une architecture orientée services dirigée
par le métier dans le cadre d’une collaboration inter-organisationnelle
Thèse de doctorat en Génie industriel
Youness LEMRABET
LM²O
LM²O 2
Plan• Contexte et problématiques
• Les perspectives de SOA (Service Oriented Architecture)
• SOA pour rationnaliser l’interopérabilité
• La méthode proposée
• Conclusions & Perspectives
LM²O 3
Plan• Contexte et problématiques
• Les perspectives de SOA (Service Oriented Architecture)
• SOA pour rationnaliser l’interopérabilité
• La méthode proposée
• Conclusions & perspectives
LM²O
Réactivité : un enjeu majeur Interopérabilité (collaboration : alignement entreprise-
environnement) Agilité (alignement métier-IT )
Pour faire face à ces défis les entreprises ont investi dans: Des méthodes Des cadres d’architecture Des infrastructures technologiques
Un problème méthodologique
4
Contexte et problématiques (1/3)
Plusieurs notations (v 2.0) : 505 pages , ~145 concepts
(v Beta 2) : 157 pages, 27 concepts
(v 2.4) : 946 pages, ~248 concepts
Plusieurs approches BPM (Business Process Management)
SOA (Service Oriented Architecture)
MDA (Model Driven Architecture)
MDI (Model Driven Interoperability)
LM²O
Le projet ASICOM
Contexte et problématiques (2/3)
Les différents partenaires du projet ASICOM
Stockiste Importateur
Douanes
ASICOM
Commissionnaire en douane
5
LM²O
Question de recherche Comment spécifier et mettre en œuvre une architecture orientée
services dirigée par le métier dans le cadre d’une collaboration inter-organisationnelle ?
Contributions : 2 volets Combiner intelligemment les approches BPM, SOA et MDA/MDI pour :
Aider à une meilleure compréhension des problématiques d’interopérabilité et d’alignement métier-IT
Proposer une méthode de conception de solution orientée service
6
Contexte et problématiques (3/ 3)
LM²O 7
Contenu de la présentation• Contexte et problématiques
• Les perspectives de SOA (Service Oriented Architecture)
• SOA pour rationnaliser l’interopérabilité
• La méthode proposée
• Conclusions & perspectives
LM²O
Zimmermann (2009) propose 3 perspectives pour définir SOA :
8
Service Oriented Architecture (SOA)
Perspectives Défis
Métier Alignement métier-IT
Architecture de conception Activité de conception reproductible (respect des principes de conception SOA)
Développement Standardisation de l’implémentation et du déploiement
SOA est un style d’architecture pas une technologie
LM²O
Une vision transversale de BPM BPM est une approche de management centrée sur les processus
métiers dans le but d’améliorer l’agilité et les performances opérationnelles (Melenovsky et al., 2005)
9
Business Process Management (BPM)
Perspective par processus
LM²O
Les approches BPM and SOA sont différentes: SOA est une initiative dirigée par l’IT BPM est une initiative dirigée par le métier
Deux approches complémentaires : BPM et SOA BPM permet d’identifier et de modéliser les processus métiers SOA permet de découvrir des services réutilisables pouvant être
orchestrés pour mettre en place des processus métiers
10
BPM et SOA : Concurrence ou synergie ? (1/2)
Du plat de spaghettis à SOA-BPM
Architecture d’intégration traditionnelle
Architecture orientée services
a
Architecture orientée services dirigée par le métier
b c
LM²O 11
BPM et SOA : Concurrence ou synergie ? (2/2)
Le modèle EMT pour démontrer la synergie des approches BPM et SOA
Le modèle EMT
LM²O 12
Cadre de référence pour l'alignement entre BPM et SOA
Vers une Entreprise Orientée Service (SOE)
Alignement stratégique métier
La culture et l’humain
Gouvernance BPM
Processus métier
Gouvernance SOA et IT
SOA et technologie IT
LM²O
13
Contenu de la présentation• Contexte et problématiques
• Les perspectives de SOA (Service Oriented Architecture)
• SOA pour rationnaliser l’interopérabilité
• La méthode proposée
• Conclusions & perspectives
LM²O 14
L’interopérabilité dirigée par les modèles
Modèle de référence MDI (Bourey et al., 2007)
Entreprise 2Entreprise 1
NiveauCode
Application1 Application2Code
d'Interopérabilité
NiveauPSM
Application1 Application2Modèle
d'Interopérabilité(PSM)
transformation transformation transformation
transformation transformation transformation
Modèle d'Interopérabilité
(TCIM)Application1
NiveauCIM-Haut
Application2
Modèle d'Interopérabilité
(BCIM)
transformationtransformationtransformation
Application1 Application2NiveauCIM-Bas
Application1 Application2Modèle
d'Interopérabilité(PIM)
NiveauPIM
transformation transformationtransformation
LM²O
Trois approches d’interopérabilité (Berre et al., 2004; Liu, 2011) :
L'approche intégrée : partage d'un environnement d'exécution et des conventions de communication
L’approche unifiée : partage des spécifications d’environnements, des modèles et des concepts
L’approche fédérée collaboration entre des services locaux autonomes, chacun d’eux exécute un processus métier local
15
Les approches d’interoperabilité
Les approches d’interopérabilité intégrée, unifiée et fédérée proposées par (Berre et al., 2004)
LM²O 16
Cadre d’interopérabilité d’entreprise (1/2)
Métier
Processus
Service
Donnée
Conceptuelle
Technologique
Organisatio
nnelle
Fédérée
Unifiée
Intégrée
Niveaux d’interopérabilité
Approches d’interopérabilité
Barrièresd’interopérabilité
Les trois dimensions du cadre d’interopérabilité d’INTEROP (Chen et al., 2007)
LM²O 17
Cadre d’interopérabilité d’entreprise
Vue simplifiée du Framework conceptuel défini par AIF (ATHENA01, 2007)
LM²O
Formalismes Concepts
Outils Méthodes 18
SOA pour rationnaliser MDI La grille pour identifier les différents aspects de l’interopérabilité
Domaine
CIM-Haut
CIM-Bas
PIM
PSM
Métier Processus Service Donnée
Code
BPMN 2.0
BPMN 2.0
BPMN 2.0
BPMN 2.0
WS-BPEL
LM²O 19
SOA pour rationnaliser MDI La grille pour identifier les différents aspects de l’interopérabilité
CIM-Haut
CIM-Bas
PIM
PSM
Métier Processus Service Donnée
Code
Formalismes Concepts
Outils Méthodes
Domaine
LM²O
20
Contenu de la présentation• Contexte et problématiques
• Les perspectives de SOA (Service Oriented Architecture)
• SOA pour rationnaliser l’interopérabilité
• La méthode proposée
1. Identification et spécification des processus collaboratifs
2. Identification, spécification et réalisation des services publics dirigés par le métier
• Conclusions & perspectives
CIM-Haut
CIM-Bas
PIM
PSM
Métier Processus Service Donnée
Code
LM²O
21
Contenu de la présentation• Contexte et problématiques
• Les perspectives de SOA (Service Oriented Architecture)
• SOA pour rationnaliser l’interopérabilité
• La méthode proposée
1. Identification et spécification des processus collaboratifs
2. Identification, spécification et réalisation des services publics dirigés par le métier
• Conclusions & perspectives
CIM-Haut
CIM-Bas
PIM
PSM
Métier Processus Service Donnée
Code
LM²O
Objectifs Identification et conception de bout en bout des processus
collaboratifs Décrire les échanges des processus collaboratifs Capter la logique interne des processus collaboratifs
Type de la démarche Descendante
Langage de modélisation
Outils Modélisation des processus : Signavio Exécution des processus (BPMS): Bonitasoft
22
Méthode (1/2) : caractéristiques
LM²O 23
Méthode (2/2) : les différentes étapes
Les 7 étapes de la méthode d'identification et de spécification des processus interopérables
Spécification globale des processus
Identification des processus
Spécification détaillée des processus Réalisation des processus
LM²O
Les modèles CIM-Haut Ils s’intéressent à la collaboration d’un point de vue global sans
prendre en compte les problèmes d’informatisation Ils se focalisent sur l’échange d’informations entre les participants
Deux vues La vue globale détermine le périmètre de la future collaboration La vue détaillée représente les échanges des principaux flux
d’informations
24
CIM-Haut : identification des processus (1/3)
Conversation ArtefactsParticipant
Flows
Palette BPMN 2.0 pour les diagrammes de Conversation (niveau 1)
LM²O
Étape (1) : décrire les collaborations globalement avec un diagramme de conversation (vue globale)
25
CIM-Haut : identification des processus (2/3)
Diagramme de Conversation global entre les participants (CIM-Haut)
LM²O
Étape (1) : décrire les collaborations globalement avec un diagramme de conversation (vue globale)
26
CIM-Haut : identification des processus (2/3)
Diagramme de Conversation global entre les participants (CIM-Haut)
LM²O
Étape (2) : décrire les flux des messages liés à chaque Conversation (vue détaillée)
27
CIM-Haut : identification des processus (3/3)
Diagramme de Collaboration global « Apurement du T1 » CIM-Bas
LM²O
Les modèles CIM-Bas Ils représentent les exigences métiers des applications d’entreprise
Deux vues La vue globale se focalise sur les Conversations automatisables La vue détaillée décrit globalement les flux métiers des processus.
28
CIM-Bas : spécification globale des processus
Pools and lanes
Events
Gateways
Artefacts
ActivitiesTasks
Flows
Sub-processes
Palette BPMN pour la description des processus (niveau 2)
LM²O
Étape (3) : se focaliser sur les collaborations à automatiser dans le diagramme de conversation (vue globale)
29
CIM-Bas : spécification globale des processus
Diagramme de Conversation global des participants qui modifieront leurs systèmes d’information
LM²O
Étape (3) : se focaliser sur les collaborations à automatiser dans le diagramme de conversation (vue globale)
30
CIM-Bas : spécification globale des processus
Diagramme de Conversation global des participants qui modifieront leurs systèmes d’information
LM²O
Étape (4) : décrire la Collaboration globale liée à chaque Conversation automatisable (vue détaillée )
31
CIM-Bas : spécification globale des processus
Collaboration globale automatisable : « Apurement du T1 »
LM²O
Les modèles PIM Ils doivent fournir une vue suffisamment détaillée des processus Ils ne doivent pas contenir les détails liés à une plateforme spécifique
32
PIM (1/6) : spécification détaillée des processus
Palette BPMN pour l’analyse des processus (niveau 3)
LM²O 33
PIM (2/6) : spécification détaillée des processus
Étape (5) : décrire en détail la logique du flux du processus de chacun des participants de la collaboration
Étape (6) : choisir un type de collaboration et une approche d’interopérabilité
Processus de l’Importateur « Apurement du T1 »
LM²O 34
Les types de collaborations (1/3)
LM²O 35
Les types de collaborations (2/3)
LM²O 36
Les types de collaborations (3/3)
LM²O 37
PIM (3/6) : spécification détaillée des processus
La modélisation de « Apurement T1 » dans une coordination dans le cadre d’une approche d’interopérabilité unifiée
LM²O 38
PIM (4/6) : spécification détaillée des processus
La modélisation de « Apurement T1 » dans une vue centralisée de la coopération dans le cadre d’une approche d’interopérabilité fédérée
LM²O 39
PIM (5/6) : spécification détaillée des processus
La modélisation de « Apurement T1 » dans une coopération avec une vue distribuée dans le cadre d’une approche d’interopérabilité fédérée
LM²O 40
PIM (6/6) : spécification détaillée des processus
La modélisation de « Apurement du T1 » dans une coopération avec une vue distribuée dans le cadre d’une approche d’interopérabilité unifiée
LM²O
Utiliser les modèle BPMN 2.0 dans le BPMS (Bonita Open Solution)
41
PSM : réalisation des processus
Processus « Apurement document T1 » dans une coordination dans le cadre d’une approche d’interopérabilité unifiée avec BOS
Formulaires d’authentification et de saisie du document T1 générés par BOS
LM²O
42
Contenu de la présentation• Contexte et problématiques
• Les perspectives de SOA (Service Oriented Architecture)
• SOA pour rationnaliser l’interopérabilité
• La méthode proposée
1. Identification et spécification des processus collaboratifs
2. Identification, spécification et réalisation des services publics dirigés par le métier
• Conclusions & perspectives
CIM-Haut
CIM-Bas
PIM
PSM
Métier Service Donnée
Code
Processus
LM²O
Objectifs Montrer comment identifier, spécifier et réaliser des services au sens
SOA indépendamment de toute plateforme ou technologie
Type de démarche Descendante
Langages de modélisation
Outils Modélisation des services : Rational Software Architect (RSA) Plateforme de services : Entreprise Service Bus (ex: WSO2)
43
Méthode (1/5) : caractéristiques
LM²O 44
Méthode (2/5) : les différentes étapes
Spécification détaillée des services
Identification et spécification globale desservices
Réalisation des services
LM²O
45
Méthode (3/5) : les transformations de modèles
ModèleSource
ModèleCible
Partie Spécifique
Partie proche
Partie Spécifique
Partie proche
Méta-ModèleCible (UML) et Profil SoaML
Méta-ModèleSource (BPMN)
Concepts spécifiques
Concepts spécifiques
Concepts proches sémantiquement
Enrichissement
17 règles de
mapping
Connaissances supplémentaires
Transformation 2
Enrichissement
Connaissances supplémentaires
Transformation 1
LM²O
Deux types d’architecture de services visées : L’architecture globale des services publics de la collaboration L’architecture détaillée des services publics de la collaboration
46
Méthode (5/5) : un pattern de transformation
Résultat de la transformation d’un modèle BPMN en SoaML (syntaxes concrètes graphiques)
Black-box Pool (Participant)
MessageFlow
ServicesArchitecture de collaboration
CollaborationUse
Participant
ServiceContract
Property
Dependency
LM²O 47
Cas d’étude : mettre la marchandise en ESD
La Collaboration « mettre la marchandise en Entrepôt Sous Douane (ESD) »
LM²O
Étape (1) : identifier les participants de la collaboration
Étape (2) : identifier les capacités des participants de la collaboration
48
CIM-Bas : identification des services (1/5)
Les participants de la collaboration
Les capacités des services candidats
LM²O
Étape (3) : identifier les rôles et les responsabilités des participants
Étape (4) : identifier les types d’interactions de la collaboration
49
Interactions Rôles du
consommate
ur
Rôles du
fournisseur
Types
Initialiser la déclaration
de mise en ESD
Déclencheur
(Mediateur)
Initiateur
(Fournisseur)
Unidirectionnell
e
Compléter la
déclaration de mise en
ESD
Demandeur
(Mediateur)
Bénéficiaire
(Importateur)
Bidirectionnelle
CIM-Bas : identification des services (2/5)
LM²O
Étape (5) : identifier les Consumers et les Providers
50
CIM-Bas : identification des services (3/5)
Le consommateur
Les fournisseursLes fournisseursLes fournisseursLes fournisseurs
Dérivation des Consumers et Providers des capacités
LM²O
Étape (6) : décrire les contrats de services Un contrat de service permet de modéliser une obligation
contractuelle ou un accord entre différentes parties
51
CIM-Bas : identification des services (4/5)
Contrat du service complétion déclaration
Contrat de service
ProviderRôle
Consumer
LM²O
Étape (7) : décrire l’architecture globale des services publics
52
CIM-Bas : identification des services (5/5)
Architecture globale des services publics de la collaboration
LM²O
Étape (8) : décrire les interfaces de services des interactions bidirectionnelles Concerne les services évoluant dans des interactions bidirectionnelles Précise comment un service doit être consommé et implémenté
53
PIM : spécification détaillée des services (1/2)
Interface de service
Diagramme de séquence
Spécification de l’interface de service CompletionDeclarationSI
LM²O
Étape (9) : spécifier les messages des données échangées entre les différents services
54
PIM : spécification détaillée des services (2/2)
Les données pour établir une déclaration de mise en ESD
LM²O
Spécifier les composants de la solution SOA Étape (10) : Spécifier les signatures des opérations des services Étape (11) : Identifier le consommateur et le fournisseur de chaque service
55
PIM : réalisation des services (1/4)
Ajout du service nommé completionDeclarationService à l’Importateur
L’interface que le fournisseur du service doit implémentée
L’interface que le consommateur du service doit implémentée
Port service
LM²O 56
PIM : réalisation des services (2/4)
Les services requis et fournis par le participant Mediateur
LM²O 57
PIM : réalisation des services (2/4)
Les services requis et fournis par le participant Mediateur et implémentation de l’opération declarationMiseEnESD
1
1
2
2
3
3
4
4
LM²O
Étape (12) : assembler les services pour concevoir la solution SOA
58
PIM : réalisation des services (3/4)
Assemblage des parties du participant Acheteur
Orchestration des services par le MediateurLM²O
.
LM²O
Étape (13) : décrire l’architecture détaillée de la collaboration
59
PIM : réalisation des services (4/4)
Architecture détaillée des services publics de la collaboration
LM²O
Exemples de génération de code
60
Code : complétion du code de la solution SOA
Les éléments XSD générés à partir du modèles des données
Les définitions WSDL générés à des modèles de spécification SoaML
Le code WS-BPEL de l’opération declarerMiseEnESD du service DeclarationService du participant MediateurLM²O
1 2
3
LM²O
61
Contenu de la présentation• Contexte et problématique
• Les perspectives de SOA (Service Oriented Architecture)
• SOA pour rationnaliser l’interopérabilité
• La méthode proposée
• Conclusions & Perspectives
LM²O
SOA et BPM pour une mise en œuvre complète de l’alignement entre le métier et l’IT
Proposition d’un cadre de référence pour l’alignement métier-IT
Implémentation d’une transformation entre les formalismes BPMN et SoaML
Proposition d’une grille pour prendre en compte les différents aspects de l’interopérabilité
62
Conclusion (1/3)
CIM-Haut
CIM-Bas
PIM
PSM
Métier Processus Service Donnée
Code
LM²O
Conclusion (2/3)
63 LM²O
41
2 5
3 6 7 8
9 1110
LM²O
L’influence du type de collaboration et de l’approche d’interopérabilité sur la conception des processus et des services.
64
Conclusion (3/3)
La coopération avec une vue distribuée dans le cadre d’une approche d’interopérabilité fédérée
La coopération avec une vue distribuée dans le cadre d’une approche d’interopérabilité unifiée
LM²O
Méthode proposée Prendre en compte les transformations horizontales de MDI Améliorer la transformation entre BPMN et SoaML Étendre la méthode proposée pour faire migrer des systèmes
patrimoniaux (legacy systems) vers le cloud computing
D’autres perspectives Un Moteur d’Exécution de Processus capable d’exécuter une
coopération avec une vue centralisée dans le cadre d’une approche d’interopérabilité fédérée
65
Perspectives
Relation entre les approches d’interopérabilité et les types de collaboration
LM²O 66
Évolution historique de l’architecture orientée service (SOA)
Évolution historique de l’architecture orientée service (SOA) sur le Hype Cycle du Gartner
Travail accompli
2012
Directeur de thèse : Jean-Pierre Bourey (LM²O)Co-directeur de thèse : Michel Bigand (LM²O)
12/04/2023
Proposition d’une méthode de spécification d’une architecture orientée services dirigée
par le métier dans le cadre d’une collaboration inter-organisationnelle
Thèse de doctorat en Génie industriel
Youness LEMRABET
LM²O
LM²O
68
Références• http://www.business-opportunities.biz/mlm/2008/02/28/two-biggest-problems-for-your-mlm-team/
problem-guy/
LM²O
Question: que représente un processus métier dans SOA ? Deux visions s’opposent:
Les processus métiers sont positionnés au-dessus des services métier Le processus métier qui invoque un service fait lui-même partie d’un
autre service métier
70
BPM et SOA : Concurrence ou synergie (2/3)?
Figure 8: Processus métier et service métier
1
1
2 2
3
554
5