SlideShare ist ein Scribd-Unternehmen logo
1 von 34
www.orbitone.com
Raas van Gaverestraat 83
B-9000 GENT, Belgium
E-mail info@orbitone.com
Website www.orbitone.com
Tel. +32 9 265 74 20
Fax +32 9 265 74 10
VAT BE 456.457.353
Bank 442-7059001-50 (KBC)
27 August, 2010 WorkFlow 4
27 August, 2010
WorkFlow 4
Like any technology, applying WF requires
understanding
what it is,
why it's useful,
and when it makes sense to use it.
27 August, 2010
WorkFlow 4
Isn't WorkFlow Foundation just a visual way to
write code and thus despicable?
What is Windows Workflow Foundation?
A framework for declarative programming
Tools for creating program definitions
A runtime for executing program logic
27 August, 2010
WorkFlow 4
DESIGNER DEMO
But first the simplest possible demo
Where we also show that it's possible to add breakpoint ?!
WF 4.0 Data Flow Constructs
Arguments
Variables
Expressions
Used to define the way data flows in and out of an
activity.
Used to declare named storage for data within an
activity.
Performs simple operations on arguments to return
a value.
27 August, 2010
WorkFlow 4
27 August, 2010
WorkFlow 4
PURE CODE DEMO
WCF Workflow Services
WCF Service
WF Workflow
Client
External
Service
External
Service
WCF endpoint
WCF endpoint
27 August, 2010
WorkFlow 4
27 August, 2010
WorkFlow 4
Benefits
 Long Running Process
 Scalability
27 August, 2010
WorkFlow 4
Composability
a workflow can contain flowcharts, state machine, C# code, ...
everything is an activity
Challenges
 Work is increasingly distributed
 Coordination code creates complexity
Coordinating messages with application state
Coordinating calls to a database or another service (Async I/O)
Coordinating rainy day scenarios
 Management and tracking of distributed work is difficult
27 August, 2010
WorkFlow 4
WorkflowServiceHost
Foo
Foo
Foo
27 August, 2010
WorkFlow 4
27 August, 2010
WorkFlow 4
Visual
Visual vocabulary to compose solution makes it easier for non
developers to create
27 August, 2010
WorkFlow 4
Tracking
27 August, 2010
WorkFlow 4
Integration
SharePoint 2010 uses WF3?
But there is an upcoming book "Professional Workflow 4 in
SharePoint 2010: Real World Business Workflow Solutions "
http://www.amazon.com/Professional-Workflow-SharePoint-
2010-Solutions/dp/0470617888
TFS2010 uses WF4
27 August, 2010
WorkFlow 4
Documentation
The business analysis can be mapped directly translated to
workflow/code
There is no distinction between documentation and code
IAB Flowchart on the next slide =>
27 August, 2010
WorkFlow 4
27 August, 2010
WorkFlow 4
Documentation
 Another often used modeling convention is the State Machine
Loading Workflow
<Activity x:Class=“Foo" >
<x:Members>
<x:Property Name="argument1“
Type="InArgument(x:String)" />
<x:Property Name="argument2”
Type="InArgument(x:String)" />
</x:Members>
Foo.dll
C# (DynamicActivity)
Activity x =
ActivityXamlServices.Load(xamlFile);
WorkflowInvoker.Invoke(x, new Dictionary … );
27 August, 2010
WorkFlow 4
27 August, 2010
WorkFlow 4
LOAD XAML DEMO
show the xml
load it
27 August, 2010
WorkFlow 4
Workflow Service User Model
Operator Commands:
• Suspend, Resume, Terminate and Cancel
Running
Active - In Memory
Idle – Persisted
Suspended
Reason:
• Exception code
• Exception text
Completed
Suspend
Resume
• Successful
Completion
• Terminate
• Cancel
•Terminate
• Cancel
27 August, 2010
WorkFlow 4
Persistence / Durability
Windows
Server
AppFabric
Windows
Server
AppFabric
Load
Balancer
Persistence
DB
Workflow
Service
Workflow
Service
Workflow
Management
Service
Workflow
Management
Service Windows
Server
AppFabric
Workflow
Service
Workflow
Management
Service
Instance
123 | data
456 | data
789 | data
011 | data
27 August, 2010
WorkFlow 4
Persistence
Persistence lets you pause an instance, save it
somewhere & resume it later
A persisted instance has no affinity to a WF host instance,
CLR instance, thread, process, or machine
Helps with scalability; helps with recovery from failure
WF program instances are serializable
A CLR stack is not serializable, but in a WF program a stack
only exists transiently, during work item execution
Details of persistence are deliberately separate from
the machinery of the WF runtime
27 August, 2010
WorkFlow 4
What’s in a Serialized Instance?
A serialized instance contains:
Work item list (empty if instance is idle)
Bookmarks
Data (arg and var values)
•Environments for all executing activity instances
Activity instance info (callbacks, execution props)
Custom data from persistence participants
Does not contain the workflow definition
A million instances can share the same definition
Management of definitions is a host responsibility
Workflow Service = WCF + WF
Think "WCF on the outside, WF on the inside“
WCF exposes external interface
WF describes internal flow & state transitions
27 August, 2010
WorkFlow 4
27 August, 2010
WorkFlow 4
Workflow services
WCF Workflow Services
WCF Service
WF Workflow
Client
External
Service
External
Service
WCF endpoint
WCF endpoint
27 August, 2010
WorkFlow 4
Content based correlation
Some Closing topics
WorkFlow 4
27 August, 2010
27 August, 2010
WorkFlow 4
Server AppFabric
 Most WCF services are hosted in IIS / WAS
 IIS tooling designed for managing web applications
 Windows Server AppFabric = service management
