• Aucun résultat trouvé

Un Environnement Graphique pour la Conception du Comportement de l’Internet des Objets: une Approche basée sur les Processus Métier

N/A
N/A
Protected

Academic year: 2021

Partager "Un Environnement Graphique pour la Conception du Comportement de l’Internet des Objets: une Approche basée sur les Processus Métier"

Copied!
103
0
0

Texte intégral

(1)

Scientifique

Université Mohamed Seddik Ben Yahia de Jijel Faculté de science exacte et Informatique

Département d’Informatique

MEMOIRE DE FIN D’ETUDE

En vue de l’obtention du diplôme Master recherche en Informatique SYSTEM D’INFORMATION ET AIDE A LA DECISION

Un Environnement Graphique pour la Conception du Comportement de l’Internet des Objets: une Approche basée sur les Processus Métier

Réalisé par: Encadré par:

REZALI milila Dr.KERKOUCHE elhilali

TITI lydia

Année universitaire 2019-2020

(2)
(3)

Je dédie ce travail :

* À mes chers parents, pour leur soutient et leur patience ;

* À Mes chères sœurs ;

* À Mes neveux ;

* À mes Amies;

* À mon binôme Milila;

* À Tous mes enseignants depuis mes premières années d’études ;

* À Tous les membres de ma promotion ;

* À Tous ceux qui j’aime et ceux que m’aiment.

(4)

Je dédie ce travail :

À mes très chers parents

pour votre amour inconditionnel, votre soutien éternel et votre confiance en moi je vous aime infiniment ;

À mes chers frères et sœurs

pour votre soutient, votre amour et votre présence à chaque étape de ma vie ;

À mes neveux et nièces je vous aime infiniment ;

À mes beaux frères et belle sœurs

Je vous suis très reconnaissante pour votre soutien et votre compréhension ;

À ma grande famille

pour être la quand j’ai besoin de vous ;

À mes meilleurs amies je vous aime ;

À mon binôme Lydia ; À tous mes collègues;

(5)

Nous tenons tout d’abord à remercier Dieu le tout puissant, qui nous a

donné la force e la patience d’accomplir ce modeste travail.

En second lieu, nous tenons à remercier notre encadreur Mr

Kerkouche El-hillali

pour ses précieux conseils et son aide durant la

période du travail.

Nos vifs remerciements vont également aux membres du jury pour

l’intérêt qu’ils ont porté à notre recherche en acceptant d’examiner

notre travail pendant cet épidémie mondiale de covid-19.

Enfin, nous tenons également à remercier toutes les personnes qui ont

participé de près ou de loin à la réalisation de ce travail. Merci à tous et

(6)

L’Internet des objets (Internet of Things (IoT) en Anglais) est une révolution technologique de l’information et de la communication qui génère de nouvelles formes de communication entre les objets du monde réel. Les processus opérationnels commencent à tirer parti de l’IoT pour interagir avec l’environnement physique qui est de plus en plus connecté et dynamique. La littérature récente s’est concentrée sur l’analyse de la façon dont cette interaction entre les processus et les dispositifs IoT peut être modélisée. Ces processus sont modélisés à l’aide de méthodes telle que la méthode BPMN (Business Process Modeling Notation). D’autre part, la notion de méta-modèle est centrale à l’Ingénierie Dirigée par les Modèles (IDM), un ensemble de pratiques qui ont en commun la création et l’utilisation de modèles pour conceptualiser un domaine d’application.

Le travail présenté dans ce mémoire s’inscrit dans l’IDM. Notre objectif est de proposer un environnement graphique de modélisation capable de modéliser les applications IoT en se basant sur le langage de modélisation de processus métier BPMN 2.0 sous la plateforme Eclipse Modeling Tools.

Mots clés : IoT, Processus Métier, BPMN, Workflow, Ingénierie Dirigée par les Modèles, Meta-modélisation, Eclipse Modeling Tools.

(7)

The Internet of Things (IoT) is a technological revolution in information and communi-cation that generates new forms of communicommuni-cation between real-world objects. Operational processes begin to leverage IoT to interact with the increasingly connected and dynamic physi-cal environment. Recent literature has focused on the analysis of how this interaction between IoT processes and devices can be modelled. These processes are modelled using methods such as the Business Process Modeling Notation (BPMN) method. In the other Hand, the meta-model concept is central to meta-model-driven engineering, a set of practices that share the creation and use of models to conceptualize an area of application.

The work presented in this project is part of MDE (Model Driving Engineering) for the purpose of proposing a graphical modeling environment able to model the IoT applications based on BPMN 2.0 language under Eclipse Modeling Tools platform.

Keywords: IoT, Workflow, BPMN, Model Driving Engineering, Model, Meta modeling, Eclipse Modeling Tools.

(8)

Résumé i

Abstract ii

Liste des figures ix

Liste des tableaux xii

Liste des acronymes xiii

Introduction générale 1

1 Internet des Objet ( Internet of Things (IoT)) 3

1.1 Introduction . . . 3

1.2 Définition de l’Internet des objets . . . 3

1.3 Historique de l’Internet des objets . . . 4

1.4 Domaines d’application de l’Internet des Objets . . . 5

1.4.1 L’Internet des Objets dans les villes intelligentes . . . 5

1.4.2 L’Internet des Objets appliquée à la domotique . . . 6

1.4.3 L’Internet des Objets appliquée à la santé . . . 7

(9)

1.4.5 L’Internet des Objets appliquée à l’agriculture . . . 8

1.5 Caractéristique de l’Internet des Objets . . . 8

1.6 L’architecture de l’Internet des Objets . . . 9

1.7 Défis liés à l’Internet des Objets . . . 11

1.7.1 Scalabilité . . . 11

1.7.2 Interopérabilité . . . 11

1.7.3 Configuration autonome . . . 11

1.7.4 Sécurité . . . 11

1.7.5 Consommation d’énergie . . . 12

1.7.6 Gestion des données . . . 12

1.8 Modélisation des applications IoT dans le plus haut niveau d’abstraction . . . . 12

1.8.1 Notation de modélisation . . . 13

1.8.1.1 SYSML (System Modeling Language) . . . 13

1.8.1.2 TheThingML (Internet of Things Modeling Language) . . . 13

1.8.1.3 UML4IOT (Unified Modeling Langage For the Internet of Things) 14 1.8.1.4 BPMN (Business Process Modeling Notation) . . . 14

1.8.2 Modélisation de l’IoT . . . 15

1.8.2.1 Le modèle de domaine de l’IoT . . . 15

1.9 Conclusion . . . 16

2 Le langage BPMN (Business Process Modeling Notation) 17 2.1 Introduction . . . 17

2.2 Processus métier . . . 17

2.2.1 Définition de Processus . . . 17

2.2.2 Définition de processus métier . . . 18

(10)

2.3.1 Définition Gestion des processus métier (BPM) . . . 19

2.3.2 Le cycle de vie de BPM . . . 19

2.3.3 Avantages d’un système BPM . . . 21

2.3.4 Pourquoi modéliser les processus métiers ? . . . 22

2.4 Workflow . . . 22

2.4.1 Définition de Workflow . . . 22

2.4.2 Différence entre processus métier et workflow . . . 23

2.5 La modélisation et langage de modélisation des processus métier . . . 23

2.5.1 Le standard BPMN . . . 23 2.5.2 Histoire de BPMN . . . 24 2.5.3 Notation BPMN 2.0 . . . 25 2.5.3.1 Les éléments de BPMN 2.0 . . . 25 2.5.4 Exemple de processus BPMN . . . 33 2.5.5 Types de diagrammes BPMN . . . 34 2.5.5.1 Diagramme de processus . . . 34 2.5.5.2 Diagramme de chorégraphie . . . 36 2.5.5.3 Diagramme de collaboration . . . 37 2.5.5.4 Diagramme de conversation . . . 38

2.6 La convenance des BPMN pour modéliser les applications IoT . . . 38

2.6.1 Pourquoi utiliser la norme BPMN ? . . . 39

2.6.1.1 La simplicité et l’expressivité . . . 39

2.6.1.2 Extension dans BPMN . . . 39

2.6.2 Intégration de l’IoT dans BPMN . . . 39

