1
Pierre COUZYResponsable de l’activité conseilMicrosoft Regional Director – FranceWinwise
Frank GUIDUCCIArchitecte en Système d’informationDivision Développeurs et Plateforme d’Entreprise
© 2005 Microsoft Corporation
Workflow : WWF & Biztalk 2006Workflow : WWF & Biztalk 2006
2
BAM
BPM
BRE
IntIntéégrationgration
BAM
BPM
BRE
IntIntéégrationgration
Web Services
Base de données
Progiciels
Mainframe
Applications
Partenaires
Utilisateurs
SolutionIndustrialisée
Sécurisée (SSO)
Instrumentée(MOM)
ArchitectureOrientée Service
Performante(WS*, indigo)
Plateforme Homogène
Intégrée(SQL, ETL, BI…)
4
Biztalk 2006 : le serveur de BPM MicrosoftBiztalk 2006 : le serveur de BPM Microsoft
InfrastructureInfrastructure
Services Web, HTTP, FTP, Services Web, HTTP, FTP, SMTPSMTP
Processus Processus métiermétier
S.I,ressources, S.I,ressources, processusprocessus
Activités Activités métiermétier
SupervisionSupervision
ConnectivitéConnectivité
AdaptateursAdaptateurs
7
Définir les Processus Définir les Processus Métiers et Indicateurs Métiers et Indicateurs de Performancede PerformanceAccéder en temps réel Accéder en temps réel aux données et aux données et Métriques (KPI)Métriques (KPI)Analyser et Optimiser Analyser et Optimiser les Règles Métierles Règles Métier
Administrer et Administrer et Configurer les Configurer les Processus MétiersProcessus MétiersFaciliter Faciliter l’Exploitation et le l’Exploitation et le DéploiementDéploiementConfigurer les Configurer les Alertes et Alertes et NotificationsNotifications
Environnement Environnement de de Développement Développement Unique et Unique et IntégréIntégréTravailler en Travailler en mode mode Collaboratif Collaboratif avec les avec les Utilisateurs et Utilisateurs et équipes projetéquipes projet
Processus métier : Productivité AccrueProcessus métier : Productivité Accrue Processus Métiers
Évolutifs
12
Connectivité : incluse en standardConnectivité : incluse en standard
SAPSiebelJDE Oneworld JDE EnterprisePeoplesoftOracle ApplicationAmdocs Clarify CRM
SAPSiebelJDE Oneworld JDE EnterprisePeoplesoftOracle ApplicationAmdocs Clarify CRM
HTTP, FTP, SMTP, SOAPPOP3WSE (WS*)FichierWebsphere MQMSMQSQL Server OracleTibco Rendez-VousTibco EMS
CICS, IMSFichiers VESAMAS400 DB2
Et bien d’autres (+200) via nos partenaires IWay & Attunity
Progiciels Systèmes IBM Techniques
13
Connectivité : Votre écosystème partenaire extension de votre entreprise
Connectivité : Votre écosystème partenaire extension de votre entreprise
Applications, utilisateurs, services , processus
Support tous les format (EDIFACT, EANCOM, X12, Gencod, ODETTE, VDA…etc) Connexion aux VAN (Atlas 400, GXS,…etc) Tous protocoles(AS2, FTP, OFTP, SMTP, MQSeries,…etc) Migration existant via traducteur de map
EDI & AS2 Solutions Verticales
Web services
Partenaires Sécurité SupervisionPerformance
14
Connectivité : Architecture interne
PortRéception
AdapterRéception
PipelineRéception
PortEnvoi
AdapteurEnvoi
PipelineEnvoi
MessageBoxStockage Garanti
Hôte Hôte
Hôte
MoteurRègles Métier
Orchestration
Message
Message
17
Infrastructure technique : TopologieInfrastructure technique : Topologie
Topologie « Hub and spoke »Stratégies de transport :
Transport Multi-protocolesUtilisation de l’infrastructure de transport existante MSMQ, File, HTPP, MQ Series…
Topologie « Hub and spoke »Stratégies de transport :
Transport Multi-protocolesUtilisation de l’infrastructure de transport existante MSMQ, File, HTPP, MQ Series…
Site 2Site 2
Site 1Site 1
Site 3Site 3PartenairePartenaire
18
Infrastructure technique : Montée en chargeInfrastructure technique : Montée en charge
Message boxMessage box
HostHost
MachineMachine
SQL ServerSQL Server
Procédures stockéesProcédures stockées
Données (messages, souscriptions, etc.)Données (messages, souscriptions, etc.)
HostHost
MachineMachine
HostHost
MachineMachine
HostHost
MachineMachine
Répartition de chargeRépartition de charge
20
Management Pack pour MOM (Microsoft Operation Manager)Plusieurs centaines de règles (évènements Windows, performances)Notification des arrêts du serveur, de la suspension d’un document, de l’atteinte d’une taille critique de la base,…
Infrastructure technique : SupervisionInfrastructure technique : Supervision
23
Scenario DémonstrationScenario Démonstration
SystemsSystemsSystemsSystems
CustomerCustomerCustomerCustomer
BizTalkBizTalkBizTalkBizTalk ERPERPERPERP
CRMCRMCRMCRM
InventoryInventoryInventoryInventory
OrchestrationOrchestrationOrchestrationOrchestration
InfoPath InfoPath & &
OutlookOutlook
Sales ManagerSales ManagerSales ManagerSales ManagerSharePoint SharePoint
&&InfoPathInfoPath
Purchase OrderPurchase Order PO ReviewPO Review
Business RulesBusiness RulesBusiness RulesBusiness Rules
24
25
BAM
BPM
BRE
IntIntéégrationgration
BAM
BPM
BRE
IntIntéégrationgration
Web Services
Base de données
Progiciels
Mainframe
Applications
Partenaires
Utilisateurs
Connectivité fournie en standard aux :• PGI les plus répandus (SAP, Siebel, Peoplesoft, JDE ,Oracle,..etc) • Monde mainframe IBM
• Connecter l’ensemble des partenaires• Support de l’ensemble des formats EDI (EDIFACT, X12, Odette, Tradacom,…)• Connexion aux VAN• Accélérateur (Rosettanet, SWIFT, HL7, HIPPA)
• Intéraction naturelle avec les processus d’entreprise quelque soit le client• Exposer nativement les processus et indicateurs métiers à travers le portail BAM
27
Pierre COUZYMicrosoft Regional Director – [email protected]
© 2005 Microsoft Corporation
Présentation Workflow Présentation Workflow FoundationFoundation
28
AgendaAgenda
Quelques points de repèreButs de conceptionTypes de workflows proposésPositionnement de WF et Biztalk
WF : les principesWorkflowActivitéHébergement
Roadmap et ressources
29
Quelques points de repèreQuelques points de repère
Un ensemble d’Un ensemble d’activitésactivités qui qui coordonnent coordonnent
des personnes et/ou des logiciels…des personnes et/ou des logiciels…ValidationResponsableExemple…. Exemple…. ValidationInventaire
Un organigramme ? Un organigramme ?
……organisées en organisées en workflowworkflow..
Ou un diagramme d’état ? Ou un diagramme d’état ?
30
WF : buts de conceptionWF : buts de conception
Proposer une plate-forme sur Proposer une plate-forme sur laquelle tout l’écosystème Microsoft laquelle tout l’écosystème Microsoft
puisse s’appuyer puisse s’appuyer
Une seule souche techniqueValable pour tous les besoinsUtilisable pour les workflows techniques et humains
Plus un socle qu’un produit ou une applicationUne API dépendant uniquement de .NetInstallable directement sur tous les OS
Faire sortir le workflow de son ghetto Rendre les outils familiers du développeur non spécialiste
Une seule souche techniqueValable pour tous les besoinsUtilisable pour les workflows techniques et humains
Plus un socle qu’un produit ou une applicationUne API dépendant uniquement de .NetInstallable directement sur tous les OS
Faire sortir le workflow de son ghetto Rendre les outils familiers du développeur non spécialiste
31
WorkflowFoundation
.NET
Information Worker• document life cycle• collaboration• Office 12• ISV / SI solutions
IT Management• hire/fire• resource provisioning• MIIS• ISV / SI solutions
LOB Apps• sales automation• quote to cash• MBS applications• ISV / SI Solutions
WF : quelques scénariosWF : quelques scénarios
.NET Developer• pageflow• mainstream dev• ASP, WinFX• ISV / SI Solutions
BPI• integration, B2B• BizTalk• ISV / SI Solutions
32
Les types de workflow Les types de workflow
Participants : utilisateurs, rôlesType : flexible, dynamiqueDonnées : peu structurées
Participants : utilisateurs, rôlesType : flexible, dynamiqueDonnées : peu structurées
Participants: applicationsType : processus prédéfiniDonnées : structurées, transactionnelles
Information Worker• Validation de document…
Information Worker• Validation de document…
TechniqueTechniqueHumainHumain
Windows Workflow Foundation
Business to Business• Commandes
Business to Business• Commandes
Applications Line of Business• B2B, ventes…
Applications Line of Business• B2B, ventes…CRM ERP
Applications internes• demande de support, achats
Applications internes• demande de support, achats
.NET• MVC, coordination…
.NET• MVC, coordination…
33
WinFXWinFX
WF et BizTalkWF et BizTalk
Windows Windows Workflow Workflow
FoundationFoundation
MessagingMessagingDesigDesig
nnToolsTools
BusinesBusinesss
ActivityActivityMonitorMonitor
AndAndAdminAdminToolsTools
OrchestratioOrchestrationn
TransformatiTransformationon
AdaptersAdapters
BizTalk ServerAcceleratorsAccelerators
• BizTalk BizTalk • Un produitUn produit• Pour des scénarios B2B, EAI, Pour des scénarios B2B, EAI, BPMBPM• Comporte des outils deComporte des outils de déploiement, suivi, montée en déploiement, suivi, montée en charge, etc. charge, etc.
• Workflow FrameworkWorkflow Framework• Une API WinFX Une API WinFX • Scénarios très diversScénarios très divers• Permet d’ajouter des Permet d’ajouter des fonctionnalités de workflow à fonctionnalités de workflow à des applications existantes.des applications existantes.• Livré sans infrastructure Livré sans infrastructure d’hébergement : à vous de la d’hébergement : à vous de la créercréer
Visual Studio DesignerVisual Studio Designer
• Une prochaine version Une prochaine version intègrera WF dans le moteur intègrera WF dans le moteur d’orchestrations.d’orchestrations.
WorkflowWorkflow
34
Les principesLes principes
Les Workflow WFStyles proposésAnatomie d’un workflowComment écrire un workflow
Les Activités WFDéfinitionAnatomieActivités standard / Activités personnalisées
L’hébergement des workflowsLe runtime et ses points d’extensibilitéIntégration Office 12
Roadmap, liens
Les Workflow WFStyles proposésAnatomie d’un workflowComment écrire un workflow
Les Activités WFDéfinitionAnatomieActivités standard / Activités personnalisées
L’hébergement des workflowsLe runtime et ses points d’extensibilitéIntégration Office 12
Roadmap, liens
35
Processus hôte
Workflow FoundationWorkflow Foundation
WF : architecture généraleWF : architecture générale
Runtime
Un Workflow
Une Activité
ServicesPoints d’extensibilité
Activités de base
Vos activités
36
Principaux styles de WorkflowPrincipaux styles de Workflow
Ces styles sont extensibles; les outils qui ont permis à Microsoft de les créer font partie de l’API WF
Activitésconditionnées
Step2
Step1Rule1Rule1
Rule2Rule2
Data
Les données définissent le flux
Automate à états
State2
State1EventEvent
EventEvent
Les événements définissent le flux
Séquentiel
Step1
Step2
La structure définitle flux d’exécution
37
Anatomie d’un WorkflowAnatomie d’un WorkflowUn workflow WF est une classe .NetUn workflow WF est une classe .Net
… éventuellement décrite par du XML
Imports System.Workflow.ActivitiesPublic Class MyWorkflow Inherits SequentialWorkflow …
End Class
<?Mapping XmlNamespace="Activities" ClrNamespace="System.Workflow.Activities" Assembly="System.Workflow.Activities" ?>
<SequentialWorkflow x:Class="MyWorkflow" xmlns="Activities" xmlns:x="Definition"> …</SequentialWorkflow>
38
Description d’un workflowDescription d’un workflow
Assemblage.Net
DéclaratifDéclaratif
XMLXML
MixteMixte
C#/C#/VBVB
ImpératifImpératif GénéréGénéré
XMLXML C#/C#/VBVB
Les composantsLes composantsélémentaires seélémentaires sedécrivent en XOMLdécrivent en XOML
XOML pour le XOML pour le workflowworkflowCode là où c’estCode là où c’estutileutile
Code pour tousCode pour tousles élémentsles éléments
XMLXML C#/C#/VBVB
Sérialisation d’un Sérialisation d’un graphe d’objetsgraphe d’objets
Compilateur de workflowwfc.exe
Compilateur C#/VB
39
Les activitésLes activités
Ce sont les composants élémentaires des workflows
Unité d’exécution et de compositionLes activités basiques sont les étapes élémentairesLes activités composites permettent de regrouper d’autres activités (par exemple State ou Sequence)Microsoft fournit un jeu standard d’activitésL’API permettant de développer d’autres activités est publique et des designers sont intégrés à Visual Studio 2005
Ce sont les composants élémentaires des workflows
Unité d’exécution et de compositionLes activités basiques sont les étapes élémentairesLes activités composites permettent de regrouper d’autres activités (par exemple State ou Sequence)Microsoft fournit un jeu standard d’activitésL’API permettant de développer d’autres activités est publique et des designers sont intégrés à Visual Studio 2005
40
Anatomie d’une activitéAnatomie d’une activité
Les activités sont des classes .Net
Elles comportent des propriétés et événements définis par code et manipulables depuis les workflows
Leurs méthodes sont automatiquement appelées par le runtime ou par les designers.
Elles sont distribuables sous forme de DLLs.
Les activités sont des classes .Net
Elles comportent des propriétés et événements définis par code et manipulables depuis les workflows
Leurs méthodes sont automatiquement appelées par le runtime ou par les designers.
Elles sont distribuables sous forme de DLLs.
41
Exemple d’activitéExemple d’activitéusing System.Workflow.ComponentModel;public partial class SendMail : System.Workflow.ComponentModel.Activity{ public SendMail() { InitializeComponent(); } protected override Status Execute(ActivityExecutionContext context) { // my logic here
return Status.Closed; }}public partial class SendMail{ public string subject; public string Subject { get { return subject; }
set { this.subject = value; } } private void InitializeComponent() // designer generated { this.ID = "SendMail"; }}
42
Activités standardActivités standardTypes de workflow
SequentialWorkflow, StateMachineWorkflow
StructurellesSequence, Parallel, Replicator, While…
Automate à étatsState, StateInitialization, EventDriven, SetState
Conditions et règlesIfElse, ConditionedActivityGroup, Policy
Types de workflowSequentialWorkflow, StateMachineWorkflow
StructurellesSequence, Parallel, Replicator, While…
Automate à étatsState, StateInitialization, EventDriven, SetState
Conditions et règlesIfElse, ConditionedActivityGroup, Policy
TransactionsTransactionContext, Compensate
CommunicationsEventSink, InvokeMethod, InvokeWebService, WebServiceReceive/Resp…
BPEL Activity LibraryBPEL 1.1 compliant
activities and import/export
43
Création de nouvelles activitésCréation de nouvelles activités
Déjà disponibles sur le site WindowsWorkflow.net
SPS2003 / WSS File Upload/DownLoad Registry ManagerValidate IBANFor EachXSD ValidateXSLT TransformSendEmailSQL Server DatabaseFile System
Déjà disponibles sur le site WindowsWorkflow.net
SPS2003 / WSS File Upload/DownLoad Registry ManagerValidate IBANFor EachXSD ValidateXSLT TransformSendEmailSQL Server DatabaseFile System
44
Visual Studio et WFVisual Studio et WF
Activity Designer
Sequential Designer
Workflow Designers
Création de workflowsXML et/ou codeIntégration de code .NetDéboguage intégréDesigner réutilisable dans d’autres applications
Activity Designer
Création d’activitésApproche à la User ControlHéritage possibleInteraction pré-paramétrée avec les designers
State Machine Designer
45
Hébergement Hébergement
Un workflow est une classe .NeIl doit s’exécuter dans un processus hôte
Il a des besoins constantsS’exécuterEtablir un contexte transactionneletc.
.. dont l’implémentation varieCommunication avec l’hôtePersistence des donnéesHeartBeatEtc.
Un workflow est une classe .NeIl doit s’exécuter dans un processus hôte
Il a des besoins constantsS’exécuterEtablir un contexte transactionneletc.
.. dont l’implémentation varieCommunication avec l’hôtePersistence des donnéesHeartBeatEtc.
46Processus hôte
Workflow FoundationWorkflow Foundation
Runtime et ServicesRuntime et Services
Base Activity Library
Un WorkflowUn Workflow
Services fournis au Runtime par le processus hôte
Persistence Communication Tracking …
Runtime
TrackingGestion d’étatExécutionWorkflow
DynamicUpdate
47
Exemple d’hébergementExemple d’hébergement
ASP.NET
WorkflowWebHostingModule(httpmodule)
WorkflowRuntime
Out-of-box or Custom Services
ASPTimerService
ASPThreadingService
Workflow Receive
Response Response
WebService
SqlPersistenceService
Session
Timers
Workflow State
48
WF dans Office 12WF dans Office 12
Hébergement des APIs dans SharePoint
Possibilité d’associer 1 à n workflows à une librairie avec des filtres
L’utilisateur initie le workflow via la création d’un document, un post de formulaire ou un menu dédié des outils Office 12 (menu Share Document)
Le workflow se déroule avec une interaction utilisateur via les outils (Outlook, Infopath) ou les Forms serveur (formulaire Infopath ASPX)
Hébergement des APIs dans SharePoint
Possibilité d’associer 1 à n workflows à une librairie avec des filtres
L’utilisateur initie le workflow via la création d’un document, un post de formulaire ou un menu dédié des outils Office 12 (menu Share Document)
Le workflow se déroule avec une interaction utilisateur via les outils (Outlook, Infopath) ou les Forms serveur (formulaire Infopath ASPX)
49
WF dans Office 12WF dans Office 12
Workflows fournis en standardRouting & ApprovalTracking ApplicationsList ModerationDocument Expiration
Workflows fournis en standardRouting & ApprovalTracking ApplicationsList ModerationDocument Expiration
50
Roadmap
Beta1 : PDCBeta2 : DécembreRTM : en 2006Distribué en stand-alone (3 Mo), dans WinFX, et dans Office 12
20072005 2006
Final featuremilestone
V1V1RTMRTMB1B1 B2B2
Q1 Q2 Q3 Q4
51
RessourcesRessources
Le siteWindowsWorkflow.net
Les ressources en ligneBlogs, Webcasts, articles MSDN
Les labs12 labs téléchargeables, allantde la prise en main à la créationde designers de workflows
Le livre
… et nous !
Le siteWindowsWorkflow.net
Les ressources en ligneBlogs, Webcasts, articles MSDN
Les labs12 labs téléchargeables, allantde la prise en main à la créationde designers de workflows
Le livre
… et nous !
52
© 2004 Microsoft Corporation. All rights reserved.© 2004 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. This presentation is for informational purposes only.
MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.
53
© 2004 Microsoft Corporation. All rights reserved.© 2004 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. This presentation is for informational purposes only.
MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.