Simplified configuration of services and workflows
Operations dashboard
Workflow service management
GUI and PowerShell tools
27 August, 2010
WorkFlow 4
Dashboard
27 August, 2010
WorkFlow 4
Server AppFabric
 Health overview provides information about services
Exceptions / completed call count / throttling limits reached
Workflow instances (active / suspended)
Recent history – activations / failures
 Access to workflow information
List of persisted workflows
Tracked workflow data and events
 Tools are based on tool scope (site / application / service)
 Custom queries also possible
27 August, 2010
WorkFlow 4
WF State Machine
27 August, 2010
WorkFlow 4
PowerShell support
 PowerShell is THE modern scripting environment on Windows
 Most commands and data available as PowerShell cmdlets
 Get and set configuration settings
 Enable application messaging
 Instance management – resume, suspend, terminate
 Combine with other web modules
 Web Administration PowerShell module for managing IIS
 MSDeploy – synch or deploy local or remote services
27 August, 2010
WorkFlow 4
hosted designer - MS Research – Trident
www.orbitone.com
WorkFlow 4
27 August, 2010

Weitere ähnliche Inhalte

Andere mochten auch

Coding Standard And Code Review
Coding Standard And Code ReviewCoding Standard And Code Review
Coding Standard And Code ReviewMilan Vukoje
 
PHPcon Poland - Static Analysis of PHP Code – How the Heck did I write so man...
PHPcon Poland - Static Analysis of PHP Code – How the Heck did I write so man...PHPcon Poland - Static Analysis of PHP Code – How the Heck did I write so man...
PHPcon Poland - Static Analysis of PHP Code – How the Heck did I write so man...Rouven Weßling
 
JavaScript and UI Architecture Best Practices
JavaScript and UI Architecture Best PracticesJavaScript and UI Architecture Best Practices
JavaScript and UI Architecture Best PracticesSiarhei Barysiuk
 
Modern Static Code Analysis in PHP
Modern Static Code Analysis in PHPModern Static Code Analysis in PHP
Modern Static Code Analysis in PHPVladimir Reznichenko
 
Refactoring Legacy Code
Refactoring Legacy CodeRefactoring Legacy Code
Refactoring Legacy CodeAdam Culp
 
Component Based UI Architecture - Alex Moldovan
Component Based UI Architecture - Alex MoldovanComponent Based UI Architecture - Alex Moldovan
Component Based UI Architecture - Alex MoldovanITCamp
 
Modern UI Architecture_ Trends and Technologies in Web Development
Modern UI Architecture_ Trends and Technologies in Web DevelopmentModern UI Architecture_ Trends and Technologies in Web Development
Modern UI Architecture_ Trends and Technologies in Web DevelopmentSuresh Patidar
 
UI Architecture & Web Performance
UI Architecture & Web PerformanceUI Architecture & Web Performance
UI Architecture & Web PerformanceKyle Simpson
 
Code review guidelines
Code review guidelinesCode review guidelines
Code review guidelinesLalit Kale
 
Selenium Architecture
Selenium ArchitectureSelenium Architecture
Selenium Architecturerohitnayak
 
Content Design, UI Architecture and Content-UI-Mapping
Content Design, UI Architecture and Content-UI-MappingContent Design, UI Architecture and Content-UI-Mapping
Content Design, UI Architecture and Content-UI-MappingWolfram Nagel
 
PHP & JavaScript & CSS Coding style
PHP & JavaScript & CSS Coding stylePHP & JavaScript & CSS Coding style
PHP & JavaScript & CSS Coding styleBo-Yi Wu
 
AngularJS application architecture
AngularJS application architectureAngularJS application architecture
AngularJS application architectureGabriele Falace
 
Single Page Application (SPA) using AngularJS
Single Page Application (SPA) using AngularJSSingle Page Application (SPA) using AngularJS
Single Page Application (SPA) using AngularJSM R Rony
 
AngularJS Architecture
AngularJS ArchitectureAngularJS Architecture
AngularJS ArchitectureEyal Vardi
 
Project audit & review checklist
Project audit & review checklistProject audit & review checklist
Project audit & review checklistRam Srivastava
 