2.6.2.1 Le model de domaine de l’IoT dans la norme BPMN . . . 40

(11)

2.7 Conclusion . . . 43

3 Ingénierie Dirigée par les Modèles (IDM) 44 3.1 Introduction . . . 44

3.2 Ingénierie Dirigée par les Modèles (IDM) . . . 44

3.2.1 Définition d’Ingénierie Dirigée par les Modèles (IDM) . . . 44

3.2.2 Notion de base en Ingénierie Dirigée par les Modèles . . . 45

3.2.2.1 Système . . . 45 3.2.2.2 Modèle . . . 45 3.2.2.3 Meta-modèle . . . 45 3.2.2.4 Méta-méta-modèle . . . 45 3.2.3 Transformation de modèles . . . 46 3.2.3.1 Types de transformation . . . 47

3.2.3.2 Les transformations verticales . . . 47

3.2.3.3 Les transformations horizontales . . . 47

3.2.3.4 Les transformations obliques . . . 47

3.2.4 Les approches de transformation des Modèles . . . 48

3.2.4.1 Les transformations Modèles vers Modèles . . . 48

3.2.4.2 Les transformations modèles vers code . . . 49

3.2.5 Avantage et inconvénient de l’IDM . . . 49

3.2.5.1 Avantages de l’IDM . . . 49

3.2.5.2 Inconvénient de l’IDM : . . . 50

3.2.6 Les outils de l’IDM . . . 50

3.3 Outils de modélisation . . . 51

3.3.1 Les origines de la fondation Eclipse . . . 51

(12)

3.3.1.2 Eclipse Modeling Tools . . . 52

3.3.2 La plate-forme de modélisation sous Eclipse Modeling Tools . . . 52

3.3.2.1 Eclipse Modeling Framework (EMF) : . . . 52

3.3.2.2 objective d’Eclipse Modeling Framework : . . . 53

3.3.2.3 Les formats d’entrée standard : . . . 54

3.3.3 Graphical Editing Framework (GEF) . . . 55

3.3.4 Graphical Modeling Framework GMF : . . . 55

3.3.4.1 Composants de GMF : . . . 55

3.3.4.2 Editeur de diagramme avec GMF . . . 55

3.3.5 Application Rich Client Plateform (RCP ) . . . 56

3.4 Conclusion . . . 56

4 Développement d’un Environnement de Modélisation Graphique pour les Applica-tions IoT 58 4.1 Introduction . . . 58

4.2 La Méta-Modélisation de la notation BPMN . . . 58

4.2.1 Méta-modèle . . . 59

4.2.2 Les composants du Méta-modèle . . . 62

4.2.2.1 Les classes . . . 62

4.2.2.2 Les associations . . . 65

4.3 Génération d’un éditeur arborescent pour la création des instances du méta-modèle proposé . . . 66

4.3.1 Génération du code . . . 66

4.3.2 Utilisation de l’éditeur arborescent . . . 67

4.4 Développement d’un Éditeur Graphique avec GMF . . . 69

4.4.1 La création du projet . . . 69

(13)

4.4.2.1 Etape 1 : Domain Model et Domain Gen Model . . . 69

4.4.2.2 Etape 2 : Graphical Definition Model . . . 69

4.4.2.3 Etape 3 : Tooling Definition Model . . . 71

4.4.2.4 Etape 4 : Mapping Model . . . 73

4.4.2.5 Etape 5 : Diagram Editor Gen Model . . . 74

4.4.3 La représentation textuelle . . . 74

4.4.4 Utilisation de l’Environnement Graphique . . . 76

4.5 Utilisation de l’Environnement Graphique proposé pour modéliser le comporte-ment des applications IoT . . . 78

4.6 Conclusion . . . 78

Conclusion générale 79

(14)

1.1 Domaine d’application de l’Internet des Objets . . . 5

1.2 L’architecture de l’Internet des objets. . . 9

2.1 Un exemple de processus métier. . . 18

2.2 Cycle de vie BPMN. . . 19

2.3 Historique de l’évolution du standard BPMN. . . 24

2.4 Les différents éléments de BPMN 2.0. . . 25

2.5 Les types des tâches dans BPMN 2.0. . . 26

2.6 Sous-processus et activité d’appel dans BPMN 2.0. . . 27

2.7 Événements dans BPMN 2.0 . . . 27

2.8 Les types d’événements de BPMN2.0. . . 28

2.9 Les branchements de BPMN 2.0. . . 29

2.10 Les flux de séquence de BPMN 2.0. . . 30

2.11 Les flux de message de BPMN 2.0. . . 30

2.12 Les associations de BPMN 2.0. . . 31

2.13 La représentation d’un pool en BPMN 2.0. . . 31

2.14 La représentation d’un pool comme boîte noire en BPMN 2.0. . . 31

(15)

2.16 Les données de BPMN 2.0. . . 32

2.17 Les artéfacts. . . 33

2.18 Exemple de processus d’irrigation modélisé en BPMN [38]. . . 34

2.19 Exemple de processus privé [39]. . . 35

2.20 Exemple de processus public [39]. . . 36

2.21 Exemple de chorégraphie [39]. . . 37

2.22 Exemple d’une collaboration [39]. . . 37

2.23 Exemple d’un Diagramme de conversation. . . 38

3.1 Pyramide de l’OMG. . . 46

3.2 Schéma de base d’une transformation de modèles. . . 47

4.1 Extension du méta-modèle BPMN 2.0 sous Eclipse Modeling Tools . . . 60

4.2 Représentation des dispositifs IoT dans le méta-modèle. . . 61

4.3 Représentation de flux de séquence dans le méta-modèle. . . 61

4.4 Représentation de flux de message dans le méta-modèle. . . 62

4.5 Représentation de flux Data dans le méta-modèle. . . 62

4.6 La génération du fichier bpmn4IoTFIN.genmodel. . . 66

4.7 Le résultat de la génération du fichier bpmn4IoTFIN.genmodel. . . 66

4.8 La configuration utilisée pour l’exécution. . . 67

4.9 La création du Bpmn4IoTFIN Model. . . 68

4.10 La représentation arborescente. . . 68

4.11 Le dashboard GMF. . . 69

4.12 la sélection des éléments graphique. . . 70

4.13 Une partie de La structure du fichier gmfgraph. . . 71

4.14 Sélection des éléments de tooling. . . 72

(16)

4.16 La structure du fichier gmfmap. . . 74

4.17 Pluging xml du projet BPMN4IoTsystem. . . 75

4.18 La forme XML du fichier gmfmap. . . 75

4.19 pluging xml du projet BPMN4IoTsystem.Diagram. . . 76

4.20 la création du model BPMN4IoTsystem Diagram. . . 77

4.21 la palette du l’éditeur graphique. . . 77

(17)

4.1 Description des classes du méta-modèle proposé. . . 64 4.2 Description des compositions du méta-modèle proposé. . . 65 4.3 Description des Références du méta-modèle proposé. . . 65

(18)

• IoT : Internet of Things.

• BPM : Business Process Management.

• BPMN: Business Process Management Notation. • BPMI : Business Process Management Initiative . • OMG : Object Management Group.

• API : Application Programming Intrerface. • RFID: Radio Frequency IDentification. • IDM : Ingénierie Dirigée par les Modèles. • EMF : Eclipse Modeling Framework. • GEF : Graphical Editing Framework. • GMF : Graphical Modeling Framework. • RCP : Application Rich Client Plateform. • UML : Unified Modeling Language. • XML : Extensible Markup Language. • XMI : XML Metadata Interchange. • XED : XML Enabled Directory.

• ATL : ATLAS Transformation Language. • MOF : Meta Object Facility

(19)

Internet est devenu le vecteur principal de diffusion de l’information, et il s’est imposé dans de nombreux domaines comme une infrastructure essentielle pour les individus, les en-treprises et les institutions [1]. L’Internet se transforme progressivement en un réseau étendu, appelé Internet des Objets [2]. L’Internet des Objets que l’on appelle aussi Internet of Things (IoT) est un nouveau paradigme qui gagne du terrain de jour en jour dans le monde des télé-communications et des réseaux informatiques. L’apparition de ce concept est due à la var-iété des équipements et des objets qu’on utilise dans notre vie quotidienne (ordinateurs, cap-teurs, actionneurs, smartphones, véhicules connectés, smart homes, etc). L’IoT est une no-tion complexe basée sur des protocoles de communicano-tion interopérables afin de permettre l’interaction et l’intégration des objets virtuelles ainsi que physiques.

