Bernard Fedotoff Microsoft Regional Director bfedotoff@hotmail.com Agilcom

Preview:

Citation preview

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

Bernard FedotoffMicrosoft Regional Directorbfedotoff@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

Agenda

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

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)

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

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

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 », …

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

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 »

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 ?

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

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 ?

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 ?

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.

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

La suite PebbleTax

Démo

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)

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

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

Démo

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)

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

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

Démo

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)

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

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

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.

Questions ?

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

Recommended