The Future Of Work And Workflow
-
Upload
brandon-satrom -
Category
Technology
-
view
2.800 -
download
2
description
Transcript of The Future Of Work And Workflow
The Future of The Future of Work and WorkflowWork and Workflow
Brandon SatromPractice Architect
WF is the black sheep of .NETWF is the black sheep of .NET
WCF and WPF met an immediate WCF and WPF met an immediate need…need…
So then, why So then, why Workflow Workflow
Foundation?Foundation?
Workflow Workflow Foundation is a Foundation is a Bridge…Bridge…
… … To CompositionTo Composition
CompositionComposition
3 Requirements of Composition3 Requirements of Composition
ComposabilityIndependenceDiscoverability
Composition and WFComposition and WF
In WF, workflows are made up of independent and discoverable (in .NET 3.5) activities (both OOB and custom) that, when given context, can be composed together to accomplish meaningful work…
Composability and Composability and IndependenceIndependence
The Live Conference Feedback The Live Conference Feedback ApplicationApplication
WF ActivitiesWF Activities
A single “program statement” in a workflow
OOB WF activities provide the key constructs for creating Workflows◦Flow-control◦Events/ IO◦Conditional Execution◦Etc.
Custom ActivitiesCustom Activities
Custom activities encapsulate core application logic
Custom activities are declarativeCustom Activities are independent
◦Reusable across WFs◦Can even be unit tested independently of a WF
Demo: Creating the Demo: Creating the SessionManager WorkflowSessionManager Workflow
DiscoverabilityDiscoverability
Workflow Services in .NET 3.5Workflow Services in .NET 3.5
Combining the accessibility of services with workflow state and durability
System.WorkflowServices.dllSend and Receive ActivitiesWorkflowServiceHostContext Bindings (For Correlation)
◦basicHttp◦wsHttp◦netTcp
Demo: Creating a Workflow Demo: Creating a Workflow ServiceService
Workflow PersistenceWorkflow Persistence
Leverage a Microsoft-provided database to “dehydrate” Workflows when idle.
The result: Long-running and stateful WCF Services
Demo: Using Persistence to Demo: Using Persistence to Create Long-running ServicesCreate Long-running Services
Adding Scalability with MSMQAdding Scalability with MSMQ
Using MSMQ with Workflow Services is not available OOB
But it can be done by adding the context (WF InstanceId) to the outgoing message
Adding Scalability with MSMQAdding Scalability with MSMQ
And through a custom channel that looks for the WF Instance in the incoming header and passes that into the Workflow Runtime.
The Runtime then correlates the Queue message to the proper workflow instance.
Demo: Creating MSMQ Demo: Creating MSMQ ReceiveActivitiesReceiveActivities
Demo: Bringing it all TogetherDemo: Bringing it all Together
.NET 4.0 Features.NET 4.0 Features
Complete WF rewriteFull Support for Async MessagingNew Activities, some old activities ditched
◦Code Activity => Gone◦State Machine => Flowchart
Easier to create custom activitiesNew WF designer written in WPF
.NET 4.0 & Dublin Features.NET 4.0 & Dublin Features
Richer persistence and trackingRicher Correlation Options
◦Correlate inbound messages using XPath◦No need for Context bindings or custom
channelsDublin = Server extensions for hosting
and managing WCF/WF ServicesAnd more… See:
http://msdn.microsoft.com/en-us/magazine/2009.01.net40.aspx
Questions?