Par ailleurs, le concept de processus métier s’est largement installé durant les dernières années. L’approche processus consiste à décrire de façon méthodique une organisation ou un ensemble d’activités en processus de façon à les organiser de manière cohérente et logique. La modélisation de processus a pour but la production d’abstraction du processus qui accomplit des missions, des activités, ou des tâches. De plus, elle servira aussi de base pour une défini-tion détaillée afin d’organiser le travail et d’éliminer les activités inutiles. La modélisadéfini-tion doit permettre une compréhension claire et transparente des activités considérées, les dépendances entre les activités et les rôles nécessaires pour le processus. Dans ce cadre, le langage BPMN 2.0 (Business Process Modeling Notation) [3] est largement utilisé comme un standard incon-tournable en ingénierie des processus métiers. En effet, ce langage est une notation abstraite et graphique ayant pour objectif de fournir un cadre permettant de décrire un processus d’une manière lisible et compréhensible.

Objectifs :

Notre objectif est de proposer une piste pour la modélisation (à un haut niveau d’abstraction) des applications IoT basée sur le langage de modélisation de processus métier BPMN 2.0. Plus précisément, nous proposons une adaptation au langage BPMN pour supporter la modélisa-tion des applicamodélisa-tions IoT. Pour ce faire, nous allons adopter la démarche "Ingénierie Dirigée par les Modèles (IDM)" et ses outils. L’IDM est une approche de développement mettant à

(20)

dis-position des langages et des environnements pour ces langages afin de simplifier et de mieux maitriser le processus de développement de systèmes. Elle est fondée principalement sur la méta-modélisation qui permet de définir des nouveaux langages ou d’adapter des langages existants à des besoins spécifiques à un domaine. Les outils de l’IDM, quant à eux, perme-ttent de générer des environnements de modélisations selon les définitions décrites dans les méta-modèles.

Notre travail consiste à définir un méta-modèle du langage BPMN adapté à la modélisation des applications IoT. Le méta-modèle proposé sert comme une définition du langage BPMN adapté ce qui va permettre de générer un environnement graphique. Il est à noter que nous avons utilisé la plate-forme Eclipse Modeling Tools [4] en exploitant ses plug-ins EMF (Eclipse Modeling Framework) et GMF (Graphical Modeling Framework) pour réaliser notre travail.

Plan de mémoire :

Ce mémoire est organisé en quatre chapitres, ces chapitres sont précédés par une introduction générale et succédés par une conclusion générale:

Chapitre 1:présente l’Internet des Objets (IoT). Il est dédié à éclaircir la notion de l’IoT, plus particulièrement: ses concepts, son historique, ses domaines d’applications, son architecture, ses exigences et ses défis.

Chapitre 2 :se décompose en deux parties :

1. La première partie présente le langage BPMN: l’approche de gestion de processus d’entreprise, son historique et son cycle de vie.

2. La deuxième partie présente la convenance des BPMN pour modéliser les applica-tions IoT.

Chapitre 3: est consacré à la présentation de la démarche Ingénierie Dirigée par les Modèles (IDM) et les outils utilisés pour déployer notre approche.

Chapitre 4: présente les détails de la partie mise en œuvre de notre travail pour le développement d’un Environnement de modélisation graphique pour les applications IoT.

Ce mémoire s’achève par une conclusion générale présentant un récapitulatif du contexte de notre travail et les perspectives que nous envisageons pour compléter ce travail.

(21)

Chapitre

1

Internet des Objet ( Internet of Things

(IoT))

1.1

Introduction

L’Internet se transforme progressivement à l’échelle mondiale. L’Internet des Objets (IoT) est le paradigme de communication récent qui envisage un avenir proche, il s’agit de l’extension de l’Internet au monde réel des objets. Le concept de l’IoT vise à rendre l’Internet encore plus immersive et envahissante, en permettant un accès facile et une l’interaction avec une grande variété de dispositifs tels que, appareils électroménagers, caméras de surveillance.

Dans ce chapitre nous allons introduire les concepts généraux de l’IoT, en suite nous allons voir la modélisation de ce dernier dans le plus haut niveau d’abstraction.

1.2

Définition de l’Internet des objets

Plusieurs définitions ont été données pour mieux comprendre le concept de l’Internet des Objets, parmi ces définitions on peut citer les suivantes:

• Le CERP-IDO (Cluster des projets européens de recherche sur l’Internet des Objets) définit l’Internet des objets comme : « une infrastructure dynamique d’un réseau global. Ce réseau global a des capacités d’auto-configuration basée sur des standards et des pro-tocoles de communication interopérables. Dans ce réseau, les objets physiques et virtuels ont des identités, des attributs physiques, des personnalités virtuelles et des interfaces intelligentes, et ils sont intégrés au réseau d’une façon transparente » [5].

(22)

suit [6] : « L’IoT est l’infrastructure mondiale pour la société de l’information, qui permet de disposer de services avancés par l’interconnexion des objets (physiques ou virtuels) grâce aux technologies de l’information et de la communication interopérables existantes ou en évolution » [7].

• L’Internet des objets est un réseau qui relie et combine tout objet identifiable avec Inter-net, en suivant les protocoles qui assurent leur communication et échange d’informations à travers une variété de dispositifs de détection de l’information. Une série d’opérations intelligentes impliquant l’identification, l’emplacement, le suivi, le contrôle et la gestion d’objet, peut être réalisée [8].

• L’auteur de [9] définit l’IoT comme suit : « Un réseau de réseaux qui permet, via des dispositifs d’identification électronique d’entités physiques ou virtuelles, dites « objets connectés », et des systèmes de communication appropriés, sans fil notamment, de com-muniquer directement et sans ambiguïté, y compris au travers de l’Internet, avec ces objets connectés et ainsi de pouvoir récupérer, stocker, transférer et traiter sans discon-tinuité les données s’y rattachant » [10].

1.3

Historique de l’Internet des objets

L’Internet des Objets a eu naissance depuis les années 90, et a pu évoluer comme suit [6] : • Le début des années 90 : le concept de contrôle à distance des équipements électriques

et électroniques « objets » est bien connu, des grille-pains connectés et autres machines à café reliées à Internet.

• En 1995: le fondateur de Microsoft, Bill Gates, a mentionné dans le livre « The Road Ahead » le concept de l’Internet des objets pour la première fois.

• En 1998: au Massachusetts Institute of Technology (MIT), Kevin Ashton a proposé la notion d’Internet des objets.

• En 1999: le laboratoire Auto-IDest d’ailleurs spécialisé dans la création d’objets connec-tés à l’aide de l’identification par radio fréquence et des réseaux de capteurs sans fil. • En 2005: l’International Télécommunication Union (ITU) publie « IUT Rapport d’Internet

2005 : l’Internet des objets », donnant naissance à un nouveau concept, « l’Internet des objets », traitant de la connexion entre mondes réel et virtuel. Il a aussi envisagé qu’avec l’application des technologies telles que l’identification par radio fréquence (RFID), les capteurs sans fil et les nanotechnologies, Internet pourrait s’étendre à des objets bien réels.

• En 2009: la Commission européenne publie « L’Internet des objets: le plan d’action européen » qui présente les perspectives et les enjeux de son développement sur le sujet et propose un plan de développement et d’actions autour de l’Internet des objets.

(23)

• En 2012: il existe environ 8,2 milliards d’objets connectés dans le monde.

1.4

Domaines d’application de l’Internet des Objets

L’Internet des Objets offre de nombreuses applications à ses utilisateurs dans différents domaines, parmi celles-ci on peut citer les suivantes :

Figure 1.1: Domaine d’application de l’Internet des Objets .

1.4.1 L’Internet des Objets dans les villes intelligentes

Le terme “Smart Cities” (ou villes intelligentes en français) est utilisé pour désigner l’écosystème cyber physique surveillant l’état des infrastructures urbaines (routes, ponts, tunnels, métros, aéroports, lignes de transport d’électricité et d’eau).

