Principale entreprise française indépendante dédiée aux technologies Microsoft 12 ans d’expérience dans le conseil et la réalisation de projets à haute valeur ajoutée sur ces technologies 90 consultants experts sur les dernières technologies Microsoft : développement avancé (.Net 3.5, Silverlight, WPF...) génie logiciel (Visual Studio, VSTS, TFS...) travail collaboratif (WSS, MOSS, VSTO...) gestion de bases de données et Business Intelligence (SQL Server 2005/2008, PerformancePoint Server ) architecture et intégration (BizTalk, Workflow Foundation, WCF...) er centre de formation en France sur les technologies.Net et la BI. Edition de frontaux et composants logiciels programmables (ReportSmith.net). Une densité de certification unique : Regional Director, Gold Certified Partner, une forte concentration de MVPs, 100% des collaborateurs certifiés.
Principes de fonctionnement Les différents modes de représentation Hébergement d’un Workflow Création d’activités Designer personnalisé
Un Workflow est un ensemble d’activités qui coordonnent des personnes et/ou des logiciels… ValidationResponsable Exemples : ValidationInventaire Diagramme de flux …en définissant un chemin d’exécution Automate à états
Un Framework applicatif permettant l’intégration et le développement de Workflow. Un modèle de programmation extensible Nécessite le Framework.Net (3.0 ou 3.5) pour tourner Pas de redistribuable à installer Pour la conception, VS2005 (plus un addin) ou Visual Studio 2008 Proposer une plate-forme sur laquelle tout l’écosystème Microsoft puisse s’appuyer
Un processus hôte, qui héberge Des services techniques, sur lesquels s’appuie Le runtime de WF, qui exécute Les workflows définis par vous, composés Des activités standard ou des vôtres Processus hôte Workflow Foundation Runtime Un Workflow Une Activité Services Points d’extensibilité Activités de base Vos activités
Ces styles sont extensibles : les outils qui ont permis à Microsoft de les créer font partie de l’API Activités conditionnées Step2 Step1 Rule1 Rule2 Data Les données définissent le flux Automate à états Les événements définissent le flux Séquentiel La structure définit le flux d’exécution
Représentation intuitive Transmission d’un ensemble de paramètres sur le point d’entrée Des activités permettent la communication en cours de traitement Possibilité d’englober un segment dans une logique de transaction longue Possibilités de synchronisation sur des branches indépendantes Le point de sortie rend des paramètres Le chemin d’exécution a été fixé par le développeur Séquentiel
Le chemin d’exécution n’est plus explicite Le développeur définit les états possibles et les conditions de transition d’un état vers un autre. Le passage de paramètre se fait en général sur les événements de changement d’état La représentation est assez résistante aux changements de cahier des charges Contrairement au mode séquentiel Automate à états
On ne peut plus parler de chemin d’exécution Le développeur définit les règles et faits, le moteur de workflow se charge ensuite de résoudre le système Extrêmement résistant aux changements de cahier des charges Mais pas du tout intuitif en débogage Le recours à des jeux de tests devient systématique Activités conditionnées Step2 Step1 Rule1 Rule2 Data
Le processus hôte représente l’application qui exécutera les Workflow Aucun n’est fourni en standard, c’est à vous de le créer Exemples de processus hôtes : Applications Web (ASP.NET ou Web Services) Applications console Applications WinForms Services Windows Sharepoint
Nouveauté du framework 3.5 Intégration des communications WCF au sein des activités standard Nouveauté de Visual Studio 2008 Les templates de projet pour WF permettent directement d’héberger un Workflow en tant que service WCF Agréable en phase de développement
L’un des points les plus techniques de WF Permettent l’ajout de fonctionnalités Définissent les comportements fondamentaux Gestion de la concurrence d’accès Possibilité d’utiliser des workflows de longue durée Mécanismes transactionnels Mise à disposition de threads pour l’exécution des worlkflows Ils sont indépendants des workflows et du runtime Insérés dans le runtime par le host Indépendamment des WF à exécuter
Permet l’échange d’informations entre les applications hôtes et le moteur de Workflow Communication Gestion des threads Scheduling Permet d’enregistrer l’état du Workflow dans un référentiel (base de données…) Persistance Permet de conserver une trace des étapes d’exécution d’un Workflow dans un référentiel (base de données…) TrackingEtc.
Activités Standard Activités supplémentaires Dev custom Fournies dans WF Héritage composition Jeux d’activités orientés métier Téléphonie Logistique CRM etc.
XAML XML XAMLC#/VB XML + Code C#/VB Code Compilateur de workflowsCompilateur C#/VB XAML XML Assemblage.Net Moteur d’exécution Instance de workflow Mode de compilation de WF
Un workflow peut être défini directement au format XAML (.XOML) Workflow Foundation propose une API de sérialisation / désérialisation Une instance de Workflow est un arbre d’instances d’activités, et XAML est un mode de description d’arbres d’instances.Net… Pourquoi ne pas créer nos propres concepteurs de workflow?
Proposer un module de modélisation de Workflow dans une application Windows existante Créér un éditeur de Workflow spécialisé Choix des activités disponibles Configuration par défaut imposée Pour des utilisateurs non techniques Proposer un outil graphique de suivi de Workflow Application Windows ou site Web
Merci à tous ! Questions - Réponses Et n’oubliez pas (fr) (en)
La référence technique pour les IT Pros : pour les IT Pros :technet.microsoft.com L’engagement Microsoft pour les développeurs : msdn.microsoft.com S’informer - Un portail d’informations, des événements, une newsletter bimensuelle personnalisée Se former - Des webcasts, des articles techniques, des téléchargements, des forums pour échanger avec vos pairs Bénéficier de services - Des cursus de formations et de certifications, des offres de support technique Visual Studio Abonnement MSDN Premium Abonnement TechNet Plus : Versions d’éval + 2 incidents support
© 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION. Votre potentiel, notre passion TM