SlideShare une entreprise Scribd logo
1  sur  48
Workflow Foundation 4.5 avec Visual Studio 2012
Module 1 : Introduction
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 1
MODULE 1 - INTRODUCTION
Section 1 : Langages
Graphiques
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 2
MODULE 1 - INTRODUCTION
SECTION1-LANGAGESGRAPHIQUES
Graphique versus textuel
Image plus parlante que des milliers de mots
Expressivité accrue
Simplicité envers les parties prenantes (client, équipe)
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 3
MODULE 1 - INTRODUCTION
SECTION1-LANGAGESGRAPHIQUES
Langages Graphiques, avantages et
inconvénients
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 4
Avantages
• Expressivité
• Simplicité
• Accessibilité
Inconvénients
• Modélisation
d’aspects
complexes
• Exécutabilité
MODULE 1 - INTRODUCTION
SECTION1-LANGAGESGRAPHIQUES
Langages Graphiques, Exemples
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 5
UML BPMN
MODULE 1 - INTRODUCTION
SECTION1-LANGAGESGRAPHIQUES
UML (Unified Modeling Language)
Langage de modélisation standardisé par l’Object Management Group
Composé de plusieurs diagrammes où chaque diagramme est utilisé dans une étape du cycle
de vie d’un logiciel
Le diagramme de cas d’utilisation capture les besoins utilisateur
Le diagramme des classes modélise les classes du système
Le diagramme d’activité modélise le déroulement d’un processus métier ou d’un processus
technique
Le diagramme de séquence modélise une séquence d’évènements
Le diagramme de composants modélise l’architecture logique du système
Le diagramme de déploiement modélise l’architecture physique du système
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 6
MODULE 1 - INTRODUCTION
SECTION1-LANGAGESGRAPHIQUES
UML – Diagramme des cas
d’utilisation
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 7
Site d'annonces
Utilisateur
Acheteur
Vendeur
CréerUnCompte
ChercherUneAnnonce
FaireUneOffre
CreerUneAnnonce
MODULE 1 - INTRODUCTION
SECTION1-LANGAGESGRAPHIQUES
UML – Diagramme de classes
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 8
Engin
+ marque: string
+ modele: string
+ getPoids() : double
Voiture
+ nombrePlaces: int
Camion Bus
VoitureTouristique VoitureUtilitaire
+ chargeUtile: double
MODULE 1 - INTRODUCTION
SECTION1-LANGAGESGRAPHIQUES
UML – Diagramme d’activité
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 9
Recevoir Commande
Stock disponible
Approvisionner
Mettre à jour
inventaire
Notifier
[Non]
[Oui]
MODULE 1 - INTRODUCTION
SECTION1-LANGAGESGRAPHIQUES
UML – Diagramme de séquence
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 10
Utilisateur
AlbumManager
original :Album
Copie :Album
opt Copier
[Si liste n'est pas vide est si l'album n'est pas verrouillé]
dupliquerAlbum(int)
getAlbum(int) :
Album
getPhotos() :Photo[*]
liste= :Photo[*]
renommer(String)
copierPhotos(liste)
MODULE 1 - INTRODUCTION
SECTION1-LANGAGESGRAPHIQUES
UML – Diagramme de composants
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 11
«client»
Navigateur
IGet
IPost
getManager
IGet
postManager
IPost
«service»
Serveur
IGet
IPost
serverGetManager
IGet
serverPostManager
IPost
«delegate»
«delegate»
«delegate»
«delegate»
MODULE 1 - INTRODUCTION
SECTION1-LANGAGESGRAPHIQUES
UML – Diagramme de déploiement
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 12
«device»
Serveur BDD
«database»
BDD
«device»
Serveur Application
Application web
Serveur web
PC Client
«executable»
Navigateur
TCP HTTP
MODULE 1 - INTRODUCTION
SECTION1-LANGAGESGRAPHIQUES
UML – Avantages et Inconvénients
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 13
Avantages
• Standard
• Orienté
développement
• Complet
Inconvénients
• Non exécutable
• Complexe à cause
de la multiplicité
de diagrammes et
de profils
MODULE 1 - INTRODUCTION
SECTION1-LANGAGESGRAPHIQUES
BPMN (Business Process Model
Notation)
Un procédé métier est une séquence d’activités exécutées dans le but d’aboutir à une valeur
ajoutée
BPMN est un formalisme permettant de modéliser les processus métier et est actuellement à
la version 2.0
BPMN modélise un processus en une séquence d’activité
BPMN modélise la collaboration lorsque la séquence implique plus d’un participant
BPMN modélise la chorégraphie qui représente l’ensemble des interactions entre les
participants
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 14
MODULE 1 - INTRODUCTION
SECTION1-LANGAGESGRAPHIQUES
BPMN 2 - Exemple
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 15
Source : http://blog.octo.com/retour-d-experience-bpmn/
MODULE 1 - INTRODUCTION
SECTION1-LANGAGESGRAPHIQUES
BPMN– Avantages et Inconvénients
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 16
Avantages
• Simple
• Promeut la
collaboration
Inconvénients
• Orienté métier
(pas
développement)
• Non exécutable
MODULE 1 - INTRODUCTION
SECTION1-LANGAGESGRAPHIQUES
Workflows
Ensemble de tâches exécutées par une ou plusieurs personnes
Modélisés graphiquement
Passage d’informations ou de documents entre les différentes étapes
Un moteur de workflow est une plateforme permettant d’exécuter les workflow
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 17
MODULE 1 - INTRODUCTION
SECTION1-LANGAGESGRAPHIQUES
Pourquoi les workflows ?
Représentation graphique accessible pour toutes les parties prenantes
Intervention de plusieurs acteurs et utilisateurs
Tâches pouvant durer un temps considérable
Supervision et persistance
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 18
MODULE 1 - INTRODUCTION
Section 2 :
Introduction à
Workflow Foundation
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 19
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Qu’est-ce que WF ?
Moteur d’exécution de workflows bâti sur .NET Framework
Permet la construction visuelle de logiciels
Conduit par les évènements
Facilite la modélisation des besoins des clients
Supporte un ensemble de services (hébergement, exécution, persistances, suivi,…)
Supporte les processus de longue exécution
Supporte la réutilisation facile de blocs logiciels
Intégration poussée avec WCF
Intégration avec le cloud (Windows Azure)
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 20
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Historique
Première version avec .NET 2.0 (2005)
Version 3.5 avec .NET 3.5 (2007)
Réécriture complète (VS 2012), Version 4.5
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 21
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Nouveauté de WF 4.0
Designer basé sur WPF
L’activité « Activity » est la basé des workflows
Intégration des flowcharts et des machines à états
Nouvelles activités (flowchart,…)
Variables et transmission d’informations à travers les arguments
Nouvelles options d’hébergement des workflows
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 22
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Nouveauté de WF 4.5
Versionnement des workflows
Activité « NoPersistScope » qui empêche la persistance de ses activités enfants
Amélioration du designer (recherche)
Expressions en C#
Ajout d’annotations dans le designer
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 23
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Composants de WF 4.5
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 24
Moteur
d’exécution
Activités Workflows Designer
Gestion des
données
Persistance Suivi
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Moteur d’exécution
Exécute les workflows et gère leur déroulement asynchrone
Le moteur d’exécution peut être intégré à une application, on parle alors d’hébergement
(hosting)
Les workflows peuvent être hébergés dans une application .NET
Les workflows peuvent être hébergés dans un service
Les workflows peuvent être hébergés dans Sharepoint
Les workflows peuvent être hébergés dans Windows Server
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 25
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Cycle de vie d’un workflow
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 26
Evènement Déclenchement Evènement WF associé
Instanciation Lorsqu’une nouvelle instance d’un workflow est créée WorkflowCreated
Démarrage Lorsqu’un workflow est exécuté WorkflowStarted
Chargement Lorsque le workflow est chargé en mémoire WorkflowLoaded
Annulation Lorsque l’exécution d’un workflow est annulée WorkflowAborted
Mise en veille Lorsque le workflow entre en mode veille en attente d’un
évènement
WorkflowIdled
Déchargement Lorsque le workflow est déchargé de la mémoire WorkflowUnLoaded
Suspension Lorsque le workflow est suspendu WorkflowSuspended
Reprise Lorsque le workflow reprend son exécution suite à une
suspension
WorkflowResumed
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Cycle de vie d’un workflow - Suite
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 27
Evènement Déclenchement Evènement WF associé
Terminaison Lorsque l’exécution d’un workflow est terminée anormalement WorkflowTerminated
Persistance Lorsque le workflow est persisté WorkflowPersisted
Complétion Lorsque l’exécution d’un workflow est terminée normalement WorkflowCompleted
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Activités
Noyau des workflows, un workflow est lui-même une activité qui est composée d’autres
activités
Il y a des activités simples et des activités composites
L’exécution d’un workflow est le déroulement des activités qu’il contient (séquentiel, parallèle,
conditionnel,…etc.)
WF fournit des dizaines d’activités prédéfinies
L’utilisateur peut créer ses propres activités
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 28
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Type Description Exemples
Contrôle de flux Contrôle le séquencement (parallèle, séquentiel,
conditionnel, boucle) des activités
DoWhile, ForEach, Parallel
Graphes de flux Workflows conformes aux graphes de flux Flowchart, FlowDecision
Machine à états Workflows conformes aux machines à états/transitions StateMachine, State
Messagerie Inclusion de messages provenant de sources externes Send, Receive
Exécution Des activités qui interagissent avec le moteur d’exécution Persist, TerminateWorkflow
Primitives Activités primitives Assign, Delay, WriteLine
Transactions Permettent l’exécution transactionnelle des activités TransactionScope, Compensate
Collections Activités traitant des collections d’objets AddToCollection
Erreurs Gestion des erreurs et des exceptions TryCatch, Throw
Types d’activités
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 29
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Workflows
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 30
Séquentiels
Diagrammes
de flux
Machine
d’états
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Workflows séquentiels
Style hérité de WF 3.5
Définit une séquence d’évènements
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 31
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Workflows séquentiels - Exemple
Calcul d’une commission d’une transaction bancaire
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 32
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Workflows diagrammes de flux
Modélisation plus naturelle des processus métier
Le designer s’adapte mieux aux grands workflows
Langage déclaratif
Une expressivité accrue
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 33
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Workflows diagrammes de flux -
Exemple
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 34
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Workflows machine à état
Modélise une entité (un système, un sous-système ou un objet) ayant un ensemble d’états finis
Une entité passe par un état initial jusqu’à un état final en transitant par plusieurs états
intermédiaires
L’action qui fait passer le workflow d’un état à un autre, est appelée transition
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 35
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Workflows machine à états- Exemple
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 36
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Création de workflows
Le moyen le plus commun de création de workflows est le designer
Les workflows peuvent être créés par code
Les workflows peuvent être chargés à partir d’un fichier
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 37
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Création de workflows par code -
Exemple
var workflow = new Sequence()
{
};
workflow.Activities.Add(new WriteLine() {
Text = "Un workflow créé par code !"
});
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 38
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Workflow dans un fichier XML - Exemple
<Activity mc:Ignorable="sap sap2010 sads" x:Class="Demo1.XmlWorkflow"
sap2010:ExpressionActivityEditor.ExpressionActivityEditor="C#« xmlns=http://schemas.microsoft.com/netfx/2009/xaml/activities
xmlns:mc=http://schemas.openxmlformats.org/markup-compatibility/2006
xmlns:sads="http://schemas.microsoft.com/netfx/2010/xaml/activities/debugger"
<WriteLine Text="Un workflow chargé à partir d'un fichier" sap2010:WorkflowViewState.IdRef="WriteLine_1"
sads:DebugSymbol.Symbol="dzxGOlxGb3JtYXRpb25XRlxEZW1vc1xDaGFwaXRyZSAxXERlbW8xXERlbW8xXFhtbFdvcmtmbG93LnhhbWwCIw
MjlwECAQEjEyMzAgEC" />
<sap2010:WorkflowViewState.IdRef>Demo1.XmlWorkflow_1</sap2010:WorkflowViewState.IdRef>
<sap2010:WorkflowViewState.ViewStateManager>
<sap2010:ViewStateManager>
<sap2010:ViewStateData Id="WriteLine_1" sap:VirtualizedContainerService.HintSize="211,62" />
<sap2010:ViewStateData Id="Demo1.XmlWorkflow_1" sap:VirtualizedContainerService.HintSize="251,142" />
</sap2010:ViewStateManager>
</sap2010:WorkflowViewState.ViewStateManager>
</Activity>
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 39
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Le Designer
Editeur graphique qui est conjonction avec la boîte à outils, facilite la création et l’édition de
workflows
Conçu en WPF pour rendre plus souple l’édition de workflows
Facilite des opérations telles que le zoom, l’organisation de workflows complexes et la
navigation dans un workflow
Peut être intégré à une application externe pour modifier un workflow en dehors de Visual
Studio
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 40
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
La barre à outils
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 41
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
La Gestion des données
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 42
Arguments Variables
Expressions
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Les arguments
Un argument est une donnée qui est fournie en entrée à un workflow ou qui est récupérée
après son exécution
Il existe trois types d’arguments : In (entrée), Out (sortie) et InOut(entrée / sortie)
Un argument est caractérisé par un nom et un type
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 43
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Les variables
Les variables sont des espaces de données caractérisés par un type et un nom
Comme les langages de programmation, les variables sont utilisées pour le calcul et/ou le
stockage de données
Une variable a une portée : visible et accessible dans tout le workflow ou dans le contexte
d’une seule activité uniquement
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 44
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Les expressions
Expression mathématique ou logique permettant d’évaluer des résultats par des activités
À partir la version 4.5, WF utilise C# pour la syntaxe des expressions (avant la version 4.5, VB
était utilisé)
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 45
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
La persistance
Lorsque le workflow entre dans un état d’inactivité et que la persistance est activée, le moteur
enregistre ce workflow dans un référentiel (SQL Server) pour libérer la mémoire et les
ressources utilisées par ce workflow
La persistance aide aussi à reprendre le workflow suite à une panne matérielle ou tout autre
interruption
Lorsqu’un évènement attendu par un workflow persisté a lieu, le moteur charge le workflow à
partir du référentiel pour continuer son exécution
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 46
MODULE 1 - INTRODUCTION
SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION
Le suivi
Les outils de suivi permettent de fournir des indicateurs sur l’état et sur l’avancement d’un
workflow
Ces indicateurs permettent de prendre des décisions de débogage ou sur l’utilisation ou
l’optimisation des ressources système
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 47
MODULE 1 - INTRODUCTION
Tutoriaux
TUTORIEL 1.1, DÉCOUVERTE D’UNE APPLICATION WF
TUTORIEL 1.2, CRÉATION DE NOTE PREMIÈRE
APPLICATION WF
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 48