La demande pour mettre en œuvre la technologie de l’Internet des objets dans tous les aspects exige une planification minutieuse à chaque étape, avec l’appui des gouvernements et des citoyens [6].

Grâce à des services avancés, les villes peuvent être améliorées à plusieurs niveaux. On peut citer les suivants [11] :

(24)

• Santé structurelle (Structural Health) : surveillance continue des vibrations et des conditions matérielles dans les bâtiments, les ponts et les monuments historiques, et l’identification des zones les plus touchées par l’impact des agents externes.

• Éclairage (Lightning) : éclairage intelligent et adapté aux conditions météorologiques dans les lampadaires.

• Sécurité : surveillance vidéo numérique, gestion de la lutte contre les incendies, sys-tèmes d’annonce publique.

• Transports (Transportation) : routes intelligentes et voies de circulation intelligentes avec messages d’avertissement et dérivations en fonction des conditions climatiques et des événements inattendus comme les accidents ou les embouteillages.

• Parking intelligent (SmartParking ) : surveillance en temps réel de la disponibilité des places de parking dans la ville permettant aux résidents d’identifier et de réserver les espaces disponibles les plus proches.

• Gestion des déchets (Waste Management) : détection des niveaux de déchets dans les conteneurs pour optimiser les itinéraires de collecte des déchets. Les poubelles et les bacs de recyclage munis d’étiquettes RFID1 permettent au personnel d’assainissement de voir quand les ordures ont été jetées.

1.4.2 L’Internet des Objets appliquée à la domotique

La domotique est l’ensemble des techniques utilisées dans l’habitation. Les bâtiments équipés par des technologies de l’Internet des objets sont appelés bâtiments intelligents (Smart Building) ou maisons intelligentes (Smart Home) [12].

Grâce à l’évolution des capteurs, des technologies d’actionnement et des réseaux de cap-teurs sans fil2les gens font aujourd’hui confiance à la technologie pour répondre à leurs be-soins d’améliorer leurs vie et la sécurité de leurs foyers. Cela a permis aux maisons intelli-gentes de devenir de plus en plus populaires.

Dans les smart homes, des services intelligents et automatisés sont fournis à l’utilisateur par le déploiement de différents capteurs aidant à automatiser les tâches quotidiennes et à maintenir la routine des personnes. Les capteurs de mouvement peuvent aussi être utilisés en plus pour la sécurité [1].

Les appareils électroménagers peuvent être commandés automatiquement à distance à par-tir de n’importe quel endroit connecté à Internet dans le monde en utilisant un appareil

mo-1RFID Radio Frequency Identification est une technologie sans fil qui est utilisée pour l’identification des objets. Elle englobe toutes les technologies qui utilisent des ondes radio pour identifier automatiquement des objets ou des personnes.

2Un réseau de capteurs sans fil est un réseau ad hoc avec un grand nombre de nœuds qui sont des micro-capteurs capables de récolter et de transmettre des données environnementales d’une manière autonome.

(25)

bile ou un autre appareil en réseau. Un réfrigérateur avec écran LCD indiquant ce qui est à l’intérieur, la nourriture qui est sur le point d’expirer, les ingrédients que vous devez acheter et avec toutes les informations disponibles sur une application Smartphone [11].

1.4.3 L’Internet des Objets appliquée à la santé

Les appareils IoT ont été prouvés très bénéfiques dans le domaine de la santé et du bien-être. Un certain nombre d’applications ont lieu dans ce domaine grâce à l’utilisation des technologies de l’Internet des objets. Des capteurs et un cloud doivent recueillir, analyser et stocker des informations médicales complètes pour surveiller en permanence l’état physi-ologique et enregistrer les conditions de santé des patients dans les hôpitaux. Les applications de santé rendent la vie autonome possible pour les personnes âgées et les patients souffrant de problèmes de santé graves. Actuellement, des capteurs IoT sont utilisés pour enregistrer leurs conditions de santé et transmettre des avertissements s’il y a des indicateurs anormaux. L’application IoT elle-même peut suggérer une prescription au patient en cas du problème [1]. L’utilisation de capteurs et d’applications mobiles, permet aux personnes de surveiller leurs activités quotidiennes [11] :

• Réfrigérateurs médicaux : contrôle des conditions à l’intérieur des congélateurs entre-posant les vaccins, les médicaments et les éléments organiques.

• Soins dentaires : brosse à dents connectée par Bluetooth avec l’application Smartphone analyse le brossage et donne des informations privées ou pour le suivi du dentiste. • Surveillance des activités physiques : capteurs sans fil placés sur le matelas pour la

Détection de petits mouvements (respiration, la fréquence cardiaque) et de grands mou-vements (les moumou-vements de rotation pendant le sommeil), et la fourniture des données disponibles via une application sur le Smartphone.

1.4.4 L’Internet des Objets appliquée aux réseaux intelligents

Le smart grid est défini comme « un réseau électrique qui se compose d’un système de solu-tions infrastructurelles, matérielles et logicielles qui permettent une communication bidirec-tionnelle entre toutes les parties du système et les participants et fournissent une production et une distribution d’électricité efficaces dans la chaîne d’approvisionnement » [13].

La demande croissante d’électricité a mené les gouvernements du monde entier de se con-centrer sur l’adoption et l’intégration de la technologie du réseau intelligent par des systèmes de détection et d’actionnement, connectés à Internet pour la surveillance et l’optimisation de la consommation d’énergie.

(26)

De nombreuses applications peuvent être manipulées en raison de l’Internet des objets pour réseaux intelligents, tels que l’industrie, l’énergie solaire, l’énergie nucléaire, les véhicules, les hôpitaux et le contrôle puissant des villes [6].

1.4.5 L’Internet des Objets appliquée à l’agriculture

L’usage des objets connectés se démocratise dans l’agriculture pour la production agricole. Un système de surveillance est construit à l’aide de capteurs pour mesurer la lumière, la tem-pérature, l’humidité du sol et l’automatisation des systèmes d’irrigation [14]. Des applications sont automatisées selon les conditions météorologiques [1].

Green house est l’une des principales applications de l’IoT dans l’agriculture, elle permet de contrôler les conditions microclimatiques pour maximiser la production et la qualité de fruits et légumes.

Grâce à l’analyse des données récoltées et au pilotage de plus en plus fin des exploitations. L’élevage et le suivi des animaux a vu une amélioration après avoir utilisé des application de surveillance, de ventilation et de la qualité de l’air dans les fermes et la détection des gaz nocifs provenant des excréments. Aussi, les terrains son mis en œuvre par la réduction du gaspillage et déchets des cultures avec une meilleure surveillance du contrôle de la fertilisa-tion, d’électricité et d’arrosage et avec une précision d’obtention continue de données [11].

1.5

Caractéristique de l’Internet des Objets

Les caractéristiques fondamentales de l’IoT sont les suivantes [7] :

• Interconnectivité :

En ce qui concerne l’IoT, tout objet peut être connecté à l’infrastructure mondiale de l’information et de la communication.

• Services liés aux objets :

l’IoT est capable de fournir des services liés aux objets dans les limites des exigences inhérentes à ceux-ci, telles que protection de la vie privée et cohérence sémantique entre les objets physiques et leurs objets virtuels associés. Pour que de tels services puissent être fournis dans le respect de ces exigences, les technologies utilisées seront amenées à changer, aussi bien dans le monde physique que dans le monde de l’information.

• Hétérogénéité :

(27)

mêmes plates-formes matérielles ni les mêmes réseaux. Ils peuvent interagir avec d’autres dispositifs ou plates-formes de service par l’intermédiaire de réseaux différents.

• dynamiques :

L’état des dispositifs (par exemple veille/réveil, connecté/déconnecté) change de façon dynamique, ainsi que le contexte dans lequel ces dispositifs fonctionnent (emplacement, vitesse, etc.). D’autre part, le nombre de dispositifs peut lui aussi évoluer de façon dy-namique.

1.6

L’architecture de l’Internet des Objets

Un système IoT est composé d’un certain nombre de couches fonctionnelles pour faciliter les différente fonctionnalité du système tels que la détection, l’identification, l’actionnement, la communication et la gestion.

