Bernard Fedotoff Microsoft Regional Director [email protected] Agilcom.

28
D108 Applications branchées avec Windows Communication Foundation et Windows Workflow (200) Bernard Fedotoff Microsoft Regional Director [email protected] Agilcom

Transcript of Bernard Fedotoff Microsoft Regional Director [email protected] Agilcom.

Page 1: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

D108Applications branchées avecWindows Communication Foundationet Windows Workflow(200)

Bernard FedotoffMicrosoft Regional [email protected] Agilcom

Page 2: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

10 route de NanfrayPAE du Levray74960 CRAN-GEVRIERhttp://www.agilcom.info Tél : +33 4 50 10 49 70

Nos blogs :http://blogs.developpeur.org/cduboishttp://blogs.developpeur.org/bfedotoff

Coach ASP.NET, C#, VSTS et bientôt VB.NET

AGILCOM

Christine Dubois et Bernard Fedotoff

Page 3: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

Agenda

Une vision différente sur Workflow FoundationLa problématique métier (de la finance)L’extension des structures WF

Page 4: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

windows workflow FOUNDATIONqu’est-ce qu’un workflow ?

Une abstraction pour décrire un scénario réelUn ensemble d’Activités qui coordonne des humains ou des logiciels ou des composants…

Le cadre est très large (au delà de l’EDA, de l’orchestration de services SOA et du workflow humain)

Page 5: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

La structure de donnéescode as data

Représentation ‘compilable’ des intentions du concepteur

Programmation déclarativeReprésentation graphiqueReflexionAu-delà des types de baseInterprétation de la persistance possible au déploiement / runtime

Et la sémantique du programme?

Disséminée dans des bouts de codeDécrit comment le programme est écrit ET comment il s’exécute

Page 6: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

BizTalk:Représentation graphiqueSyntaxe XMLDécouplage développement – déploiement

MaisNiveau sémantique fixé

Structures / activités

Architecture imposéeSur / comment

Un peu d’histoireWF unification

Page 7: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

windows workflow FOUNDATION

Un modèle de programmation extensible pour écrire et exécuter des programmes réactifsMéta-Runtime

MoteurServices

Exprimant :Ce que le programme doit faire

Le développeur fournit le schéma du programme basé sur des activités extensibles

Comment il s’exécuteDéfinit l’interprétation de ce schéma décrivant comment il est déployé et exécuté

Une nouvelle manière de développerDans la lignée des DSLs (Domain-Specific Language)De WCF, linQ, de « l’entity framework », …

Page 8: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

La problématique métier (1/4) :PebbleAge

Domaine d’expertiseIntégration depuis 10 ans de solutions logicielles pour la finance d’entreprise et le « Tax Reporting ».

Projet stratégique PebbleTaxEdition d’une suite logicielle www.pebbletax.com spécialisée dans l’automatisation des processus de reporting fiscaux pour les entreprises internationales et les calculs de prix de transfertChoix des technologies Microsoft .Net 3.5 ;

Bureaux à Paris, Genève, Zurich

Page 9: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

La problématique métier (2/4) :le cas CleanAll

CleanAll Inc Spécialiste mondial du nettoyage.

Modèle économiqueSpécialisation des activités par pays

ConséquenceNombreuses transactions de biens et de services au sein du groupe.

Contrainte fiscaleFixation d’un prix de transfert conforme à des normes fiscales pour les ventes internes

Contrainte économique et financièreCalcul et justification d’un prix de transfert « conforme »

Page 10: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

La problématique métier (3/4) : refacturation

Catégorie de ProduitsSolvants, Décapants, Détergents, Abrasifs

Entité FranceResponsable du Marketing EMEA pour le groupe

Entité Suisse, ou autres paysProduction et vente de Solvants et de Décapants

ProblématiqueLe détail des frais marketing par pays par catégorie de produit n’est pas contenu dans la base de données financière du groupe.Comment La France doit elle facturer ses frais de Marketing à la Suisse pour les Solvants et les Décapants ?

Page 11: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

La problématique métier (4/4) : Prix de transfers

Norme fiscale admissiblePrix de vente pour un service = coût du service Marketing +Données Financières 5%Le CA par Catégories par Pays est connu

Règle1 (R1)La répartition des frais de marketing s’effectue au prorata du CA des ventes pour chaque catégorie de produits pour chaque pays

Règle2 (R2)Les Solvants demandent 2 fois plus d’effort marketing que les autres produits

Page 12: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

La modélisation

Coût Marketing ?Comment

calculer les montants refacturés entre les

entités du groupe ?

Chiffre d’affaire

Chiffre d’affaire par pays et par catégorieCoût Marketing

par pays et par catégorie ?

Page 13: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

Où est la connaissance ?