Contenu connexe

Tendances

AUTOMATISATION DU DEPLOIEMENT ET DE LA GESTION DES RESEAUX VIRTUELS DANS LE C...
AUTOMATISATION DU DEPLOIEMENT ET DE LA GESTION DES RESEAUX VIRTUELS DANS LE C...AUTOMATISATION DU DEPLOIEMENT ET DE LA GESTION DES RESEAUX VIRTUELS DANS LE C...
AUTOMATISATION DU DEPLOIEMENT ET DE LA GESTION DES RESEAUX VIRTUELS DANS LE C...Khadidja BOUKREDIMI
 
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2Sofien Benrhouma
 
Rapport de projet de conception et de développement
Rapport de projet de conception et de développementRapport de projet de conception et de développement
Rapport de projet de conception et de développementDonia Hammami
 
Mise en place d'une solution du supérvision réseau
Mise en place d'une solution du supérvision réseauMise en place d'une solution du supérvision réseau
Mise en place d'une solution du supérvision réseauRabeb Boumaiza
 
Conception et mise en place d'un Workflow du département VAS
Conception et mise en place d'un Workflow du département VASConception et mise en place d'un Workflow du département VAS
Conception et mise en place d'un Workflow du département VASAhmed MAALEJ
 
ADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINE
ADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINEADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINE
ADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINEHORIYASOFT
 