On Présente ces couches comme décrit ci-dessous :

(28)

• Couche de perception (Perception Layer) :

C’est la couches physique qui se compose des différents types de capteurs, ils collectent des informations qui peut être l’emplacement, la vitesse du vent, les vibrations, le niveau de pH, humidité, quantité de poussière dans l’air, etc et identifie d’autres objets intelli-gents dans l’environnement. Elle sert à les transmettre à la couche réseau via des canaux sécurisés [1].

• Couche réseau (Network layer) :

Cette couche fournit un soutien au réseau de base et le transfert de données recueillies par les capteurs à travers un réseau sécurisé pour connecter entre eux tous les équipements intelligents. Cette couche est principalement responsable du transfert de l’information de la couche Perception à la couche supérieure et vice versa à travers des réseaux selon le type de capteurs,tels que 3G, 4G, UMTS, Wi-Fi, WiIMAX, RFID, infrarouge, satellite, etc [15, 16].

• Couche de traitement (Midelware) :

La couche de traitement repose essentiellement sur les technologies de « middleware » telles que les bases de données, cloud computing et traitement des big data. Permettant de réunir les « hardwares » et « softwares » sur une même plateforme. Elle peut gérer et fournir un ensemble diversifié de services au couches inférieures avec une capacité de récupérer, traiter, calculer l’information, puis décider automatiquement en fonction des résultats de calcul [1], [15].

• Couche Application :

La couche application est la plus importante en termes d’utilisateurs car elle agit comme une interface qui fournit les applications nécessaires pour visualiser, analyser, contrôler et surveiller divers aspects du système IoT au stade actuel de l’action .Ses applications peuvent être utilisées dans divers secteurs comme le transport, les soins de santé, l’agriculture, la chaîne d’approvisionnement, le gouvernement, le commerce de détail, etc [16, 17].

Cette couche est responsable de la gestion inclusive des applications en fonction des informations traitées dans la couche Middleware [15].

• Couche commercial (Business Layer ) :

Cette couche gère l’ensemble du système IoT,y compris les applications, les modèles d’affaires et de profit et la protection de la vie privée des utilisateurs [1].

Elle peut créer des graphiques pratiques, des modèles opérationnels, un organigramme, un rapport de la haute direction, etc. En fonction des bons résultats d’analyse, elle aidera les gestionnaires fonctionnels ou les cadres supérieurs à prendre des décisions plus pré-cises [15].

(29)

1.7

Défis liés à l’Internet des Objets

Bien que l’Internet des objets soit aujourd’hui déjà une réalité planétaire, certains défis sont encore à résoudre ; certains obstacles ralentissent son développement. Pour cela en va entamer quelque problèmes et défis de conception qui empêche actuellement l’IoT d’atteindre son plein potentiel.

1.7.1 Scalabilité

En raison de connectivité spontanée de plusieurs objets ou appareils intelligents au réseau, l’Internet des objets devrait prendre en charge le nombre croissant d’appareils connectés, d’utilisateurs et d’analyses, et aussi être capable de résoudre les problèmes tels que l’adressage, la gestion de l’information et la gestion des services [15].

1.7.2 Interopérabilité

Dans l’IoT, de nombreux objets intelligents sont connectés et chaque objet intelligent a sa propre capacité de collecte d’informations, de communication et de traitement. Pour la com-munication et la coopération entre les objets intelligents de différents types, il est nécessaire d’avoir une norme commune et d’assurer l’interopérabilité de systèmes hétérogènes et répartis afin de permettre la mise à disposition et l’utilisation d’un large éventail d’informations et de services [7], [15].

1.7.3 Configuration autonome

Les objets intelligentes ne devraient pas être gérées comme des ordinateurs qui néces-sitent des utilisateurs pour les configurer et les adapter à des situations particulières Les objets mobiles ont besoin d’établir des liens spontanément, et ils doivent être capables de s’organiser et de s’auto-configurer en fonction de leur environnement particulier sans config-uration manuelle par l’utilisateur [6], [15].

1.7.4 Sécurité

En plus des aspects de sécurité et de protection d’Internet tels que la confidentialité des communications, l’authenticité et la fiabilité des partenaires de communication, et l’intégrité des messages. D’autres exigences seraient également importantes dans l’IoT, des exigences de sécurité supplémentaires devraient être intégré, Il y a un besoin d’accéder à certains services ou d’empêcher la communication avec d’autres choses dans l’IoT. Les objets intelligents devraient être protégés contre les objets concurrents [6], [18].

(30)

1.7.5 Consommation d’énergie

L’énergie est considérée comme une ressource cruciale pour les appareils intelligents, car la plupart des applications sont alimentées par batterie ou utilise des techniques de récupération d’énergie. L’optimisation énergétique est donc l’aspect majeur de l’IoT [19].

1.7.6 Gestion des données

Un des défis critique de l’IoT est l’inter-connectivités des objets intelligents et l’échange constant de tous les types d’informations, le volume des données générées et les processus impliqués dans le traitement de ces données.

Donc, le stockage doit être attribué en fonction de la quantité de données [11], [16].

1.8

Modélisation des applications IoT dans le plus haut niveau d’abstraction

Les applications IoT ont deux caractéristiques principales. La première est la distribution sur un large éventail de nœuds de traitement. La seconde est l’hétérogénéité élevée des nœuds de traitement et des protocoles utilisés entre eux [20].

La modélisation dans le plus haut niveau d’abstraction permet l’abstraction des plateformes hétérogènes et des dispositifs IoT pour modéliser l’architecture du système IoT souhaité. En pratique, les plateformes et les dispositifs, ainsi que la distribution finale des composants logiciels, ne sont généralement pas connus au cours des premières phases de conception.

Les caractéristiques de l’IoT posent un ensemble de défis connexes à chaque phase de développement des applications IoT, nous nous concentrons sur la phase de conception du modèle de système contenant des éléments qui peuvent être présentés sur des diagrammes avec une notation graphique spécifique qui permet aux développeurs d’utiliser des modèles pour mettre en œuvre un système.