Code Reviews - PHP Unconference Europe 2013
Code Reviews - PHP Unconference Europe 2013Code Reviews - PHP Unconference Europe 2013
Code Reviews - PHP Unconference Europe 2013Frank Sons
 
PHP Coding Standard and 50+ Programming Skills
PHP Coding Standard and 50+ Programming SkillsPHP Coding Standard and 50+ Programming Skills
PHP Coding Standard and 50+ Programming SkillsHo Kim
 
Web Caching Architecture and Design
Web Caching Architecture and DesignWeb Caching Architecture and Design
Web Caching Architecture and DesignHo Kim
 

Andere mochten auch (19)

Coding Standard And Code Review
Coding Standard And Code ReviewCoding Standard And Code Review
Coding Standard And Code Review
 
PHPcon Poland - Static Analysis of PHP Code – How the Heck did I write so man...
PHPcon Poland - Static Analysis of PHP Code – How the Heck did I write so man...PHPcon Poland - Static Analysis of PHP Code – How the Heck did I write so man...
PHPcon Poland - Static Analysis of PHP Code – How the Heck did I write so man...
 
JavaScript and UI Architecture Best Practices
JavaScript and UI Architecture Best PracticesJavaScript and UI Architecture Best Practices
JavaScript and UI Architecture Best Practices
 
Modern Static Code Analysis in PHP
Modern Static Code Analysis in PHPModern Static Code Analysis in PHP
Modern Static Code Analysis in PHP
 
Refactoring Legacy Code
Refactoring Legacy CodeRefactoring Legacy Code
Refactoring Legacy Code
 
Component Based UI Architecture - Alex Moldovan
Component Based UI Architecture - Alex MoldovanComponent Based UI Architecture - Alex Moldovan
Component Based UI Architecture - Alex Moldovan
 
Modern UI Architecture_ Trends and Technologies in Web Development
Modern UI Architecture_ Trends and Technologies in Web DevelopmentModern UI Architecture_ Trends and Technologies in Web Development
Modern UI Architecture_ Trends and Technologies in Web Development
 
UI Architecture & Web Performance
UI Architecture & Web PerformanceUI Architecture & Web Performance
UI Architecture & Web Performance
 
Code review guidelines
Code review guidelinesCode review guidelines
Code review guidelines
 
Selenium Architecture
Selenium ArchitectureSelenium Architecture
Selenium Architecture
 
Content Design, UI Architecture and Content-UI-Mapping
Content Design, UI Architecture and Content-UI-MappingContent Design, UI Architecture and Content-UI-Mapping
Content Design, UI Architecture and Content-UI-Mapping
 
PHP & JavaScript & CSS Coding style
PHP & JavaScript & CSS Coding stylePHP & JavaScript & CSS Coding style
PHP & JavaScript & CSS Coding style
 
AngularJS application architecture
AngularJS application architectureAngularJS application architecture
AngularJS application architecture
 
Single Page Application (SPA) using AngularJS
Single Page Application (SPA) using AngularJSSingle Page Application (SPA) using AngularJS
Single Page Application (SPA) using AngularJS
 
AngularJS Architecture
AngularJS ArchitectureAngularJS Architecture
AngularJS Architecture
 
Project audit & review checklist
Project audit & review checklistProject audit & review checklist
Project audit & review checklist
 
Code Reviews - PHP Unconference Europe 2013
Code Reviews - PHP Unconference Europe 2013Code Reviews - PHP Unconference Europe 2013
Code Reviews - PHP Unconference Europe 2013
 
PHP Coding Standard and 50+ Programming Skills
PHP Coding Standard and 50+ Programming SkillsPHP Coding Standard and 50+ Programming Skills
PHP Coding Standard and 50+ Programming Skills
 
Web Caching Architecture and Design
Web Caching Architecture and DesignWeb Caching Architecture and Design
Web Caching Architecture and Design
 

Ähnlich wie Introduction to Workflow 4

Workflow Foundation (Wf) Presentation
Workflow Foundation (Wf) PresentationWorkflow Foundation (Wf) Presentation
Workflow Foundation (Wf) Presentationuppershores
 
WF 4.0 Overview
WF 4.0 OverviewWF 4.0 Overview
WF 4.0 Overviewdannicola
 
Spsto 2013 whats_newinworkflows_amitvasu.
Spsto 2013 whats_newinworkflows_amitvasu.Spsto 2013 whats_newinworkflows_amitvasu.
Spsto 2013 whats_newinworkflows_amitvasu.amitvasu
 
Office As A Development Platform
Office As A Development PlatformOffice As A Development Platform
Office As A Development PlatformChristof Sprenger
 
Building Workflows for SharePoint 2010 with SharePoint Designer and Visio
Building Workflows for SharePoint 2010 with SharePoint Designer and VisioBuilding Workflows for SharePoint 2010 with SharePoint Designer and Visio
Building Workflows for SharePoint 2010 with SharePoint Designer and VisioElaine Van Bergen
 