Rapport PFE Ilef Ben Slima
Rapport PFE Ilef Ben SlimaRapport PFE Ilef Ben Slima
Rapport PFE Ilef Ben SlimaIlef Ben Slima
 
Présentation de la plateforme MonPFE
Présentation de la plateforme MonPFEPrésentation de la plateforme MonPFE
Présentation de la plateforme MonPFEMajdi SAIBI
 
Gestion des actifs applicatifs
Gestion des actifs applicatifsGestion des actifs applicatifs
Gestion des actifs applicatifsSafaAballagh
 
Mini Projet C gestion d'une location de voiture
Mini Projet C gestion d'une location de voitureMini Projet C gestion d'une location de voiture
Mini Projet C gestion d'une location de voitureOussama Bessrour
 
Rapport pfe talan_2018_donia_hammami
Rapport pfe talan_2018_donia_hammamiRapport pfe talan_2018_donia_hammami
Rapport pfe talan_2018_donia_hammamiDonia Hammami
 
RAPPORT DE PROJET DE FIN D’ETUDES
RAPPORT DE PROJET DE FIN D’ETUDESRAPPORT DE PROJET DE FIN D’ETUDES
RAPPORT DE PROJET DE FIN D’ETUDESTombariAhmed
 
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...mouafekmazia
 
Conception et developpement d'une application mobile Android e-location
Conception et developpement d'une application mobile Android e-locationConception et developpement d'une application mobile Android e-location
Conception et developpement d'une application mobile Android e-locationALALSYSE
 
Rapport de stage nagios
Rapport de stage nagiosRapport de stage nagios
Rapport de stage nagioshindif
 

Tendances (20)

AUTOMATISATION DU DEPLOIEMENT ET DE LA GESTION DES RESEAUX VIRTUELS DANS LE C...
AUTOMATISATION DU DEPLOIEMENT ET DE LA GESTION DES RESEAUX VIRTUELS DANS LE C...AUTOMATISATION DU DEPLOIEMENT ET DE LA GESTION DES RESEAUX VIRTUELS DANS LE C...
AUTOMATISATION DU DEPLOIEMENT ET DE LA GESTION DES RESEAUX VIRTUELS DANS LE C...
 
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
 
Rapport de projet de conception et de développement
Rapport de projet de conception et de développementRapport de projet de conception et de développement
Rapport de projet de conception et de développement
 
Mise en place d'une solution du supérvision réseau
Mise en place d'une solution du supérvision réseauMise en place d'une solution du supérvision réseau
Mise en place d'une solution du supérvision réseau
 
Conception et mise en place d'un Workflow du département VAS
Conception et mise en place d'un Workflow du département VASConception et mise en place d'un Workflow du département VAS
Conception et mise en place d'un Workflow du département VAS
 
Memoire final sfallou
Memoire final sfallouMemoire final sfallou
Memoire final sfallou
 
ADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINE
ADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINEADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINE
ADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINE
 
iRecruite
iRecruiteiRecruite
iRecruite
 
MONITORING APPLICATIF
MONITORING APPLICATIFMONITORING APPLICATIF
MONITORING APPLICATIF
 
Rapport PFE Ilef Ben Slima
Rapport PFE Ilef Ben SlimaRapport PFE Ilef Ben Slima
Rapport PFE Ilef Ben Slima
 
Présentation de la plateforme MonPFE
Présentation de la plateforme MonPFEPrésentation de la plateforme MonPFE
Présentation de la plateforme MonPFE
 
Gestion des actifs applicatifs
Gestion des actifs applicatifsGestion des actifs applicatifs
Gestion des actifs applicatifs
 
Mobi resto
Mobi restoMobi resto
Mobi resto
 
Mini Projet C gestion d'une location de voiture
Mini Projet C gestion d'une location de voitureMini Projet C gestion d'une location de voiture
Mini Projet C gestion d'une location de voiture
 
Rapport pfe talan_2018_donia_hammami
Rapport pfe talan_2018_donia_hammamiRapport pfe talan_2018_donia_hammami
Rapport pfe talan_2018_donia_hammami
 