Parmi ces notations nous citons : SYSML (System Modeling Language ), TheThingML (In-ternet of Things Modeling Language), UML4IOT (Unified Modeling Langage For the In(In-ternet of Things), BPMN (Business Process Modeling Notation).

(31)

1.8.1 Notation de modélisation

1.8.1.1 SYSML (System Modeling Language)

SysML est un langage de modélisation graphique spécifié par l’OMG. Il s’agit en fait d’un profil UML ou il hérite des caractéristiques d’UML. Il est défini comme un langage de modéli-sation pour l’ingénierie système capable d’offrir un support pour la modélimodéli-sation de multiples processus et méthodes. Il est destiné à la modélisation d’un large spectre de systèmes com-plexes. Son champ d’application est en ce sens plus large que celui d’UML, mais sa filiation le rend tout particulièrement intéressant pour la modélisation de systèmes embarqués majori-tairement composés de logiciel. Ainsi la prise en compte de l’interaction forte entre le matériel et le logiciel inhérente à ce type de système est une condition importante pour une modélisa-tion efficace. SysML semble donc d’être en mesure de devenir un support permettant de rap-procher les deux familles d’ingénierie « l’ingénierie système et l’ingénierie logicielle [21, 22].

La norme d’ingénierie des systèmes basée sur les modèles IDeAest composé d’une méthode appelée IoTDevProcess et d’un outil de support appelé IoTAppFramework. L’IoTDevProcess est une extension spécialement conçue pour la conception d’applications IoT. Pour soutenir ses activités, l’AppFrameworkIoT fournit un profil SysML pour les applications IoT appelées SysML4IoT [21].

SysML4IoT est un profil SysML fondée sur des concepts IoT bien définis. il fournit des résumés pour spécifier précisément les différents types de dispositifs matériels, de services logiciels, de flux de données et de personnel. Le profil est fortement basé sur un modèle de référence pour l’IoT, plus précisément le modèle de domaine IoT [23].

1.8.1.2 TheThingML (Internet of Things Modeling Language)

L’approche ThingML comprend un langage de modélisation, un ensemble d’outils et une méthodologie. ThingML combine des constructions de modélisation logicielle éprouvées alignées avec UML (statecharts et composants), un langage impératif et des constructions ciblées sur les applications IoT. Les outils comprennent des éditeurs, des transformations (par exemple, l’exportation vers UML), et un cadre de génération de code multiplateforme avancé qui prend en charge plusieurs langages de programmation cibles.

Les principaux objectifs de ThingML sont de modéliser le logiciel IoT, de faciliter sa mise en œuvre en permettant de fusionner le code existant dans un modèle ThingML en soutenant le traitement d’événements complexes et la découverte de nouveaux capteurs. En outre, il vise également à générer du code pour des plateformes hétérogènes.

L’approche ThingML intègre également trois fonctionnalités qui facilitent le développe-ment d’applications IoT. La première est un mécanisme pour envelopper rapidedéveloppe-ment les bib-liothèques existantes en mélangeant le code ThingML avec le code cible. La second est le

(32)

traitement d’événements complexes (CEP) pour traiter des modèles réactifs complexes. La troisième est un ensemble des sessions dynamiques pour manipuler des capteurs découverts dynamiquement [24].

ThingML offre plus de personnalisation de son code, en donnant aux développeurs l’abstraction qu’ ils doivent améliorer la productivité pour réduire l’idée d’une « boîte noire » avec une meilleure compréhension dans le processus de génération de code.

1.8.1.3 UML4IOT (Unified Modeling Langage For the Internet of Things)

UML4IoT [25] est un profil UML défini pour soutenir le développement des systèmes IoT pilotés par des modèles, il définit des extensions à la notation de modélisation UML pour per-mettre la génération automatique de l’IoTwrapper (une transformation d’un composant cyber-physique à un composant iot-compliant, i.e. un élément industriel [26] ) qui est nécessaire pour transformer un composant cyber-physique traditionnel en un objet d’automatisation indus-trielle. Une composante cyber-physique est l’intégration étroite de l’unité du monde physique (i.e l’unité mécanique de l’usine.) avec la partie cyber qui est nécessaire pour la transformer en un composant très cohésif qui offre une fonctionnalité de plus haut niveau par rapport à celle offerte par l’unité physique grâce à une interface bien définie.

UML4IoT automatise le processus de génération de l’IoTwrapper pour les nouveaux com-posants cyber-physiques mais aussi pour les anciens afin d’exploiter la connectivité IoT.

L’automatisation industrielle est un composant cyber-physique avec IoT-compliant API. Il est considéré comme l’élément clé de l’environnement de fabrication moderne de l’IoT [27].

1.8.1.4 BPMN (Business Process Modeling Notation)

La norme de modélisation BPMN est une notation graphique qui illustre les étapes d’un processus métiers et permet de mieux le comprendre grâce à une représentation visuelle ac-cessible de toutes ses étapes, elle offre un langage standardisé et commun à tous les personnels impliqués.

L’augmentation de la puissance de traitement des appareils IoT leur permet de participer à l’exécution de la logique métier. Ces appareils peuvent agréger et filtrer les données, et prendre des décisions localement, en exécutant des parties de la logique métier chaque fois que le contrôle central n’est pas nécessaire, réduisant le montant des données échangées et du traitement central [28]. Plus de détails sur cette notation sont présentés dans le chapitre suivant.

(33)

1.8.2 Modélisation de l’IoT

Pour bien comprendre la notion de la modélisation de l’Internet des objets. Dans cette section nous acquérons notre connaissance des différents concepts en étudiant le modèle de domaine de l’Internet des objets.

1.8.2.1 Le modèle de domaine de l’IoT

Un modèle de domaine est un modèle conceptuel qui définit les principaux concepts et leurs relations, et donne une compréhension commune de l’Internet des objets à travers le domaine [18]. les concepts du modèle de domaine IoT sont décrits ci-dessous :

1) User :

L’utilisateur fait référence à un humain ou un objet numérique qui doit recueillir des ren-seignements sur un objet physique ou agir sur lui, il le fait indirectement en accédant à un service [19].

2) Physical entity :

L’entité physique est une partie discrète et identifiable de l’environnement physique qui peut intéresser l’utilisateur pour la réalisation de son objectif. Les entités physiques peu-vent être presque n’importe quel objet ou environnement, des humains ou des animaux aux voitures, des articles de magasin ou de chaîne logistique aux ordinateurs, des appareils électroniques aux environnements fermés ou ouverts [20].

3) Digital Artefact (Virtual entity ) :

L’entité virtuelle est un artefact numérique qui représente une entité physique spécifique dans le monde numérique. Elle peut être active (logiciel/application) ou passive (stocké dans une base de données). Cette entité est une représentation synchronisée d’un ensemble de propriétés de l’entité physique. Ce qui implique que lorsqu’une propriété change sur l’une des entités, l’autre est mise à jour en conséquence [19].

4) Augmented entity :

Une entité physique est représentée par une entité virtuelle au niveau numérique. Une entité augmentée combine les deux et représente toute combinaison des deux entités. Elle permet aux objets du quotidien de faire partie des processus numériques et peut être donc considérée comme l’objet dans l’Internet des Objets [19].

(34)

5) IoT device :

Est un dispositif de communication technique, qui fait référence au composant matériel. Il peut être attaché à une entité physique ou être installé dans son environnement.

Les appareils IoT peuvent être classés en trois types: capteurs, actionneurs ou étiquettes [19]

• Les capteurs surveillent l’entité physique. Ils fournissent des renseignements, des con-naissances ou des données sur son état.

• Les actionneurs peuvent agir sur l’entité physique. Ils changent l’état de l’entité physique. • Les étiquettes sont utilisées pour identifier les entités physiques. Elles sont

principale-ment attachées à elle. Le processus d’identification est appelé lecture, il est effectué par des dispositifs de capteur spécifiques qui sont généralement appelés lecteurs. 6) Resource :

Les ressources sont des composantes logicielles qui fournissent des données provenant des entités physiques ou qui sont utilisées dans l’application sur les entités physiques. Elles sont classées en deux catégories : les ressources sur l’appareil et les ressources réseau. Les ressources sur l’appareil sont hébergées sur l’appareil IoT et fournissent le lien technique vers l’entité physique. Il s’agit de composants logiciels qui peuvent fournir des informa-tions sur une entité physique (ressource de capteur) ou modifier l’état d’une entité physique (ressource d’actionneur). D’autre part, les ressources réseau sont disponibles quelque part dans le réseau (par exemple bases de données back-end) ou dans le cloud. elles peuvent être utilisées pour traiter ou stocker des données.

1.9

Conclusion

L’Internet des objets est une nouvelle révolution Internet, elle est considérée comme un su-jet de recherche clé pour les chercheurs en ce qui concerne l’informatique et les technologies de l’information en raison de la grande diversité de ces domaines d’application et l’hétérogénéité des différentes technologies intégrées dans son architecture.

Tout au long de ce chapitre, nous avons défini l’IoT, ses domaines d’application et nous avons cité brièvement son historique. Par la suite, nous avons parlé de son architecture, ses caractéristiques et ces challenges. Finalement, sa modélisation dans le plus haut niveau d’abstraction a été définie.

(35)

Chapitre

2

Le langage BPMN (Business Process

Modeling Notation)

2.1

Introduction

Le concept de processus occupe aujourd’hui une place majeure dans le domaine des sys-tèmes d’information. L’approche processus a connu un intérêt remarquable dans la mod-élisation des entreprises ce qui a conduit à l’apparition d’un grand nombre de modèles et d’approches de modélisation de ce dernier.

Les technologies de l’information sont devenues l’une des principales réussites de toutes entreprises et organisations pour gérer toutes leurs activités internes et externes, ce qui a fa-vorisé aux entreprises de porter une attention croissante aux processus métiers, à leurs descrip-tions, leurs automatisations et leurs managements. Ainsi Plusieurs organismes ont proposé une norme suite à une forte demande des utilisateurs pour une standardisation du langage de modélisation.

Dans ce chapitre nous allons tout d’abord nous intéresser au processus métiers. Ensuite nous définissons plus en détails la norme BPMN.

2.2

Processus métier

2.2.1 Définition de Processus

Pour bien définir le processus métier, voici quelques définitions de processus [29].

(36)