Workflow in SharePoint 2010
Workflow in SharePoint 2010Workflow in SharePoint 2010
Workflow in SharePoint 2010barryboudreau
 
What is an ESB? OPITZ CONSULTING - Winterberg - Trops
What is an ESB? OPITZ CONSULTING - Winterberg - TropsWhat is an ESB? OPITZ CONSULTING - Winterberg - Trops
What is an ESB? OPITZ CONSULTING - Winterberg - TropsOPITZ CONSULTING Deutschland
 
ESB Presentation
ESB PresentationESB Presentation
ESB PresentationF K
 
Lightning Flofghfhfghfhfhfw Builder.pptx
Lightning Flofghfhfghfhfhfw Builder.pptxLightning Flofghfhfghfhfhfw Builder.pptx
Lightning Flofghfhfghfhfhfw Builder.pptxVkrish Peru
 
vRO Training Document
vRO Training DocumentvRO Training Document
vRO Training DocumentMayank Goyal
 
Alfresco As SharePoint Alternative - Architecture Overview
Alfresco As SharePoint Alternative - Architecture OverviewAlfresco As SharePoint Alternative - Architecture Overview
Alfresco As SharePoint Alternative - Architecture OverviewAlfresco Software
 
WSO2 Guest Webinar - ESB meets IoT, a Primer on WSO2 Enterprise Service Bus (...
WSO2 Guest Webinar - ESB meets IoT, a Primer on WSO2 Enterprise Service Bus (...WSO2 Guest Webinar - ESB meets IoT, a Primer on WSO2 Enterprise Service Bus (...
WSO2 Guest Webinar - ESB meets IoT, a Primer on WSO2 Enterprise Service Bus (...Yenlo
 
WinRT and the Web: Keeping Windows Store Apps Alive and Connected
WinRT and the Web: Keeping Windows Store Apps Alive and ConnectedWinRT and the Web: Keeping Windows Store Apps Alive and Connected
WinRT and the Web: Keeping Windows Store Apps Alive and ConnectedJeremy Likness
 
Mike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and PatternsMike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and Patternsukdpe
 
Introduction To Windows Workflow In Windows Share Point
Introduction To Windows Workflow In Windows Share PointIntroduction To Windows Workflow In Windows Share Point
Introduction To Windows Workflow In Windows Share PointKashif Akram
 

Ähnlich wie Introduction to Workflow 4 (20)

Workflow Foundation (Wf) Presentation
Workflow Foundation (Wf) PresentationWorkflow Foundation (Wf) Presentation
Workflow Foundation (Wf) Presentation
 
WF 4.0 Overview
WF 4.0 OverviewWF 4.0 Overview
WF 4.0 Overview
 
Spsto 2013 whats_newinworkflows_amitvasu.
Spsto 2013 whats_newinworkflows_amitvasu.Spsto 2013 whats_newinworkflows_amitvasu.
Spsto 2013 whats_newinworkflows_amitvasu.
 
ORCAS
ORCASORCAS
ORCAS
 
Office As A Development Platform
Office As A Development PlatformOffice As A Development Platform
Office As A Development Platform
 
Eclipse SOA Initiative
Eclipse SOA InitiativeEclipse SOA Initiative
Eclipse SOA Initiative
 
Building Workflows for SharePoint 2010 with SharePoint Designer and Visio
Building Workflows for SharePoint 2010 with SharePoint Designer and VisioBuilding Workflows for SharePoint 2010 with SharePoint Designer and Visio
Building Workflows for SharePoint 2010 with SharePoint Designer and Visio
 
Workflow in SharePoint 2010
Workflow in SharePoint 2010Workflow in SharePoint 2010
Workflow in SharePoint 2010
 
What is an ESB? OPITZ CONSULTING - Winterberg - Trops
What is an ESB? OPITZ CONSULTING - Winterberg - TropsWhat is an ESB? OPITZ CONSULTING - Winterberg - Trops
What is an ESB? OPITZ CONSULTING - Winterberg - Trops
 
Mule Esb
Mule EsbMule Esb
Mule Esb
 
ESB Presentation
ESB PresentationESB Presentation
ESB Presentation
 
Lightning Flofghfhfghfhfhfw Builder.pptx
Lightning Flofghfhfghfhfhfw Builder.pptxLightning Flofghfhfghfhfhfw Builder.pptx
Lightning Flofghfhfghfhfhfw Builder.pptx
 
vRO Training Document
vRO Training DocumentvRO Training Document
vRO Training Document
 
Alfresco As SharePoint Alternative - Architecture Overview
Alfresco As SharePoint Alternative - Architecture OverviewAlfresco As SharePoint Alternative - Architecture Overview
Alfresco As SharePoint Alternative - Architecture Overview
 
WSO2 Guest Webinar - ESB meets IoT, a Primer on WSO2 Enterprise Service Bus (...
WSO2 Guest Webinar - ESB meets IoT, a Primer on WSO2 Enterprise Service Bus (...WSO2 Guest Webinar - ESB meets IoT, a Primer on WSO2 Enterprise Service Bus (...
WSO2 Guest Webinar - ESB meets IoT, a Primer on WSO2 Enterprise Service Bus (...
 
WinRT and the Web: Keeping Windows Store Apps Alive and Connected
WinRT and the Web: Keeping Windows Store Apps Alive and ConnectedWinRT and the Web: Keeping Windows Store Apps Alive and Connected
WinRT and the Web: Keeping Windows Store Apps Alive and Connected
 
Mike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and PatternsMike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and Patterns
 
Introduction To Windows Workflow In Windows Share Point
Introduction To Windows Workflow In Windows Share PointIntroduction To Windows Workflow In Windows Share Point
Introduction To Windows Workflow In Windows Share Point
 
MS flow.docx
MS flow.docxMS flow.docx
MS flow.docx
 
Issuetrak API
Issuetrak API Issuetrak API
Issuetrak API
 

Mehr von Orbit One - We create coherence

ShareCafé: SharePoint - Een doos vol documenten of dé tool om efficiënt samen...
ShareCafé: SharePoint - Een doos vol documenten of dé tool om efficiënt samen...ShareCafé: SharePoint - Een doos vol documenten of dé tool om efficiënt samen...
ShareCafé: SharePoint - Een doos vol documenten of dé tool om efficiënt samen...Orbit One - We create coherence
 
ShareCafé: Office365 - Efficiënt samenwerken met minimum aan kosten en comple...
ShareCafé: Office365 - Efficiënt samenwerken met minimum aan kosten en comple...ShareCafé: Office365 - Efficiënt samenwerken met minimum aan kosten en comple...
ShareCafé: Office365 - Efficiënt samenwerken met minimum aan kosten en comple...Orbit One - We create coherence
 
ShareCafé 3 - Geef je samenwerking een technologische upgrade
ShareCafé 3 - Geef je samenwerking een technologische upgradeShareCafé 3 - Geef je samenwerking een technologische upgrade
ShareCafé 3 - Geef je samenwerking een technologische upgradeOrbit One - We create coherence
 
OneCafé: De toekomst van ledenorganisaties met behulp van CRM en informatie-u...
OneCafé: De toekomst van ledenorganisaties met behulp van CRM en informatie-u...OneCafé: De toekomst van ledenorganisaties met behulp van CRM en informatie-u...
OneCafé: De toekomst van ledenorganisaties met behulp van CRM en informatie-u...Orbit One - We create coherence
 
OneCafé: The future of membership organizations facilitated by CRM and collab...
OneCafé: The future of membership organizations facilitated by CRM and collab...OneCafé: The future of membership organizations facilitated by CRM and collab...
OneCafé: The future of membership organizations facilitated by CRM and collab...Orbit One - We create coherence
 
Social Computing in your organization using SharePoint: challenges and benefits
Social Computing in your organization using SharePoint: challenges and benefitsSocial Computing in your organization using SharePoint: challenges and benefits
Social Computing in your organization using SharePoint: challenges and benefitsOrbit One - We create coherence
 
Marketing Automation in Dynamics CRM with ClickDimensions
Marketing Automation in Dynamics CRM with ClickDimensionsMarketing Automation in Dynamics CRM with ClickDimensions
Marketing Automation in Dynamics CRM with ClickDimensionsOrbit One - We create coherence
 

Mehr von Orbit One - We create coherence (20)

ShareCafé: SharePoint - Een doos vol documenten of dé tool om efficiënt samen...
ShareCafé: SharePoint - Een doos vol documenten of dé tool om efficiënt samen...ShareCafé: SharePoint - Een doos vol documenten of dé tool om efficiënt samen...
ShareCafé: SharePoint - Een doos vol documenten of dé tool om efficiënt samen...
 
HoGent tips and tricks van een self-made ondernemer
HoGent tips and tricks van een self-made ondernemer HoGent tips and tricks van een self-made ondernemer
HoGent tips and tricks van een self-made ondernemer
 
Het Nieuwe Werken in de praktijk
Het Nieuwe Werkenin de praktijkHet Nieuwe Werkenin de praktijk
Het Nieuwe Werken in de praktijk
 
ShareCafé: Office365 - Efficiënt samenwerken met minimum aan kosten en comple...
ShareCafé: Office365 - Efficiënt samenwerken met minimum aan kosten en comple...ShareCafé: Office365 - Efficiënt samenwerken met minimum aan kosten en comple...
ShareCafé: Office365 - Efficiënt samenwerken met minimum aan kosten en comple...
 
ShareCafé 3 - Geef je samenwerking een technologische upgrade
ShareCafé 3 - Geef je samenwerking een technologische upgradeShareCafé 3 - Geef je samenwerking een technologische upgrade
ShareCafé 3 - Geef je samenwerking een technologische upgrade
 
ShareCafé 2 - Werk slimmer door geïntegreerde tools
ShareCafé 2 - Werk slimmer door geïntegreerde toolsShareCafé 2 - Werk slimmer door geïntegreerde tools
ShareCafé 2 - Werk slimmer door geïntegreerde tools
 
ShareCafé 1: Hou de Nieuwe Werker gemotiveerd
ShareCafé 1: Hou de Nieuwe Werker gemotiveerdShareCafé 1: Hou de Nieuwe Werker gemotiveerd
ShareCafé 1: Hou de Nieuwe Werker gemotiveerd
 
Business value of Lync integrations
Business value of Lync integrationsBusiness value of Lync integrations
Business value of Lync integrations
 
OneCafé: De toekomst van ledenorganisaties met behulp van CRM en informatie-u...
OneCafé: De toekomst van ledenorganisaties met behulp van CRM en informatie-u...OneCafé: De toekomst van ledenorganisaties met behulp van CRM en informatie-u...
OneCafé: De toekomst van ledenorganisaties met behulp van CRM en informatie-u...
 
Identity in the cloud using Microsoft
Identity in the cloud using MicrosoftIdentity in the cloud using Microsoft
Identity in the cloud using Microsoft
 
OneCafé: The future of membership organizations facilitated by CRM and collab...
OneCafé: The future of membership organizations facilitated by CRM and collab...OneCafé: The future of membership organizations facilitated by CRM and collab...
OneCafé: The future of membership organizations facilitated by CRM and collab...
 
OneCafé: The new world of work and your organisation
OneCafé: The new world of work and your organisationOneCafé: The new world of work and your organisation
OneCafé: The new world of work and your organisation
 
Social Computing in your organization using SharePoint: challenges and benefits
Social Computing in your organization using SharePoint: challenges and benefitsSocial Computing in your organization using SharePoint: challenges and benefits
Social Computing in your organization using SharePoint: challenges and benefits
 
Windows Communication Foundation (WCF) Best Practices
Windows Communication Foundation (WCF) Best PracticesWindows Communication Foundation (WCF) Best Practices
Windows Communication Foundation (WCF) Best Practices
 
Wie is Orbit One Internet Solutions
Wie is Orbit One Internet SolutionsWie is Orbit One Internet Solutions
Wie is Orbit One Internet Solutions
 
Azure Umbraco workshop
Azure Umbraco workshopAzure Umbraco workshop
Azure Umbraco workshop
 
Marketing Automation in Dynamics CRM with ClickDimensions
Marketing Automation in Dynamics CRM with ClickDimensionsMarketing Automation in Dynamics CRM with ClickDimensions
Marketing Automation in Dynamics CRM with ClickDimensions
 
Office 365, is cloud right for your company?
Office 365, is cloud right for your company?Office 365, is cloud right for your company?
Office 365, is cloud right for your company?
 
Who is Orbit One internet solutions?
Who is Orbit One internet solutions?Who is Orbit One internet solutions?
Who is Orbit One internet solutions?
 
Azure and Umbraco CMS
Azure and Umbraco CMSAzure and Umbraco CMS
Azure and Umbraco CMS
 

Kürzlich hochgeladen

The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?Mark Billinghurst
 
Working together SRE & Platform Engineering
Working together SRE & Platform EngineeringWorking together SRE & Platform Engineering
Working together SRE & Platform EngineeringMarcus Vechiato
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceSamy Fodil
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...panagenda
 
Vector Search @ sw2con for slideshare.pptx
Vector Search @ sw2con for slideshare.pptxVector Search @ sw2con for slideshare.pptx
Vector Search @ sw2con for slideshare.pptxjbellis
 
Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Hiroshi SHIBATA
 
ADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptxADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptxFIDO Alliance
 
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfFIDO Alliance
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightSafe Software
 
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...ScyllaDB
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Patrick Viafore
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctBrainSell Technologies
 
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...ScyllaDB
 
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptxFIDO Alliance
 
Introduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptxIntroduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptxFIDO Alliance
 
WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024Lorenzo Miniero
 
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...TrustArc
 
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptxHarnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptxFIDO Alliance
 
Event-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream ProcessingEvent-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream ProcessingScyllaDB
 
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...FIDO Alliance
 

Kürzlich hochgeladen (20)

The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?
 
Working together SRE & Platform Engineering
Working together SRE & Platform EngineeringWorking together SRE & Platform Engineering
Working together SRE & Platform Engineering
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM Performance
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
 
Vector Search @ sw2con for slideshare.pptx
Vector Search @ sw2con for slideshare.pptxVector Search @ sw2con for slideshare.pptx
Vector Search @ sw2con for slideshare.pptx
 
Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024
 
ADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptxADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptx
 
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and Insight
 
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage Intacct
 
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
 
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
 
Introduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptxIntroduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptx
 
WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024
 
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
 
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptxHarnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
 
Event-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream ProcessingEvent-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream Processing
 
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
 

Introduction to Workflow 4

  • 1. www.orbitone.com Raas van Gaverestraat 83 B-9000 GENT, Belgium E-mail info@orbitone.com Website www.orbitone.com Tel. +32 9 265 74 20 Fax +32 9 265 74 10 VAT BE 456.457.353 Bank 442-7059001-50 (KBC) 27 August, 2010 WorkFlow 4
  • 2. 27 August, 2010 WorkFlow 4 Like any technology, applying WF requires understanding what it is, why it's useful, and when it makes sense to use it.
  • 3. 27 August, 2010 WorkFlow 4 Isn't WorkFlow Foundation just a visual way to write code and thus despicable? What is Windows Workflow Foundation? A framework for declarative programming Tools for creating program definitions A runtime for executing program logic
  • 4. 27 August, 2010 WorkFlow 4 DESIGNER DEMO But first the simplest possible demo Where we also show that it's possible to add breakpoint ?!
  • 5. WF 4.0 Data Flow Constructs Arguments Variables Expressions Used to define the way data flows in and out of an activity. Used to declare named storage for data within an activity. Performs simple operations on arguments to return a value. 27 August, 2010 WorkFlow 4
  • 6. 27 August, 2010 WorkFlow 4 PURE CODE DEMO
  • 7. WCF Workflow Services WCF Service WF Workflow Client External Service External Service WCF endpoint WCF endpoint 27 August, 2010 WorkFlow 4
  • 8. 27 August, 2010 WorkFlow 4 Benefits  Long Running Process  Scalability
  • 9. 27 August, 2010 WorkFlow 4 Composability a workflow can contain flowcharts, state machine, C# code, ... everything is an activity
  • 10. Challenges  Work is increasingly distributed  Coordination code creates complexity Coordinating messages with application state Coordinating calls to a database or another service (Async I/O) Coordinating rainy day scenarios  Management and tracking of distributed work is difficult 27 August, 2010 WorkFlow 4
  • 12. 27 August, 2010 WorkFlow 4 Visual Visual vocabulary to compose solution makes it easier for non developers to create
  • 14. 27 August, 2010 WorkFlow 4 Integration SharePoint 2010 uses WF3? But there is an upcoming book "Professional Workflow 4 in SharePoint 2010: Real World Business Workflow Solutions " http://www.amazon.com/Professional-Workflow-SharePoint- 2010-Solutions/dp/0470617888 TFS2010 uses WF4
  • 15. 27 August, 2010 WorkFlow 4 Documentation The business analysis can be mapped directly translated to workflow/code There is no distinction between documentation and code IAB Flowchart on the next slide =>
  • 17. 27 August, 2010 WorkFlow 4 Documentation  Another often used modeling convention is the State Machine
  • 18. Loading Workflow <Activity x:Class=“Foo" > <x:Members> <x:Property Name="argument1“ Type="InArgument(x:String)" /> <x:Property Name="argument2” Type="InArgument(x:String)" /> </x:Members> Foo.dll C# (DynamicActivity) Activity x = ActivityXamlServices.Load(xamlFile); WorkflowInvoker.Invoke(x, new Dictionary … ); 27 August, 2010 WorkFlow 4
  • 19. 27 August, 2010 WorkFlow 4 LOAD XAML DEMO show the xml load it
  • 20. 27 August, 2010 WorkFlow 4 Workflow Service User Model Operator Commands: • Suspend, Resume, Terminate and Cancel Running Active - In Memory Idle – Persisted Suspended Reason: • Exception code • Exception text Completed Suspend Resume • Successful Completion • Terminate • Cancel •Terminate • Cancel
  • 21. 27 August, 2010 WorkFlow 4 Persistence / Durability Windows Server AppFabric Windows Server AppFabric Load Balancer Persistence DB Workflow Service Workflow Service Workflow Management Service Workflow Management Service Windows Server AppFabric Workflow Service Workflow Management Service Instance 123 | data 456 | data 789 | data 011 | data
  • 22. 27 August, 2010 WorkFlow 4 Persistence Persistence lets you pause an instance, save it somewhere & resume it later A persisted instance has no affinity to a WF host instance, CLR instance, thread, process, or machine Helps with scalability; helps with recovery from failure WF program instances are serializable A CLR stack is not serializable, but in a WF program a stack only exists transiently, during work item execution Details of persistence are deliberately separate from the machinery of the WF runtime
  • 23. 27 August, 2010 WorkFlow 4 What’s in a Serialized Instance? A serialized instance contains: Work item list (empty if instance is idle) Bookmarks Data (arg and var values) •Environments for all executing activity instances Activity instance info (callbacks, execution props) Custom data from persistence participants Does not contain the workflow definition A million instances can share the same definition Management of definitions is a host responsibility
  • 24. Workflow Service = WCF + WF Think "WCF on the outside, WF on the inside“ WCF exposes external interface WF describes internal flow & state transitions 27 August, 2010 WorkFlow 4
  • 25. 27 August, 2010 WorkFlow 4 Workflow services WCF Workflow Services WCF Service WF Workflow Client External Service External Service WCF endpoint WCF endpoint
  • 26. 27 August, 2010 WorkFlow 4 Content based correlation
  • 27. Some Closing topics WorkFlow 4 27 August, 2010
  • 28. 27 August, 2010 WorkFlow 4 Server AppFabric  Most WCF services are hosted in IIS / WAS  IIS tooling designed for managing web applications  Windows Server AppFabric = service management Simplified configuration of services and workflows Operations dashboard Workflow service management GUI and PowerShell tools
  • 30. 27 August, 2010 WorkFlow 4 Server AppFabric  Health overview provides information about services Exceptions / completed call count / throttling limits reached Workflow instances (active / suspended) Recent history – activations / failures  Access to workflow information List of persisted workflows Tracked workflow data and events  Tools are based on tool scope (site / application / service)  Custom queries also possible
  • 31. 27 August, 2010 WorkFlow 4 WF State Machine
  • 32. 27 August, 2010 WorkFlow 4 PowerShell support  PowerShell is THE modern scripting environment on Windows  Most commands and data available as PowerShell cmdlets  Get and set configuration settings  Enable application messaging  Instance management – resume, suspend, terminate  Combine with other web modules  Web Administration PowerShell module for managing IIS  MSDeploy – synch or deploy local or remote services
  • 33. 27 August, 2010 WorkFlow 4 hosted designer - MS Research – Trident

Hinweis der Redaktion

  1. Transactions are necessary when two or more activities must be coordinated as a single operation, ensuring that the system is always left in a consistent state. The only two viable options are to complete all activities successfully or to leave the system as it was before initiating either activity.
  2. Transactions are necessary when two or more activities must be coordinated as a single operation, ensuring that the system is always left in a consistent state. The only two viable options are to complete all activities successfully or to leave the system as it was before initiating either activity.
  3. Transactions are necessary when two or more activities must be coordinated as a single operation, ensuring that the system is always left in a consistent state. The only two viable options are to complete all activities successfully or to leave the system as it was before initiating either activity.
  4. Transactions are necessary when two or more activities must be coordinated as a single operation, ensuring that the system is always left in a consistent state. The only two viable options are to complete all activities successfully or to leave the system as it was before initiating either activity.
  5. Transactions are necessary when two or more activities must be coordinated as a single operation, ensuring that the system is always left in a consistent state. The only two viable options are to complete all activities successfully or to leave the system as it was before initiating either activity.
  6. Transactions are necessary when two or more activities must be coordinated as a single operation, ensuring that the system is always left in a consistent state. The only two viable options are to complete all activities successfully or to leave the system as it was before initiating either activity.
  7. Transactions are necessary when two or more activities must be coordinated as a single operation, ensuring that the system is always left in a consistent state. The only two viable options are to complete all activities successfully or to leave the system as it was before initiating either activity.
  8. Transactions are necessary when two or more activities must be coordinated as a single operation, ensuring that the system is always left in a consistent state. The only two viable options are to complete all activities successfully or to leave the system as it was before initiating either activity.
  9. Transactions are necessary when two or more activities must be coordinated as a single operation, ensuring that the system is always left in a consistent state. The only two viable options are to complete all activities successfully or to leave the system as it was before initiating either activity.
  10. Transactions are necessary when two or more activities must be coordinated as a single operation, ensuring that the system is always left in a consistent state. The only two viable options are to complete all activities successfully or to leave the system as it was before initiating either activity.
  11. Transactions are necessary when two or more activities must be coordinated as a single operation, ensuring that the system is always left in a consistent state. The only two viable options are to complete all activities successfully or to leave the system as it was before initiating either activity.
  12. Transactions are necessary when two or more activities must be coordinated as a single operation, ensuring that the system is always left in a consistent state. The only two viable options are to complete all activities successfully or to leave the system as it was before initiating either activity.
  13. Transactions are necessary when two or more activities must be coordinated as a single operation, ensuring that the system is always left in a consistent state. The only two viable options are to complete all activities successfully or to leave the system as it was before initiating either activity.
  14. Transactions are necessary when two or more activities must be coordinated as a single operation, ensuring that the system is always left in a consistent state. The only two viable options are to complete all activities successfully or to leave the system as it was before initiating either activity.
  15. Transactions are necessary when two or more activities must be coordinated as a single operation, ensuring that the system is always left in a consistent state. The only two viable options are to complete all activities successfully or to leave the system as it was before initiating either activity.
  16. Transactions are necessary when two or more activities must be coordinated as a single operation, ensuring that the system is always left in a consistent state. The only two viable options are to complete all activities successfully or to leave the system as it was before initiating either activity.
  17. Transactions are necessary when two or more activities must be coordinated as a single operation, ensuring that the system is always left in a consistent state. The only two viable options are to complete all activities successfully or to leave the system as it was before initiating either activity.