RAPPORT DE PROJET DE FIN D’ETUDES
RAPPORT DE PROJET DE FIN D’ETUDESRAPPORT DE PROJET DE FIN D’ETUDES
RAPPORT DE PROJET DE FIN D’ETUDES
 
gestion de projet
gestion de projetgestion de projet
gestion de projet
 
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
 
Conception et developpement d'une application mobile Android e-location
Conception et developpement d'une application mobile Android e-locationConception et developpement d'une application mobile Android e-location
Conception et developpement d'une application mobile Android e-location
 
Rapport de stage nagios
Rapport de stage nagiosRapport de stage nagios
Rapport de stage nagios
 

En vedette

Cours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vieCours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vieMohammed Amine Mostefai
 
Module 6 développement d'applications de bases de données avec asp.net
Module 6   développement d'applications de bases de données avec asp.netModule 6   développement d'applications de bases de données avec asp.net
Module 6 développement d'applications de bases de données avec asp.netMohammed Amine Mostefai
 
Module 7 intégration d'ajax et les services web dans les applications asp.net
Module 7   intégration d'ajax et les services web dans les applications asp.netModule 7   intégration d'ajax et les services web dans les applications asp.net
Module 7 intégration d'ajax et les services web dans les applications asp.netMohammed Amine Mostefai
 
Modularité des systèmes pour le transport en commun
Modularité des systèmes pour le transport en communModularité des systèmes pour le transport en commun
Modularité des systèmes pour le transport en communChristophe Duquesne
 
Construction d'un diagramme de flux d'informations
Construction d'un diagramme de flux d'informationsConstruction d'un diagramme de flux d'informations
Construction d'un diagramme de flux d'informationsMusatge
 
Module 4 navigation et homogénéisation des les applications web
Module 4   navigation et homogénéisation des les applications webModule 4   navigation et homogénéisation des les applications web
Module 4 navigation et homogénéisation des les applications webMohammed Amine Mostefai
 
Module 3 intégration de traitement dans les applications web asp.net
Module 3   intégration de traitement dans les applications web asp.netModule 3   intégration de traitement dans les applications web asp.net
Module 3 intégration de traitement dans les applications web asp.netMohammed Amine Mostefai
 

En vedette (20)

Wf module3
Wf module3Wf module3
Wf module3
 
Microsoft Workflow Foundation - Cours 2
Microsoft Workflow Foundation - Cours 2Microsoft Workflow Foundation - Cours 2
Microsoft Workflow Foundation - Cours 2
 
Workflow Foundation - Cours 5
Workflow Foundation - Cours 5Workflow Foundation - Cours 5
Workflow Foundation - Cours 5
 
Le Manifeste Agile
Le Manifeste AgileLe Manifeste Agile
Le Manifeste Agile
 
Cours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vieCours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vie
 
Module 5 validation de données
Module 5   validation de donnéesModule 5   validation de données
Module 5 validation de données
 
Le Langage CSS
Le Langage CSSLe Langage CSS
Le Langage CSS
 
Module 6 développement d'applications de bases de données avec asp.net
Module 6   développement d'applications de bases de données avec asp.netModule 6   développement d'applications de bases de données avec asp.net
Module 6 développement d'applications de bases de données avec asp.net
 
Présentation cloud journée azure
Présentation cloud   journée azurePrésentation cloud   journée azure
Présentation cloud journée azure
 
Module 7 intégration d'ajax et les services web dans les applications asp.net
Module 7   intégration d'ajax et les services web dans les applications asp.netModule 7   intégration d'ajax et les services web dans les applications asp.net
Module 7 intégration d'ajax et les services web dans les applications asp.net
 
Sécurisation des applications ASP.NET
Sécurisation des applications ASP.NETSécurisation des applications ASP.NET
Sécurisation des applications ASP.NET
 
Introduction aux technologies mobiles
Introduction aux technologies mobilesIntroduction aux technologies mobiles
Introduction aux technologies mobiles
 
Méthodes Agiles - Généralités
Méthodes Agiles - GénéralitésMéthodes Agiles - Généralités
Méthodes Agiles - Généralités
 
Le langage html
Le langage htmlLe langage html
Le langage html
 
Présentation sharepoint 2013
Présentation sharepoint 2013Présentation sharepoint 2013
Présentation sharepoint 2013
 
NaPTAN
NaPTANNaPTAN
NaPTAN
 
Modularité des systèmes pour le transport en commun
Modularité des systèmes pour le transport en communModularité des systèmes pour le transport en commun
Modularité des systèmes pour le transport en commun
 
Construction d'un diagramme de flux d'informations
Construction d'un diagramme de flux d'informationsConstruction d'un diagramme de flux d'informations
Construction d'un diagramme de flux d'informations
 
Module 4 navigation et homogénéisation des les applications web
Module 4   navigation et homogénéisation des les applications webModule 4   navigation et homogénéisation des les applications web
Module 4 navigation et homogénéisation des les applications web
 
Module 3 intégration de traitement dans les applications web asp.net
Module 3   intégration de traitement dans les applications web asp.netModule 3   intégration de traitement dans les applications web asp.net
Module 3 intégration de traitement dans les applications web asp.net
 

Similaire à Introduction to Workflow Foundation

Objet direct 2013-05-11 Microsoft ALM 2013 Software Factory
Objet direct 2013-05-11 Microsoft ALM 2013 Software FactoryObjet direct 2013-05-11 Microsoft ALM 2013 Software Factory
Objet direct 2013-05-11 Microsoft ALM 2013 Software FactoryFactoVia
 
Présentation de la plateforme Cloud Simplicité
Présentation de la plateforme Cloud SimplicitéPrésentation de la plateforme Cloud Simplicité
Présentation de la plateforme Cloud SimplicitéSimplicité Software
 
Intégration Continue pour Android
Intégration Continue pour AndroidIntégration Continue pour Android
Intégration Continue pour AndroidSalma ES-Salmani
 
Master's defence presentation : Architecture Basée Agents Pour la Prise en Ch...
Master's defence presentation : Architecture Basée Agents Pour la Prise en Ch...Master's defence presentation : Architecture Basée Agents Pour la Prise en Ch...
Master's defence presentation : Architecture Basée Agents Pour la Prise en Ch...hamdane mohamed elkamel
 
SiriusCon2016 - Une plateforme de modelisation support au PLM de l'ingenierie...
SiriusCon2016 - Une plateforme de modelisation support au PLM de l'ingenierie...SiriusCon2016 - Une plateforme de modelisation support au PLM de l'ingenierie...
SiriusCon2016 - Une plateforme de modelisation support au PLM de l'ingenierie...Obeo
 
The Spring of Adobe Flex Remoting
The Spring of Adobe Flex RemotingThe Spring of Adobe Flex Remoting
The Spring of Adobe Flex RemotingFrançois Le Droff
 
