Download - The Future Of Work And Workflow
![Page 1: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/1.jpg)
The Future of The Future of Work and WorkflowWork and Workflow
Brandon SatromPractice Architect
![Page 2: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/2.jpg)
WF is the black sheep of .NETWF is the black sheep of .NET
![Page 3: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/3.jpg)
WCF and WPF met an immediate WCF and WPF met an immediate need…need…
![Page 4: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/4.jpg)
So then, why So then, why Workflow Workflow
Foundation?Foundation?
![Page 5: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/5.jpg)
Workflow Workflow Foundation is a Foundation is a Bridge…Bridge…
![Page 6: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/6.jpg)
… … To CompositionTo Composition
![Page 7: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/7.jpg)
CompositionComposition
![Page 8: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/8.jpg)
3 Requirements of Composition3 Requirements of Composition
ComposabilityIndependenceDiscoverability
![Page 9: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/9.jpg)
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…
![Page 10: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/10.jpg)
Composability and Composability and IndependenceIndependence
![Page 11: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/11.jpg)
The Live Conference Feedback The Live Conference Feedback ApplicationApplication
![Page 12: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/12.jpg)
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.
![Page 13: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/13.jpg)
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
![Page 14: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/14.jpg)
Demo: Creating the Demo: Creating the SessionManager WorkflowSessionManager Workflow
![Page 15: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/15.jpg)
DiscoverabilityDiscoverability
![Page 16: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/16.jpg)
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
![Page 17: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/17.jpg)
Demo: Creating a Workflow Demo: Creating a Workflow ServiceService
![Page 18: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/18.jpg)
Workflow PersistenceWorkflow Persistence
Leverage a Microsoft-provided database to “dehydrate” Workflows when idle.
The result: Long-running and stateful WCF Services
![Page 19: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/19.jpg)
Demo: Using Persistence to Demo: Using Persistence to Create Long-running ServicesCreate Long-running Services
![Page 20: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/20.jpg)
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
![Page 21: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/21.jpg)
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.
![Page 22: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/22.jpg)
Demo: Creating MSMQ Demo: Creating MSMQ ReceiveActivitiesReceiveActivities
![Page 23: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/23.jpg)
Demo: Bringing it all TogetherDemo: Bringing it all Together
![Page 24: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/24.jpg)
.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
![Page 25: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/25.jpg)
.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
![Page 26: The Future Of Work And Workflow](https://reader033.vdocument.in/reader033/viewer/2022061208/5485b6a55806b5d6588b47e1/html5/thumbnails/26.jpg)