ou interactives qui transforme des éléments d’entrée en éléments de sortie".

• La définition générale proposée par le Petit Robert est : "un processus est un ensemble de phénomènes conçus comme actifs et organisés dans le temps".

• Pour l’association française de normalisation (AFNOR) : « un processus est une succes-sion d’activités réalisées à l’aide de moyens (personnel, équipement, matériels, informa-tions) et dont le résultat final attendu est un produit ».

• M.Hammer et J.Champy en 1993 décrivent un processus comme un « ensemble finalisé d’activités, orientées vers la production d’un résultat représentant une valeur pour un client ».

2.2.2 Définition de processus métier

Le concept processus métier, a été défini « en tant qu’un enchaînement d’activités cor-rélées ou interactives. Un processus reçoit des objets en entrée et leur ajoute de la valeur, par le moyen de ressources, tout en fournissant des objets de sortie (produits/services) rem-plissant les besoins et les exigences d’un client (atteindre les objectifs) internes ou externes à l’entreprise. Il ne peut être déclenché que par des événements internes et/ou externes à l’entreprise, c’est-à-dire des changements d’état de composants du système. Chaque proces-sus est en communication avec d’autres et peut être décomposé en sous-procesproces-sus. Une ac-tivité transforme des entrées en sorties par l’influence d’objets de contrôle et en utilisant les ressources requises et disponibles pendant une durée bien définie » [30].

Figure 2.1: Un exemple de processus métier.

En détruire de la définition précédents qu’un processus métier est un enchainement or-donné d’activité aboutissant à un résultat déterminé qui est spécifique pour un client ou un partenaire particulier. Ces activités sont exécutées par des personnes ou par des applications. Un processus est déclenché par un événement qui lui est externe et doit produire à un résultat qui est sa raison d’être.

(37)

2.3

Gestion des processus métier (BPM)

2.3.1 Définition Gestion des processus métier (BPM)

Plusieurs définitions ont été données pour le terme de gestion des processus métier : D’après Van Der Aalst et al. (2003) « BPM comprend les méthodes, les techniques et les outils pour concevoir, exécuter, gérer et analyser les processus opérationnels en s’appuyant sur des acteurs qui peuvent être des êtres humains, des organisations, des applications et d’autres sources d’information » [31].

Business Process Management (BPM) est défini comme « l’art de la modélisation, la gestion et l’optimisation des processus métiers afin d’augmenter la performance des entreprises. Cela nécessite de s’accompagner d’outils pour modéliser, intégrer, superviser et analyser le fonc-tionnement des processus durant leur cycle de vie pour gérer et améliorer les processus de l’entreprise » [32].

2.3.2 Le cycle de vie de BPM

Le cycle BPM, ou Business Process Management Life cycle, a pour objectif d’avoir une méth-ode structurée et de mettre en œuvre les solutions les plus adaptée et pérennes.

Il permet la création d’un processus métier qui inclut le séquencement cyclique de 5 étapes, comme le montre la figure figure 2.2 :

(38)

pour plus de détails nous allons explorer chaque étape du cycle BPM [33]:

Conception :

Une étude doit être réalisée pour analyser les objectifs de l’entreprise, où nous allons pou-voir :

• préciser le but du processus

• spécifier des détails du processus tel que les acteurs • identifier les activités

• déterminer le rôle de chaque personne intervenant sur le processus • surveiller les échanges d’informations

• . . . etc.

Modélisation :

Cette phase permet de représenter informatiquement un modèle le plus proche possible de la réalité, pour aboutir à ce point nous allons:

• appliquer généralement des langages graphiques comme UML, BPMN au processus in-dépendamment des aspects techniques.

• transformer un modèle de processus métier ou "Business Process Diagram" en un modèle de processus exécutable.

• simuler le processus et de penser aux cas anormaux puis de l’adapter.

Exécution :

Il s’agit de la phase opérationnelle où la solution de BPM est mise en œuvre En effet, durant cette phase, le processus exécutable est interprété par un moteur d’exécution appelé BPE « Business Process Engine ».

Pilotage :

Cette phase mesure les indicateurs de performances définit et la performance du processus. Des rapports sont générés puis analysés et comparés avec les contrats de services.

(39)

Optimisation :

Cette dernière phase propose des solutions pour améliorer les performances des proces-sus métiers en réduisent les coûts, optimiser l’efficacité, augmenter la performance, éviter la redondance, etc.

2.3.3 Avantages d’un système BPM

La gestion des processus métier est un vecteur d’efficacité et de qualité au sein d’une organ-isation. Dans ce qui suit, on cite les trois avantages principaux [34] :

Organisation :

• Apporte une vision globale de l’organisation à travers la cartographie de tous les pro-cessus(la cartographie des processus métier, c’est la description graphique des processus métier à des fins de documentation.)

• Permet aux collaborateurs d’avoir une meilleure visibilité sur leur rôle au sein de l’organisation • Améliore le gain de temps à tous les niveaux en supprimant les tâches inutiles

• Sécurise le déroulement des activités avec l’identification des acteurs responsables

La communication :

• Les échanges sont fluidifiés,

• Améliore la collaboration entre les acteurs, • Formalise le déroulement des procédures,

• Permet une communication transversale entre les différents niveaux de l’entreprise.

Suivi et le pilotage :

• Permet la mise en avant d’indicateurs de performance • Centralise les informations de chaque processus

• Mesure l’atteinte des objectifs et met en évidence les dysfonctionnements

(40)

2.3.4 Pourquoi modéliser les processus métiers ?

Une vision claire et partagée du fonctionnement de l’organisation est nécessaire pour faire évoluer le système d’information La modélisation est considérée comme un moyen d’y par-venir. Les modèles servent à comprendre, élaborer et communiquer [32].

Une démarche de modélisation des processus peut répondre à plusieurs objectifs :

• Permettre d’aligner l’opérationnel à la stratégie pour une meilleure gouvernance. • Améliorer ou reconfigurer le Système d’Information lors d’une refonte.

• Documenter les processus pour aider la Maitrise d’ouvrage à rédiger les exigences, les chefs d’entreprise à prendre des décisions, les analystes et développeurs à éliminer toute confusion et faciliter l’échange entre eux, etc.

• Améliorer la collaboration entre les structures fonctionnelles d’une même organisation et entre plusieurs organisations.

• Réduire ou supprimer la dépendance de l’activité par rapport aux employés qui y sont affectés et améliorer la gestion et la capitalisation des connaissances.

• Contrôler et améliorer les processus et les sous-processus, pour faire progresser de manière continue les processus de l’entreprise.

• Assurer une cohérence globale des besoins métiers et identifier les points non couverts par le SI.

• Automatiser autant que possible l’activité et supprimer les tâches sans réelle valeur pour l’entreprise.

2.4

Workflow

2.4.1 Définition de Workflow

La notion de Workflow ou « flux de travail en français » est apparue au début des années 90 dans le cadre des recherches sur les outils logiciels facilitant le travail collaboratif, en 1999 le Workflow il était définit par le Management Coalition WFMC [?] comme l’automatisation partielle ou entière d’un processus métier. Dans lesquelles les documents, les informations ou les tâches sont transmis d’un participant à un autre en fonction d’un ensemble de règles de gestion prédéfinies.

(41)

2.4.2 Différence entre processus métier et workflow

Le processus métier et le workflow sont la plupart du temps considérés comme identiques. Toutefois, les deux sont différents dans tous les aspects et constituent des entités distinctes.

Pour mieux comprendre la différence entre ces termes, nous pouvons dire que "le work-flow" s’intéresse plutôt à l’organisation d’un travail (métier ou autre). Il est lié à une séquence d’activités, qui implique à la fois des activités manuelles et des procédures automatisées (basées sur des logiciels) pour représentation schématique ou à la modélisation d’un processus métier, alors que le "business process" représente le métier proprement dit de l’entreprise en termes d’activités, de rôles et de règles métiers. Il est directement lié au métier de l’entreprise qui le met en œuvre par la compréhension de l’ensemble de ses compétences, son domaine d’activité qui se traduit par l’offre d’un ensemble de ses services, produits ou artefacts dont la consom-mation permet de se pérenniser et de se développer.