Frameworks classiques et custom
Frameworks classiques et customFrameworks classiques et custom
Frameworks classiques et customCristina Vidu
 
Es42 g formation-atelier-d-implementation-de-parallel-sysplex
Es42 g formation-atelier-d-implementation-de-parallel-sysplexEs42 g formation-atelier-d-implementation-de-parallel-sysplex
Es42 g formation-atelier-d-implementation-de-parallel-sysplexCERTyou Formation
 
Common features in webapi aspnetcore
Common features in webapi aspnetcoreCommon features in webapi aspnetcore
Common features in webapi aspnetcoreMSDEVMTL
 
Livraison et intégration continue avec TFS 2013 et InRelease
Livraison et intégration continue avec TFS 2013 et InReleaseLivraison et intégration continue avec TFS 2013 et InRelease
Livraison et intégration continue avec TFS 2013 et InReleaseMicrosoft
 
conception et réalisation plateforme collaboratif basant sur la methode agile...
conception et réalisation plateforme collaboratif basant sur la methode agile...conception et réalisation plateforme collaboratif basant sur la methode agile...
conception et réalisation plateforme collaboratif basant sur la methode agile...Sid Ahmed Benkraoua
 
Microsoft DevOps Day 2015 02122015 - L'expérience du groupe produit Visual St...
Microsoft DevOps Day 2015 02122015 - L'expérience du groupe produit Visual St...Microsoft DevOps Day 2015 02122015 - L'expérience du groupe produit Visual St...
Microsoft DevOps Day 2015 02122015 - L'expérience du groupe produit Visual St...Samuel Metias
 
memoire sur la technologie de RIA
memoire sur la technologie de RIAmemoire sur la technologie de RIA
memoire sur la technologie de RIAifis
 
Fujitsu IT Future 2013 : Diminution des coûts opérationnels et du temps de dé...
Fujitsu IT Future 2013 : Diminution des coûts opérationnels et du temps de dé...Fujitsu IT Future 2013 : Diminution des coûts opérationnels et du temps de dé...
Fujitsu IT Future 2013 : Diminution des coûts opérationnels et du temps de dé...Fujitsu France
 
Km612 g formation-ibm-infosphere-business-glossary-essentials-v9-1
Km612 g formation-ibm-infosphere-business-glossary-essentials-v9-1Km612 g formation-ibm-infosphere-business-glossary-essentials-v9-1
Km612 g formation-ibm-infosphere-business-glossary-essentials-v9-1CERTyou Formation
 

Similaire à Introduction to Workflow Foundation (20)

Workflow Foundation Module 4
Workflow Foundation Module 4Workflow Foundation Module 4
Workflow Foundation Module 4
 
Objet direct 2013-05-11 Microsoft ALM 2013 Software Factory
Objet direct 2013-05-11 Microsoft ALM 2013 Software FactoryObjet direct 2013-05-11 Microsoft ALM 2013 Software Factory
Objet direct 2013-05-11 Microsoft ALM 2013 Software Factory
 
ModéLisation De Workflow En Uml
ModéLisation De Workflow En UmlModéLisation De Workflow En Uml
ModéLisation De Workflow En Uml
 
Présentation de la plateforme Cloud Simplicité
Présentation de la plateforme Cloud SimplicitéPrésentation de la plateforme Cloud Simplicité
Présentation de la plateforme Cloud Simplicité
 
Azure alm
Azure almAzure alm
Azure alm
 
Cours spring
Cours springCours spring
Cours spring
 
Intégration Continue pour Android
Intégration Continue pour AndroidIntégration Continue pour Android
Intégration Continue pour Android
 
Master's defence presentation : Architecture Basée Agents Pour la Prise en Ch...
Master's defence presentation : Architecture Basée Agents Pour la Prise en Ch...Master's defence presentation : Architecture Basée Agents Pour la Prise en Ch...
Master's defence presentation : Architecture Basée Agents Pour la Prise en Ch...
 
SiriusCon2016 - Une plateforme de modelisation support au PLM de l'ingenierie...
SiriusCon2016 - Une plateforme de modelisation support au PLM de l'ingenierie...SiriusCon2016 - Une plateforme de modelisation support au PLM de l'ingenierie...
SiriusCon2016 - Une plateforme de modelisation support au PLM de l'ingenierie...
 
The Spring of Adobe Flex Remoting
The Spring of Adobe Flex RemotingThe Spring of Adobe Flex Remoting
The Spring of Adobe Flex Remoting
 
Frameworks classiques et custom
Frameworks classiques et customFrameworks classiques et custom
Frameworks classiques et custom
 
Es42 g formation-atelier-d-implementation-de-parallel-sysplex
Es42 g formation-atelier-d-implementation-de-parallel-sysplexEs42 g formation-atelier-d-implementation-de-parallel-sysplex
Es42 g formation-atelier-d-implementation-de-parallel-sysplex
 
Common features in webapi aspnetcore
Common features in webapi aspnetcoreCommon features in webapi aspnetcore
Common features in webapi aspnetcore
 
Workflow
WorkflowWorkflow
Workflow
 
Livraison et intégration continue avec TFS 2013 et InRelease
Livraison et intégration continue avec TFS 2013 et InReleaseLivraison et intégration continue avec TFS 2013 et InRelease
Livraison et intégration continue avec TFS 2013 et InRelease
 
conception et réalisation plateforme collaboratif basant sur la methode agile...
conception et réalisation plateforme collaboratif basant sur la methode agile...conception et réalisation plateforme collaboratif basant sur la methode agile...
conception et réalisation plateforme collaboratif basant sur la methode agile...
 
Microsoft DevOps Day 2015 02122015 - L'expérience du groupe produit Visual St...
Microsoft DevOps Day 2015 02122015 - L'expérience du groupe produit Visual St...Microsoft DevOps Day 2015 02122015 - L'expérience du groupe produit Visual St...
Microsoft DevOps Day 2015 02122015 - L'expérience du groupe produit Visual St...
 
memoire sur la technologie de RIA
memoire sur la technologie de RIAmemoire sur la technologie de RIA
memoire sur la technologie de RIA
 
Fujitsu IT Future 2013 : Diminution des coûts opérationnels et du temps de dé...
Fujitsu IT Future 2013 : Diminution des coûts opérationnels et du temps de dé...Fujitsu IT Future 2013 : Diminution des coûts opérationnels et du temps de dé...
Fujitsu IT Future 2013 : Diminution des coûts opérationnels et du temps de dé...
 
Km612 g formation-ibm-infosphere-business-glossary-essentials-v9-1
Km612 g formation-ibm-infosphere-business-glossary-essentials-v9-1Km612 g formation-ibm-infosphere-business-glossary-essentials-v9-1
Km612 g formation-ibm-infosphere-business-glossary-essentials-v9-1
 

