Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Azra [Florent Santin]

.Net, X'Net, aucun lien de parenté V2.0

Actualités


  • MSN Alerts
    View Florent Santin's profile on LinkedIn
WF 4.0: Le retour du State Machine!

Après une belle absence remarquée (et reprochée?!) dans le cycle des Beta de Visual Studio 2010 / Workflow Foundation 4.0, le State Machine Workflow (ou automate à états finis) fait enfin son grand retour parmi les modèles de WF de base (aux cotés du Sequential WF et du FlowChart)!

Bon, c’est un peu après la bataille, Visual Studio RTM à été livré il y’a 2 semaines… mais bon, du coup, le voila rendu disponible avec son code source directement sur CodePlex (http://wf.codeplex.com) dans le nouveau concept “d’Activity Pack” (ensemble d’activités complémentaires mis gratuitement à disposition par l’équipe WF). Un “Activity Pack” est donc un complément de Workflow Foundation proposé par l’équipe produit avec MSI pour installation directe dans Visual Studio, code source si nécessaire et surtout une bonne documentation qui explique comment fonctionne et s’utilisent les activités.

A noter au passage qu’un 2eme Activity Code Pack “ADO.NET Activity Code Pack” a également été rendu disponible. Moins intéressant que le StateMachine, je prendrai quand même le temps d’en toucher deux mots dans un prochain post.

image

Détail du pack:

image

Ce pack se compose de 3 activités visibles

  • StateMachine (le conteneur)
  • FinalState (l’état de fin, obligatoire, le conteneur contenant également obligatoirement un état de départ) / Initial)
  • State (l’état) en soit, qui peut contenir deux sous séquences
    • Entry: L’action (ou la séquence) à exécuter quand le Workflow entre dans l’état
    • Exit: L’action lorsque le Workflow quitte l’état

image

Et d’une “invisible”:

  • Transition: L’action qui permet de passer d’un état à un autre (correspondant aux flèches entre les états donc) et qui contient trois zones:
    • Trigger: L’événement qui déclenche/motive la transition (qui met donc le workflow en “Idle”: Delay “Timeout” / interaction utilisateur / appel WCF…)
    • Condition: Un trigger peut être câblé sur plusieurs branches, dans ce cas la condition permet de dire quel est l’état suivant
    • Action: L’activité à exécuter une fois que le trigger s’est déclenché et si la Condition est évaluée comme état juste (juste avant d’arriver sur l’état suivant donc)

image 

Flowchart vs StateMachine

Mais alors, quelle est la différence entre un FlowChart et un StateMachine? Finalement d’un point de vue purement technique, il serai possible de réécrire un StateMachine avec un FlowChart, le contraire n’étant pas forcement aisé.

Un FlowChart est un Workflow motivé (ou de synchronisation) par des actions et / ou des événements pour les transitions entre ses étapes (flowstep) alors que le StateMachine est un type de Workflow motivé uniquement par des événements pour ses transitions entre états. Un automate à état finit (StateMachine) est donc idéal pour les Workflow humains, car purement taillé pour.

Le revoilà parmi nous, les premiers tests sont très concluants et me mettent déjà dans tout mes états  :)

Posted: mercredi 28 avril 2010 23:36 par azra
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :

Commentaires

JeremyJeanson a dit :

Bonjour Florent,

La StateMachine enfin de retour? Peut être un peu tardif le retour... mais tellement bon en comparaison à la WF3.

J'ai bien peur qu'elle ne trouve pas son public tellement le FlowChart peut être populaire maintenant :(

Pour ADO, Mr Maurice de Beijer nous a gratifié d'une très belle introduction via ce post :

http://msmvps.com/blogs/theproblemsolver/archive/2010/04/27/trying-the-wf-ado-net-activity-pack-ctp-1.aspx

@+

# avril 29, 2010 09:45
Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- [SharePoint] Les sessions TechDays 2012… par Le blog de Patrick [MVP SharePoint] le il y a 5 heures et 13 minutes

- TechDays Paris 2012 : Session pleinière jour 3 par Blog Technique de Romelard Fabrice le 02-09-2012, 11:01

- Mishra Reader : un lecteur RSS très Zune Style en Open Source ! par Cyril Sansus le 02-09-2012, 08:28

- [framework 4] Les Tasks et le Thread UI par Fathi Bellahcene le 02-09-2012, 00:33

- Workflow Foundation 3 a un pied dans la tombe par Blog de Jérémy Jeanson le 02-08-2012, 22:15

- TechDays Paris 2012 : Nouvelles tendances du poste de travail - Bring Your own PC par Blog Technique de Romelard Fabrice le 02-08-2012, 19:42

- TechDays Paris 2012 : System Center Service Manager 2012 Vue d’ensemble par Blog Technique de Romelard Fabrice le 02-08-2012, 17:32

- TechDays Paris 2012 : Pleinière second jour par Blog Technique de Romelard Fabrice le 02-08-2012, 16:23

- TechDays Paris 2012 : Retour d'expérience sur la mise en place d'un Cloud Privé par Blog Technique de Romelard Fabrice le 02-08-2012, 16:04

- TechDays Paris 2012 : Comment SharePoint a sauvé mes TechDays par Blog Technique de Romelard Fabrice le 02-07-2012, 23:59