69
Directeur de thèse : Jean-Pierre Bourey (LM²O) Co-directeur de thèse : Michel Bigand (LM²O) 22/06/2022 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

Présentation

Embed Size (px)

Citation preview

Page 1: Présentation

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

Page 2: Présentation

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

Page 3: Présentation

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

Page 4: Présentation

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)

Page 5: Présentation

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

Page 6: Présentation

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)

Page 7: Présentation

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

Page 8: Présentation

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

Page 9: Présentation

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

Page 10: Présentation

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

Page 11: Présentation

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

Page 12: Présentation

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

Page 13: Présentation

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

Page 14: Présentation

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

Page 15: Présentation

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)

Page 16: Présentation

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)

Page 17: Présentation

LM²O 17

Cadre d’interopérabilité d’entreprise

Vue simplifiée du Framework conceptuel défini par AIF (ATHENA01, 2007)

Page 18: Présentation

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

Page 19: Présentation

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

Page 20: Présentation

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

Page 21: Présentation

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

Page 22: Présentation

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

Page 23: Présentation

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

Page 24: Présentation

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)

Page 25: Présentation

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)

Page 26: Présentation

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)

Page 27: Présentation

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

Page 28: Présentation

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)

Page 29: Présentation

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

Page 30: Présentation

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

Page 31: Présentation

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 »

Page 32: Présentation

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)

Page 33: Présentation

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 »

Page 34: Présentation

LM²O 34

Les types de collaborations (1/3)

Page 35: Présentation

LM²O 35

Les types de collaborations (2/3)

Page 36: Présentation

LM²O 36

Les types de collaborations (3/3)

Youness
inversion des activités des processus
Page 37: Présentation

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

Page 38: Présentation

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

Page 39: Présentation

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

Page 40: Présentation

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

Page 41: Présentation

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

Page 42: Présentation

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

Page 43: Présentation

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

Page 44: Présentation

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

Page 45: Présentation

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

Page 46: Présentation

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

Page 47: Présentation

LM²O 47

Cas d’étude : mettre la marchandise en ESD

La Collaboration « mettre la marchandise en Entrepôt Sous Douane (ESD) »

Page 48: Présentation

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

Page 49: Présentation

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)

Page 50: Présentation

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

Page 51: Présentation

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

Page 52: Présentation

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

Page 53: Présentation

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

Page 54: Présentation

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

Page 55: Présentation

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

Page 56: Présentation

LM²O 56

PIM : réalisation des services (2/4)

Les services requis et fournis par le participant Mediateur

Page 57: Présentation

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

Page 58: Présentation

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

.

Page 59: Présentation

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

Page 60: Présentation

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

Page 61: Présentation

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

Page 62: Présentation

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

Page 63: Présentation

LM²O

Conclusion (2/3)

63 LM²O

41

2 5

3 6 7 8

9 1110

Page 64: Présentation

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

Page 65: Présentation

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

Page 66: Présentation

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

Page 67: Présentation

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

Page 68: Présentation

LM²O

68

Références• http://www.business-opportunities.biz/mlm/2008/02/28/two-biggest-problems-for-your-mlm-team/

problem-guy/

Page 69: Présentation

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