Overview of Workflows in Sharepoint
Office Workflow Vision• Facilitate human processes by attaching business
logic to items and documents in Windows SharePoint Services, while providing context and tracking progress
• Empower information workers using Office Serverwith out-of-the-box solutions and self-service tools to support a broad range of routing and tracking scenarios without IT involvement
• Empower organizations to build a broad range of sophisticated workflow solutions that take advantageof the full functionality of the Windows Workflow Foundation (WF) platform and integrate into the SharePoint and Office experiences
Office Workflow Ecosystem
SharePoint ServicesSharePoint Services
WFWF WebWebServiceService
HistoryHistoryListList
ReportingReporting& Admin& Admin
SourceSourceListList
TaskTaskListList
Initiation and Initiation and parameter parameter settingsettingAd-hoc Ad-hoc CustomizationCustomization(Forward/Delegat(Forward/Delegate)e)Task CompletionTask Completion
Authoring AppsAuthoring AppsBrowser UIBrowser UI
AdministrationAdministrationReporting/StatusReporting/StatusInitiationInitiationParameter settingParameter settingAd-hoc Ad-hoc CustomizationCustomization(Forward/Delegate)(Forward/Delegate)Task NotificationTask Notificationand Completionand Completion
OutlookOutlook
Task Task NotificationNotificationTask Task CompletionCompletion
SharePoint DesignerSharePoint Designer
Wizard-based Wizard-based authoringauthoringForms Forms integrationintegrationApplication Application deploymentdeployment
AccessAccess
Initiation and Initiation and parameter parameter settingsettingTask CompletionTask CompletionReportingReporting
Workflow Authoring Scenarios
Visual Studio andWorkflow SDK
Out-of-the-BoxSolutions(with customization)
SharePoint Designer Workflow
Routing and ApprovalRouting and ApprovalReview – ApprovalReview – Approval
Signature collectionSignature collectionEast Asian workflowEast Asian workflow
Stru
ctu
red
Ad
H
oc
Office Server FeaturesOffice Server FeaturesList ModerationList Moderation
Publishing ProcessPublishing ProcessDocument ExpirationDocument Expiration
Tracking ApplicationsTracking ApplicationsIssue trackingIssue tracking
LOBLOBIntegrationIntegration
Custom Form ActionsCustom Form ActionsEmail NotificationEmail Notification
Exception HandlingException Handling
Document ProcessesDocument ProcessesSpec Review Spec Review
Weekly Status ReportWeekly Status Report
Custom Tracking Custom Tracking AppsApps
Service RequestsService RequestsAsset TrackingAsset Tracking
IndustryIndustryspecific processesspecific processes
Purchase ordersPurchase ordersProduct lifecycle mgmtProduct lifecycle mgmt
•Data External to SharePoint
•Reusable Workflows in SharePoint
•Management of SharePoint
•Content specific workflow
•Rules based notification
The workflow functionality in Windows SharePoint Services 3.0 is built on the Windows Workflow Foundation (WF), a Microsoft Windows platform component that provides a programming infrastructure and tools for development and execution of workflow-based applications. WF simplifies the process of asynchronous programming to create stateful, long-running, and persistent workflow applications. The WF run-time engine manages workflow execution and allows workflows to remain active for long periods of time and to survive restarting the computer. Run-time services offer functionality such as transactions and persistence to manage errors gracefully and correctly
Workflow Architecture
Windows Workflow Foundation supports two fundamental workflow styles:
•Sequential workflows
Represents a workflow as a procession of steps that execute in order until the last activity completes. However, sequential workflows are not purely sequential in their execution. Because they can receive external events and include parallel logic flows, the exact order of activity execution can vary.
•State machine workflows
Represents a set of states, transitions, and actions. One state is denoted as the start state, and then, based on an event, a transition can be made to another state. The state machine can have a final state that determines the end of the workflow
Who Uses Workflow?
• Adhoc participation by Knowledge workers– Participates in WSS, Office, and Outlook– Starts workflows, completes tasks– Focus – flexible and familiar
• Familiar to WSS Administrators– Set workflow settings (available workflows, default settings)– Manage Site/Box (deployment, activation)– Focus – consistent and integrated
• Powerful tools for Developers– Suited development tools
• VS for professional developers
• SharePoint Designer for site authors
– SDK with activities and samples
Workflow Authoring Tools
SharePoint Designer (Web Designer)SharePoint Designer (Web Designer)
ActivitiesActivitiesRe-use OOB/deployed activitiesRe-use OOB/deployed activities
FormsFormsAuto-generated FormsAuto-generated Forms-ASPX-ASPX
DeploymentDeployment Workflow authored live against serverWorkflow authored live against serverRuntime compilationRuntime compilation
Development ModelDevelopment ModelWizard-based workflow designerWizard-based workflow designer
Visual Studio (Pro-Dev)Visual Studio (Pro-Dev)
ActivitiesActivitiesRe-use OOB/deployed activitiesRe-use OOB/deployed activitiesCan author new activitiesCan author new activities
FormsForms Designed FormsDesigned Forms-InfoPath-InfoPath-ASPX-ASPX
DeploymentDeploymentSolutions package generatedSolutions package generatedBox administrator installableBox administrator installable
DevelopmentDevelopment ModelModelVisual workflow designerVisual workflow designer
Office Workflow Host
• WSS host provides:– Persistence– Event Delivery– Timer– History and Reporting– WSS Application Integration
• Workflow Foundation is hosted in WSS process on all front-end machines
• Workflow instances are aggressively dehydrated to the back-end database
Visual Studio 2005 Designer for Windows Workflow Foundation SharePoint Designer 2007
Can write workflows for Windows SharePoint Services or SharePoint Server
Can write workflows for Windows SharePoint Services or SharePoint Server
Code-behind file enables developer to write custom Visual C# or Visual Basic .NET code to express business logic
No code-behind file; workflow rules file declaratively encapsulates business logic
Generates workflow markup file Generates workflow markup file
Workflow is authored as a template, which can be associated with multiple sites and lists
Workflow is authored against and data-bound to specific list at design time
Workflow markup file, or markup and code-behind files, are compiled into workflow assembly
Workflow markup, workflow rules, and supporting file are stored, uncompiled, in a specific document library on the site
Workflow template must be associated with each list on which it is to be available
Association happens when the workflow is authored against the specific list; no later association is necessary or possible
Can use any forms technology. For example, ASP forms for Windows SharePoint Services workflows, or InfoPath forms for SharePoint Server workflows
Automatically generates ASP.NET forms, which you can then customize
Can include workflow modifications Workflow modifications are not available
Can use custom symmetrical InfoPath forms, which enables Office client integration of custom workflow forms
InfoPath forms integration not available
Can author custom activities for inclusion in workflows Must use activities provided
Package workflow assembly and workflow definition as a SharePoint feature, and deploy to the site
Automatically handles deployment to specific list
Can use Initiation form to gather information from the user when starting the workflow
Can use Initiation form to gather information from the user when starting the workflow
Can use custom forms for users to interact with SharePoint tasks
Can use custom forms for users to interact with SharePoint tasks
Visual Studio debugging available No step-by-step debugging available
Can author both sequential and state workflows Can author only sequential workflows
Detailed comparison of capabilities