L’implémentation de telles solutions nécessite de fortes compétences financières et légales ;La connaissance des processus et des règles financières représente l’essentiel de la valeur du métier ;Elle est noyée dans du code spaghetti, généralement dans des fichiers de scripts et/ou dans des feuilles Excel …

Et l’agilité dans tout cela ?

Page 14: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

windows workflow FOUNDATIONclarté et agilité des processus

WF fournit les mécanismes :- pour exprimer l’algorithme ;- pour exécuter le calcul ;- pour suivre le processus ;WF supporte l’extension des structures :- modélisation des contextes et des points de vue ;- implémentation des modèles sur des cibles de reporting ;- définition de la cohérence et de la complétude.

Page 15: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

windows workflow FOUNDATIONimplémentation dans PebbleTax

WCF

SystèmeLocal

Système deReporting LégalEnterprise

PebbleTax Server - Portail WSS (référentiel)- Services PebbleTax

- Accès aux données- Exécution Processus

Portail Financier

PebbleTaxEditor

PebbleTaxSimpe Designer

Définition et implémentation

Suivi et collaboration

Page 16: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

La suite PebbleTax

Démo

Page 17: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

L’extensibilité des activités est une évidence, mais comment intégrer des structures de contrôles particulières :

Une notion financière ne prend tout son sens que dans un contexte précis : le coût marketing des détergents en région Rhône-Alpes ou en France ;Les règles de calculs s’appliquent à des hyper-cubes variants en fonction des contextes ;Les règles de calculs se composent de plusieurs projections de données;

C’est une structure de contrôle adaptée au métier.

Extension des structures :Les processus et les contextes (1/2)

Page 18: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

Extension des structures :Les processus et les contextes (2/2)

Les handles (poignées) synthétisent les concepts financiers ;Les contextes complètent le point de vue de l’opération ; Les règles définissent les projections à réaliser, en suivant un vecteur ; L’activité Allocate

collecte les opérations définies dans les règles ;et les exécute ;

HandleCoût Marketing

HandleCoût Marketingpar pays et par

catégorie

ContexteEn Europe

AllocateExécute le calcul

RuleL’algorithme

Page 19: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

Extensibilité des structures :les contextes, les règles, les handles et l’exécution

Démo

Page 20: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

Les mêmes règles de modélisation financières s’appliquent à toutes les entreprises :

Sorban & Oxley (SOX), IAS / IFRS, Arm's Length Transaction, etc.

Chaque entreprise possède sa propre structure de reporting financier (n axes);Chaque modèle est implémenté dans le contexte d’une entreprise :

pour casser le cycle développement – test – déploiement ;

C’est les « extenders d’activité »

Extension des structures : Implémentations des modèles (1/2)

Page 21: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

Extension des structures : Implémentations des modèles (2/2)

La librairie standard fournit les structures de contrôles pour les modèles ;Les implémentations enrichissent dynamiquement les modèles et assurent la complétude et l’exécution des processus ;Chaque cible est traitée unitairement sans remettre en cause le modèle défini ;

=>

{

}

.dll (s)Modélisation

Librairie standard

.dll (s)Implémentation

Extenders

=>

Com

ment

est

-ce

cara

ctéri

sé ?

Com

ment

est

-ce

calc

ulé

?+

Processus Financier completWindows Workflow Foundation

Page 22: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

Extensibilité des structures :l’implémentation de modèles

Démo

Page 23: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

Les modélisations et les implémentations suivent des règles de cohérences propres :

Une règle doit référencer un handle et un vecteur;Une activité d’allocation doit être plongée dans un contexte implémenté complet (complétude des n axes);Etc.

La compilation de WF fournit les mécanismes de validation sémantique de ce qui est exprimé;

Extension des structures : validation des sémantiques (1/3)

Page 24: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

Extension des structures : validation des sémantiques (2/3)

Designer

ToolboxItem

Theme

Activity Validator

Aspect visuel Activité (obligatoire)DependencyProperty

Execute

Règles de compilation

Une activité personnalisée

Page 25: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

Extension des structures : validation des sémantiques (3/3)

La validation des sémantiques est réalisée avec les validators d’activité ;

Les extenders fournissent des extenders de validation pour chacune des activités implémentées ;

=>

{

}

.dll (s)Modélisation

Librairie standard

.dll (s)Implémentation

Extenders

=>C

om

ment

est

-ce

cara

ctéri

sé ?

Com

men

t est

-ce

calc

ulé

?

+

Validator

Handler

Page 26: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

Résumé de la session

Windows Workflow Foundation est une manière visuelle d’exprimer des processus;L’extensibilité est au niveau :

des activités,mais aussi des structures de contrôle ;

WF peut prendre en compte des modèles complexes métiers, avec leurs variations pour s’adapter aux implémentations d’entreprise ;

WF, c’est essentiellement la fondation d’une nouvelle façon de

développer.

Page 27: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

Questions ?

Page 28: Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom.

© 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.