Plus de Mohammed Amine Mostefai

Plus de Mohammed Amine Mostefai (13)

Utilisation de Sharepoint (Collaboration)
Utilisation de Sharepoint (Collaboration)Utilisation de Sharepoint (Collaboration)
Utilisation de Sharepoint (Collaboration)
 
Utilisation de Sharepoint 2013 - Personnalisation
Utilisation de Sharepoint 2013 - PersonnalisationUtilisation de Sharepoint 2013 - Personnalisation
Utilisation de Sharepoint 2013 - Personnalisation
 
Utilisation Sharepoint (Listes)
Utilisation Sharepoint (Listes)Utilisation Sharepoint (Listes)
Utilisation Sharepoint (Listes)
 
Utilisation de Sharepoint - Gestion de Documents
Utilisation de Sharepoint - Gestion de DocumentsUtilisation de Sharepoint - Gestion de Documents
Utilisation de Sharepoint - Gestion de Documents
 
Utilisation de Sharepoiunt - Introduction
Utilisation de Sharepoiunt - IntroductionUtilisation de Sharepoiunt - Introduction
Utilisation de Sharepoiunt - Introduction
 
Pratiques agiles
Pratiques agilesPratiques agiles
Pratiques agiles
 
Introduction à Scrum
Introduction à ScrumIntroduction à Scrum
Introduction à Scrum
 
Méthodes Agiles - La Méthode XP
Méthodes Agiles - La Méthode XPMéthodes Agiles - La Méthode XP
Méthodes Agiles - La Méthode XP
 
Module 8 programmation avancée d'asp.net
Module 8   programmation avancée d'asp.netModule 8   programmation avancée d'asp.net
Module 8 programmation avancée d'asp.net
 
Module 2 introduction à asp.net web forms
Module 2   introduction à asp.net web formsModule 2   introduction à asp.net web forms
Module 2 introduction à asp.net web forms
 
Module 1 introduction au développement web avec visual studio 2012
Module 1   introduction au développement web avec visual studio 2012Module 1   introduction au développement web avec visual studio 2012
Module 1 introduction au développement web avec visual studio 2012
 
Développement Web - Module 1 - Introduction
Développement Web - Module 1 - IntroductionDéveloppement Web - Module 1 - Introduction
Développement Web - Module 1 - Introduction
 
Conduite de projet innovants
Conduite de projet innovantsConduite de projet innovants
Conduite de projet innovants
 

Dernier

Mes succès sur Microsoft LEARN et examens
Mes succès sur Microsoft LEARN et examensMes succès sur Microsoft LEARN et examens
Mes succès sur Microsoft LEARN et examensErol GIRAUDY
 
Installation de Sylius 2.0 et découverte du nouveau backoffice en Bootstrap
Installation de Sylius 2.0 et découverte du nouveau backoffice en BootstrapInstallation de Sylius 2.0 et découverte du nouveau backoffice en Bootstrap
Installation de Sylius 2.0 et découverte du nouveau backoffice en BootstrapMaxime Huran 🌈
 
The Importance of Indoor Air Quality (French)
The Importance of Indoor Air Quality (French)The Importance of Indoor Air Quality (French)
The Importance of Indoor Air Quality (French)IES VE
 
Workshop l'IA au service de l'industrie - Présentation générale - Extra 14...
Workshop l'IA au service de l'industrie - Présentation générale - Extra 14...Workshop l'IA au service de l'industrie - Présentation générale - Extra 14...
Workshop l'IA au service de l'industrie - Présentation générale - Extra 14...Infopole1
 
Les Metiers de l'Intelligence Artificielle
Les Metiers de l'Intelligence ArtificielleLes Metiers de l'Intelligence Artificielle
Les Metiers de l'Intelligence ArtificielleErol GIRAUDY
 
KIT-COPILOT and more Article du 20240311
KIT-COPILOT and more Article du 20240311KIT-COPILOT and more Article du 20240311
KIT-COPILOT and more Article du 20240311Erol GIRAUDY
 

Dernier (6)

Mes succès sur Microsoft LEARN et examens
Mes succès sur Microsoft LEARN et examensMes succès sur Microsoft LEARN et examens
Mes succès sur Microsoft LEARN et examens
 
Installation de Sylius 2.0 et découverte du nouveau backoffice en Bootstrap
Installation de Sylius 2.0 et découverte du nouveau backoffice en BootstrapInstallation de Sylius 2.0 et découverte du nouveau backoffice en Bootstrap
Installation de Sylius 2.0 et découverte du nouveau backoffice en Bootstrap
 
The Importance of Indoor Air Quality (French)
The Importance of Indoor Air Quality (French)The Importance of Indoor Air Quality (French)
The Importance of Indoor Air Quality (French)
 
Workshop l'IA au service de l'industrie - Présentation générale - Extra 14...
Workshop l'IA au service de l'industrie - Présentation générale - Extra 14...Workshop l'IA au service de l'industrie - Présentation générale - Extra 14...
Workshop l'IA au service de l'industrie - Présentation générale - Extra 14...
 
Les Metiers de l'Intelligence Artificielle
Les Metiers de l'Intelligence ArtificielleLes Metiers de l'Intelligence Artificielle
Les Metiers de l'Intelligence Artificielle
 
KIT-COPILOT and more Article du 20240311
KIT-COPILOT and more Article du 20240311KIT-COPILOT and more Article du 20240311
KIT-COPILOT and more Article du 20240311
 

