introduction to windows workflow foundation keith pijanowski platform strategy advisor developer...
TRANSCRIPT
Introduction to
Windows Workflow Foundation
Keith PijanowskiPlatform Strategy Advisor
Developer Platform EvangelismMicrosoft Corporation
Agenda
• What is Workflow Foundation?• Introduction to the WF Development Environment• WF Activities• BizTalk and WF• Questions
Windows Workflow Foundation
Single workflow technology for Microsoft
A framework for building workflow into appsPart of .NET Framework 3.0 (formerly WinFX)
Makes declarative workflow a mainstream paradigm
The workflow platformThe workflow platformfor Microsoft products andfor Microsoft products and
partner/customer ecosystempartner/customer ecosystem
Abbreviation: WFAbbreviation: WF
What is a Workflow?
Like a flowchart…. or a state diagram…. or based on rules.
A program declared as set of activitiesCoordinates people and software
Has real-world control flow
Runs durably and transparently
Tolerates dynamic change
Visual Studio 2008 and WF
Activity Basics
Activities are the building blocks of workflows
The unit of execution, re-use and composition
Basic activities are steps within a workflow
Composite activities contains other activities
Base Activity Library provides out-of-the-box activity set
Partners and customers author custom activities
Activity LibraryActivity Library
Workflow Runtime Workflow Runtime EngineEngine
Runtime ServicesRuntime Services
Visual Studio DesignerVisual Studio Designer
Summary Windows Workflow Foundation
TransparencyTransparency
FlexibilityFlexibility
What is Workflow?What is Workflow?
Workflow is the software Workflow is the software implementation of implementation of business process or business process or business logicbusiness logic
What’s the value of What’s the value of Workflow?Workflow?
ExtensibilityExtensibility
A A WorkflowWorkflow
Host ProcessHost Process
ActivitActivityy
Building A Workflow
Categorizing the WF Activities
ExecutionCodeSequenceParallelInvokeWorkflowCallExternalMethod
CoordinationTransactionScopeCompensatableTransactionScopeCompensateCompensatableSequenceSynchronizationScope
EventsEventDrivenListenHandleExternalEventEventHandlingScopeDelay
FlowIfElseWhileConditionedActivityGroupPolicyReplicatorThrowSuspendTerminateFaultHandler
Web ServicesInvokeWebServiceWebServiceInputWebServiceOutputWebServiceFaultSend (.NET 3.5 only)
Receive (.NET 3.5 only)
StateStateStateInitializationStateFinalizationSetState
Authoring Modes
XAML
Markup Only
XAML C#/VB
Markup + Code
C#/VB
Code only
Workflow Compiler
C#/VB Compiler
XAML
Markup Only
NET Assembly
Workflow RuntimeWorkflow Runtime
Workflow Workflow InstanceInstance
Host Application
Workflow Runtime
Runtime Services
XAML
Workflow Execution
Workflow Instance
PersistenceLoader
IdleIdle!!
WorkfloWorkflow w
InstanceInstance
12
Workflow and BizTalk ServerWorkflow and BizTalk Server
MessagingMessagingDesignDesignToolsTools
BusinessBusinessActivityActivityMonitorMonitorAndAndAdminAdminToolsTools
OrchestrationOrchestration
TransformationTransformation
AdaptersAdapters
BizTalkBizTalk ServerServerAcceleratorsAccelerators
Premium BPM serverPremium BPM serverDistinct server productDistinct server product
Use in B2B, EAI, BPM scenariosUse in B2B, EAI, BPM scenarios
Deployable solutionsDeployable solutions
Manageability, Scale-outManageability, Scale-out
WorkflowWorkflow
Future version will migrate to Future version will migrate to Windows Workflow Foundation for Windows Workflow Foundation for orchestrationorchestration
.NET 3.0.NET 3.0
Visual Studio DesignerVisual Studio Designer
Windows Workflow Windows Workflow FoundationFoundation
Workflow frameworkWorkflow frameworkFuture technology exposed via .NET Future technology exposed via .NET 3.0 3.0
Broad set of scenarios Broad set of scenarios
Used to build solutionsUsed to build solutions
Enables manageability and scale-out Enables manageability and scale-out in solutionsin solutions
Use for building workflow into apps Use for building workflow into apps or workflow enabled servers or workflow enabled servers
13
BizTalk Server provides workflow across BizTalk Server provides workflow across existing applications and between existing applications and between trading partners as part of its business trading partners as part of its business process and integration feature setprocess and integration feature set
““If you are integrating multiple applications If you are integrating multiple applications with some interaction that involves system with some interaction that involves system workflow you should use BizTalk Server”workflow you should use BizTalk Server”
““If you want runtime scalability, fault If you want runtime scalability, fault tolerance and administration tools you should tolerance and administration tools you should use BizTalk Server”use BizTalk Server”
Windows Workflow Foundation is a Windows Workflow Foundation is a framework for adding workflow inside a framework for adding workflow inside a custom applicationcustom application
““If you are building a complete application If you are building a complete application that includes workflow you should use that includes workflow you should use Windows Workflow Foundation”Windows Workflow Foundation”
BizTalk ServerBizTalk ServerEAI, B2B & EAI, B2B & BPMBPM
Windows Windows Workflow Workflow FoundationFoundation
How to Choose?How to Choose?BizTalk Server or Workflow BizTalk Server or Workflow FoundationFoundation
For More Information …
• .NET Framework Technology Samples• WF on the Microsoft Developer Network• Microsoft .NET Framework Community• Windows Vista Technologies
Workflow Web SitesMSDN® Workflow Page
Download the Microsoft® Visual Studio® ExtensionsDownload 10 Hands-on Labsmsdn.microsoft.com/workflow
ForumsAsk questions in the forumswww.WindowsWorkflow.net/ Forums
Community SiteDownload samples, tools, and runtime service componentswf.netfx3.com
MSDN Virtual Labsmsdn.microsoft.com/virtuallabs/NETFramework