On pourrait dire que le Workflow contribue à la performance de tous les types de processus qui sont "actionnés" dans l’entreprise et particulièrement aux processus métiers qui sont les candidats potentiels au Workflow [35].

2.5

La modélisation et langage de modélisation des processus métier

La modélisation des processus métier est une représentation du fonctionnement d’un pro-cessus pour définir l’ensemble des activités à exécuter et leur ordre d’exécution.

Il existe deux approches dans la littérature permettant la définition du comportement d’un processus [36] :

Approche impérative : se concentre sur la définition précise de la façon dont l’ensemble d’activité doit être achevé « le quoi faire ». Plusieurs langages impératifs tels que BPMN ,UML activity diagram, EPC.

Approche déclarative : concentre plus sur « ce qui devrait être fait ». Comme exemple des langages déclaratifs, il existe eConDec, PLM-flow, PENELOPE.

2.5.1 Le standard BPMN

BPMN est un acronyme pour « Business Process Modeling Notation ». Il est défini pour la modélisation de processus métier d’une entreprise permettant de définir une notation graphique commune à tous les outils de modélisation.il a été est proposé par le consortium OMG « Object Management Group » et BMPI « Business Process Management Initiative » depuis leur fusion en 2005. Il a été ensuite maintenu par l’OMG en 2006 (OMG, 2006).

(42)

L’objectif principal de BPMN est de fournir une notation qui soit réellement compréhensi-ble par tous les acteurs de l’entreprise, indépendamment de l’outil utilisé. Il permet de créer une passerelle standardisée pour combler le vide existant entre la modélisation des processus métier et les langages d’exécution des processus métier [31].

Un autre objectif est que le langage XML conçu pour l’exécution des processus métiers peut être visualisé avec une notation commune et intégré avec une interface de programmation dans les logiciels. Seule l’implémentation de cette interface peut varier selon les technologies [33].

2.5.2 Histoire de BPMN

Le Mark von Roding et al ont cité l’historique de BPMN dans son livre [37] comme suit : • En 2001, y avait de nombreuses notations et points de vue différents de modélisation,

c’est dans ce cas où les membres de Business Process Management Institute (BPMI) ont commencé à discuter de l’idée de normaliser les techniques orientées pour représenter visuellement les composants de processus et aligner la notation avec un langage de pro-cessus exécutable.

• En mai 2004, c’était la publication de la première version de BPMN (BPMN 1.0).

• En 6 février 2006, BPMI (Business Process Management Institute) a été remplacée par l’OMG qui a depuis maintenu et développé la norme BPMN.

• En janvier 2008, la version BPMN 1.1 a été publiée par l’OMG • En 2009, la version BPMN 1.2 a été publiée par l’OMG

• Janvier 2011, la version BPMN 2.0 a été publiée par l’OMG

• En décembre 2013, la version 2.0.2 de BPMN a été publié par l’OMG

La Figure figure 2.3 indique un rapide historique de l’évolution du standard BPMN :

(43)

2.5.3 Notation BPMN 2.0

Un diagramme BPMN [11] est composé d’un ensemble d’éléments graphiques qui perme-ttent de modéliser les activités, les flux, les relations, les données et l’interaction entre ces éléments.

2.5.3.1 Les éléments de BPMN 2.0

Les différents éléments sont organisés en cinq catégories sont :

• Les objets de flux (Flow Object)

• Les objets de connexion (Connecting Object). • Les partitions (Swimlanes).

• Les données.

• Les artéfacts (Artifacts).

Les différents éléments de BPMN 2.0 sont illustrés dans la figue ci-dessous :

(44)

A. Les objets de flux : ce sont les principaux éléments graphiques qui permettent de définir le comportement d’un processus métier. Il existe trois types d’objets flux « les activités », « les événements » et « les passerelle » :

1. Les activités :

Sont représentées par un rectangle aux coins arrondis qui correspondent à une action qui peut être réalisée par un humain ou une machine, une activité peut être atomique ou composée. Ces types qui font partie d’un processus sont les suivants :

• Tâche : un objet tâche est présenté sous forme d’un rectangle à coins arrondis qui doit être tracé avec une seule ligne mince, une tâche est une activité atomique et chaque tâche a un début et une fin. Par conséquent cette dernière ne peut débuter que si la tâche précédente est terminée. il existe sept types de tâches(voir la figure figure 2.5) :

– Tâche d’envoi de message : spécifie l’envoie d’un message à un participant externe au processus. Une fois le message est envoyé, la tâche sera terminée. – Tâche de réception d’un message : spécifie l’arrivée d’un message d’un

partic-ipant au processus. Une fois le message est reçu, la tâche sera terminée.

– Tâche utilisateur : précise que la tâche est effectuée par un exécutant humain avec l’aide d’une application informatique.

– Tâche manuelle : précise que la tâche devrait être effectué sans l’aide d’un moteur d’exécution de processus métiers ou d’une application (c ’est-à-dire que la tâche est réalisée exclusivement par un acteur humain).

– Tâche service : utilise une sorte de service qui pourrait être un service Web ou une application automatisée (c’est-à-dire c’est une tâche automatisée sans intervention humaine).

– Tâche script : une tâche de script est exécutée par un moteur de processus métiers. Le modélisateur ou l’implémenteur définit un script dans une langue que le moteur peut l’interpréter lorsque la tâche est prête à démarrer, le mo-teur exécutera le script, lorsque le script est terminé, la tâche sera également complétée.

– Tâche règle de gestion : elle représente l’envoie d’une entrée dans un moteur de règles de gestion et la réception du résultat du calcul effectué par ce moteur.

(45)

• Sous-processus : est une activité qui est non atomique (composée), elle est représen-tée par une tâche avec un petit + permettant d’accéder au détail. Le sous-processus est la manière de définir des abstractions et de choisir la granularité de l’information représentée. Cela peut aussi être utilisé pour définir un contexte de traitement pour la gestion des exceptions.

• Activité d’appel : Les activités d’appel ou « call activity », ne permettent qu’un processus fournit un lien vers les activités réutilisables qui sont : les sous-processus et les taches.

Figure 2.6: Sous-processus et activité d’appel dans BPMN 2.0. 2. Les événements :

Sont représentés par des cercles, ils correspondent à une action qui survient durant le processus. Ils ont en général une cause et une conséquence. Il existe trois catégories d’événements : de début, intermédiaire et de fin.

Figure 2.7: Événements dans BPMN 2.0

• Les événements de début : représenté par un cercle avec une seule ligne mince, il déclenche une nouvelle instance de processus où un processus peut avoir plus d’un événement de démarrage, mais un sous-processus d’événement n’a qu’un événe-ment de début.

• Les événements intermédiaires : représentés par un cercle avec une double ligne mince, ils indiquent une action qui se produit ou peut se produire au cours du processus, entre début et fin. Les événements intermédiaires peuvent être utilisés pour attraper le déclencheur d’événement et peut être dans le flux ou à la limite d’une activité.

• Les événements de fin : sont représentés par un cercle avec une seule ligne épaisse, c’est la fin de l’instance de processus. Et la fin des événements n’ont pas de flux de séquence sortante.

(46)

Figure 2.8: Les types d’événements de BPMN2.0.

• L’évènement de message : un message est un moyen spécifique de transmission de données d’un processus à l’autre. Le type message signifie l’envoi ou la réception d’un message.

• L’évènement de minuterie : un événement de minuterie utilisé pour signifier l’attente d’une condition de temps spécifique pour se déclencher, qui va lancer un processus un événement ou un Sous-processus.

• L’évènement d’escalade : les événements d’escalade sont des événements qui font référence à une escalade nommée. Ils sont principalement utilisés pour communi-quer d’un sous-processus à un processus supérieur.

• L’évènement de condition : ce type d’événement est déclenché lorsqu’une condi-tion devient vraie. Une condicondi-tion est un type d’expression.

• L’évènement de lien : les évènements de type « lien » permettent de découper un processus qui est devenu trop long en plusieurs parties. Les objets liens pourront être attachés un à un. Cela permet d’éviter de surcharger un processus.

• L’évènement d’erreur : utilisées pour signaler une erreur dans le processus et in-terrompt le processus ou le sous-processus en cours.

Références

Documents relatifs