Introduction to Workflow Foundation

  • 1. Workflow Foundation 4.5 avec Visual Studio 2012 Module 1 : Introduction WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 1
  • 2. MODULE 1 - INTRODUCTION Section 1 : Langages Graphiques WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 2
  • 3. MODULE 1 - INTRODUCTION SECTION1-LANGAGESGRAPHIQUES Graphique versus textuel Image plus parlante que des milliers de mots Expressivité accrue Simplicité envers les parties prenantes (client, équipe) WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 3
  • 4. MODULE 1 - INTRODUCTION SECTION1-LANGAGESGRAPHIQUES Langages Graphiques, avantages et inconvénients WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 4 Avantages • Expressivité • Simplicité • Accessibilité Inconvénients • Modélisation d’aspects complexes • Exécutabilité
  • 5. MODULE 1 - INTRODUCTION SECTION1-LANGAGESGRAPHIQUES Langages Graphiques, Exemples WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 5 UML BPMN
  • 6. MODULE 1 - INTRODUCTION SECTION1-LANGAGESGRAPHIQUES UML (Unified Modeling Language) Langage de modélisation standardisé par l’Object Management Group Composé de plusieurs diagrammes où chaque diagramme est utilisé dans une étape du cycle de vie d’un logiciel Le diagramme de cas d’utilisation capture les besoins utilisateur Le diagramme des classes modélise les classes du système Le diagramme d’activité modélise le déroulement d’un processus métier ou d’un processus technique Le diagramme de séquence modélise une séquence d’évènements Le diagramme de composants modélise l’architecture logique du système Le diagramme de déploiement modélise l’architecture physique du système WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 6
  • 7. MODULE 1 - INTRODUCTION SECTION1-LANGAGESGRAPHIQUES UML – Diagramme des cas d’utilisation WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 7 Site d'annonces Utilisateur Acheteur Vendeur CréerUnCompte ChercherUneAnnonce FaireUneOffre CreerUneAnnonce
  • 8. MODULE 1 - INTRODUCTION SECTION1-LANGAGESGRAPHIQUES UML – Diagramme de classes WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 8 Engin + marque: string + modele: string + getPoids() : double Voiture + nombrePlaces: int Camion Bus VoitureTouristique VoitureUtilitaire + chargeUtile: double
  • 9. MODULE 1 - INTRODUCTION SECTION1-LANGAGESGRAPHIQUES UML – Diagramme d’activité WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 9 Recevoir Commande Stock disponible Approvisionner Mettre à jour inventaire Notifier [Non] [Oui]
  • 10. MODULE 1 - INTRODUCTION SECTION1-LANGAGESGRAPHIQUES UML – Diagramme de séquence WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 10 Utilisateur AlbumManager original :Album Copie :Album opt Copier [Si liste n'est pas vide est si l'album n'est pas verrouillé] dupliquerAlbum(int) getAlbum(int) : Album getPhotos() :Photo[*] liste= :Photo[*] renommer(String) copierPhotos(liste)
  • 11. MODULE 1 - INTRODUCTION SECTION1-LANGAGESGRAPHIQUES UML – Diagramme de composants WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 11 «client» Navigateur IGet IPost getManager IGet postManager IPost «service» Serveur IGet IPost serverGetManager IGet serverPostManager IPost «delegate» «delegate» «delegate» «delegate»
  • 12. MODULE 1 - INTRODUCTION SECTION1-LANGAGESGRAPHIQUES UML – Diagramme de déploiement WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 12 «device» Serveur BDD «database» BDD «device» Serveur Application Application web Serveur web PC Client «executable» Navigateur TCP HTTP
  • 13. MODULE 1 - INTRODUCTION SECTION1-LANGAGESGRAPHIQUES UML – Avantages et Inconvénients WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 13 Avantages • Standard • Orienté développement • Complet Inconvénients • Non exécutable • Complexe à cause de la multiplicité de diagrammes et de profils
  • 14. MODULE 1 - INTRODUCTION SECTION1-LANGAGESGRAPHIQUES BPMN (Business Process Model Notation) Un procédé métier est une séquence d’activités exécutées dans le but d’aboutir à une valeur ajoutée BPMN est un formalisme permettant de modéliser les processus métier et est actuellement à la version 2.0 BPMN modélise un processus en une séquence d’activité BPMN modélise la collaboration lorsque la séquence implique plus d’un participant BPMN modélise la chorégraphie qui représente l’ensemble des interactions entre les participants WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 14
  • 15. MODULE 1 - INTRODUCTION SECTION1-LANGAGESGRAPHIQUES BPMN 2 - Exemple WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 15 Source : http://blog.octo.com/retour-d-experience-bpmn/
  • 16. MODULE 1 - INTRODUCTION SECTION1-LANGAGESGRAPHIQUES BPMN– Avantages et Inconvénients WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 16 Avantages • Simple • Promeut la collaboration Inconvénients • Orienté métier (pas développement) • Non exécutable
  • 17. MODULE 1 - INTRODUCTION SECTION1-LANGAGESGRAPHIQUES Workflows Ensemble de tâches exécutées par une ou plusieurs personnes Modélisés graphiquement Passage d’informations ou de documents entre les différentes étapes Un moteur de workflow est une plateforme permettant d’exécuter les workflow WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 17
  • 18. MODULE 1 - INTRODUCTION SECTION1-LANGAGESGRAPHIQUES Pourquoi les workflows ? Représentation graphique accessible pour toutes les parties prenantes Intervention de plusieurs acteurs et utilisateurs Tâches pouvant durer un temps considérable Supervision et persistance WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 18
  • 19. MODULE 1 - INTRODUCTION Section 2 : Introduction à Workflow Foundation WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 19
  • 20. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Qu’est-ce que WF ? Moteur d’exécution de workflows bâti sur .NET Framework Permet la construction visuelle de logiciels Conduit par les évènements Facilite la modélisation des besoins des clients Supporte un ensemble de services (hébergement, exécution, persistances, suivi,…) Supporte les processus de longue exécution Supporte la réutilisation facile de blocs logiciels Intégration poussée avec WCF Intégration avec le cloud (Windows Azure) WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 20
  • 21. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Historique Première version avec .NET 2.0 (2005) Version 3.5 avec .NET 3.5 (2007) Réécriture complète (VS 2012), Version 4.5 WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 21
  • 22. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Nouveauté de WF 4.0 Designer basé sur WPF L’activité « Activity » est la basé des workflows Intégration des flowcharts et des machines à états Nouvelles activités (flowchart,…) Variables et transmission d’informations à travers les arguments Nouvelles options d’hébergement des workflows WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 22
  • 23. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Nouveauté de WF 4.5 Versionnement des workflows Activité « NoPersistScope » qui empêche la persistance de ses activités enfants Amélioration du designer (recherche) Expressions en C# Ajout d’annotations dans le designer WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 23
  • 24. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Composants de WF 4.5 WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 24 Moteur d’exécution Activités Workflows Designer Gestion des données Persistance Suivi
  • 25. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Moteur d’exécution Exécute les workflows et gère leur déroulement asynchrone Le moteur d’exécution peut être intégré à une application, on parle alors d’hébergement (hosting) Les workflows peuvent être hébergés dans une application .NET Les workflows peuvent être hébergés dans un service Les workflows peuvent être hébergés dans Sharepoint Les workflows peuvent être hébergés dans Windows Server WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 25
  • 26. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Cycle de vie d’un workflow WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 26 Evènement Déclenchement Evènement WF associé Instanciation Lorsqu’une nouvelle instance d’un workflow est créée WorkflowCreated Démarrage Lorsqu’un workflow est exécuté WorkflowStarted Chargement Lorsque le workflow est chargé en mémoire WorkflowLoaded Annulation Lorsque l’exécution d’un workflow est annulée WorkflowAborted Mise en veille Lorsque le workflow entre en mode veille en attente d’un évènement WorkflowIdled Déchargement Lorsque le workflow est déchargé de la mémoire WorkflowUnLoaded Suspension Lorsque le workflow est suspendu WorkflowSuspended Reprise Lorsque le workflow reprend son exécution suite à une suspension WorkflowResumed
  • 27. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Cycle de vie d’un workflow - Suite WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 27 Evènement Déclenchement Evènement WF associé Terminaison Lorsque l’exécution d’un workflow est terminée anormalement WorkflowTerminated Persistance Lorsque le workflow est persisté WorkflowPersisted Complétion Lorsque l’exécution d’un workflow est terminée normalement WorkflowCompleted
  • 28. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Activités Noyau des workflows, un workflow est lui-même une activité qui est composée d’autres activités Il y a des activités simples et des activités composites L’exécution d’un workflow est le déroulement des activités qu’il contient (séquentiel, parallèle, conditionnel,…etc.) WF fournit des dizaines d’activités prédéfinies L’utilisateur peut créer ses propres activités WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 28
  • 29. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Type Description Exemples Contrôle de flux Contrôle le séquencement (parallèle, séquentiel, conditionnel, boucle) des activités DoWhile, ForEach, Parallel Graphes de flux Workflows conformes aux graphes de flux Flowchart, FlowDecision Machine à états Workflows conformes aux machines à états/transitions StateMachine, State Messagerie Inclusion de messages provenant de sources externes Send, Receive Exécution Des activités qui interagissent avec le moteur d’exécution Persist, TerminateWorkflow Primitives Activités primitives Assign, Delay, WriteLine Transactions Permettent l’exécution transactionnelle des activités TransactionScope, Compensate Collections Activités traitant des collections d’objets AddToCollection Erreurs Gestion des erreurs et des exceptions TryCatch, Throw Types d’activités WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 29
  • 30. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Workflows WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 30 Séquentiels Diagrammes de flux Machine d’états
  • 31. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Workflows séquentiels Style hérité de WF 3.5 Définit une séquence d’évènements WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 31
  • 32. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Workflows séquentiels - Exemple Calcul d’une commission d’une transaction bancaire WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 32
  • 33. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Workflows diagrammes de flux Modélisation plus naturelle des processus métier Le designer s’adapte mieux aux grands workflows Langage déclaratif Une expressivité accrue WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 33
  • 34. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Workflows diagrammes de flux - Exemple WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 34
  • 35. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Workflows machine à état Modélise une entité (un système, un sous-système ou un objet) ayant un ensemble d’états finis Une entité passe par un état initial jusqu’à un état final en transitant par plusieurs états intermédiaires L’action qui fait passer le workflow d’un état à un autre, est appelée transition WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 35
  • 36. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Workflows machine à états- Exemple WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 36
  • 37. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Création de workflows Le moyen le plus commun de création de workflows est le designer Les workflows peuvent être créés par code Les workflows peuvent être chargés à partir d’un fichier WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 37
  • 38. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Création de workflows par code - Exemple var workflow = new Sequence() { }; workflow.Activities.Add(new WriteLine() { Text = "Un workflow créé par code !" }); WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 38
  • 39. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Workflow dans un fichier XML - Exemple <Activity mc:Ignorable="sap sap2010 sads" x:Class="Demo1.XmlWorkflow" sap2010:ExpressionActivityEditor.ExpressionActivityEditor="C#« xmlns=http://schemas.microsoft.com/netfx/2009/xaml/activities xmlns:mc=http://schemas.openxmlformats.org/markup-compatibility/2006 xmlns:sads="http://schemas.microsoft.com/netfx/2010/xaml/activities/debugger" <WriteLine Text="Un workflow chargé à partir d'un fichier" sap2010:WorkflowViewState.IdRef="WriteLine_1" sads:DebugSymbol.Symbol="dzxGOlxGb3JtYXRpb25XRlxEZW1vc1xDaGFwaXRyZSAxXERlbW8xXERlbW8xXFhtbFdvcmtmbG93LnhhbWwCIw MjlwECAQEjEyMzAgEC" /> <sap2010:WorkflowViewState.IdRef>Demo1.XmlWorkflow_1</sap2010:WorkflowViewState.IdRef> <sap2010:WorkflowViewState.ViewStateManager> <sap2010:ViewStateManager> <sap2010:ViewStateData Id="WriteLine_1" sap:VirtualizedContainerService.HintSize="211,62" /> <sap2010:ViewStateData Id="Demo1.XmlWorkflow_1" sap:VirtualizedContainerService.HintSize="251,142" /> </sap2010:ViewStateManager> </sap2010:WorkflowViewState.ViewStateManager> </Activity> WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 39
  • 40. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Le Designer Editeur graphique qui est conjonction avec la boîte à outils, facilite la création et l’édition de workflows Conçu en WPF pour rendre plus souple l’édition de workflows Facilite des opérations telles que le zoom, l’organisation de workflows complexes et la navigation dans un workflow Peut être intégré à une application externe pour modifier un workflow en dehors de Visual Studio WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 40
  • 41. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION La barre à outils WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 41
  • 42. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION La Gestion des données WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 42 Arguments Variables Expressions
  • 43. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Les arguments Un argument est une donnée qui est fournie en entrée à un workflow ou qui est récupérée après son exécution Il existe trois types d’arguments : In (entrée), Out (sortie) et InOut(entrée / sortie) Un argument est caractérisé par un nom et un type WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 43
  • 44. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Les variables Les variables sont des espaces de données caractérisés par un type et un nom Comme les langages de programmation, les variables sont utilisées pour le calcul et/ou le stockage de données Une variable a une portée : visible et accessible dans tout le workflow ou dans le contexte d’une seule activité uniquement WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 44
  • 45. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Les expressions Expression mathématique ou logique permettant d’évaluer des résultats par des activités À partir la version 4.5, WF utilise C# pour la syntaxe des expressions (avant la version 4.5, VB était utilisé) WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 45
  • 46. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION La persistance Lorsque le workflow entre dans un état d’inactivité et que la persistance est activée, le moteur enregistre ce workflow dans un référentiel (SQL Server) pour libérer la mémoire et les ressources utilisées par ce workflow La persistance aide aussi à reprendre le workflow suite à une panne matérielle ou tout autre interruption Lorsqu’un évènement attendu par un workflow persisté a lieu, le moteur charge le workflow à partir du référentiel pour continuer son exécution WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 46
  • 47. MODULE 1 - INTRODUCTION SECTION2–INTRODUCTIONÀWORKFLOWFOUNDATION Le suivi Les outils de suivi permettent de fournir des indicateurs sur l’état et sur l’avancement d’un workflow Ces indicateurs permettent de prendre des décisions de débogage ou sur l’utilisation ou l’optimisation des ressources système WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 47
  • 48. MODULE 1 - INTRODUCTION Tutoriaux TUTORIEL 1.1, DÉCOUVERTE D’UNE APPLICATION WF TUTORIEL 1.2, CRÉATION DE NOTE PREMIÈRE APPLICATION WF WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 48