14
Workflows in SharePoint Brian Russo RJB Technical Consulting July 2009

Workflows in SharePoint Brian Russo RJB Technical Consulting July 2009

Embed Size (px)

Citation preview

Page 1: Workflows in SharePoint Brian Russo RJB Technical Consulting July 2009

Workflows in SharePoint

Brian RussoRJB Technical ConsultingJuly 2009

Page 2: Workflows in SharePoint Brian Russo RJB Technical Consulting July 2009

What Are Workflows?

The automation of a business process during which information is passed from one participant to another according to a set of procedural rules.

Page 3: Workflows in SharePoint Brian Russo RJB Technical Consulting July 2009

Workflow Concepts

• Sequential Workflow– Series of steps executed in a prescribed order– Each step and its sequence clearly defined– IF-ELSE decision making– Best for problems where predefined steps are

known at design time

Page 4: Workflows in SharePoint Brian Russo RJB Technical Consulting July 2009

Workflow Concepts

• State Machine Workflow– No predefined sequence of steps– Define a set of states and possible transitions

between each state– Control by external events– Best for problems involving human interactions

Page 5: Workflows in SharePoint Brian Russo RJB Technical Consulting July 2009

SharePoint 2007 Workflow Options

• SharePoint Designer (SPD)• Windows Workflow Foundation (WF)• K2• Nintex• Metastorm

Page 6: Workflows in SharePoint Brian Russo RJB Technical Consulting July 2009

Microsoft SharePoint Workflow Tool Comparison

Visual Studio Designer for Windows Workflow Foundation

Office SharePoint Designer 2007

Code-behind file enables developer to write custom Microsoft Visual C# or Microsoft Visual Basic code to express business logic

No code behind; workflow rules file declaratively encapsulates business logic instead

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, 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

Workflow template can be associated with a site content type.

Cannot author workflows against content types.

Page 7: Workflows in SharePoint Brian Russo RJB Technical Consulting July 2009

Microsoft SharePoint Workflow Tool Comparison

Visual Studio Designer for Windows Workflow Foundation

Office SharePoint Designer 2007

Can use any forms technology. For example, Microsoft ASP.NET 2.0 forms for Windows SharePoint Services 3.0 workflows.

Automatically generates Microsoft ASP.NET 2.0 forms, which you can then customize.

Can include workflow modifications Workflow modifications are not available

Package workflow assembly and workflow definition as a SharePoint Feature, and deploy to the site

Automatically handles deployment to specific list

Visual Studio debugging available No step-by-step debugging available

Can author both sequential and state workflows

Can author only sequential workflows

Page 8: Workflows in SharePoint Brian Russo RJB Technical Consulting July 2009

SPD Workflow Designer

Page 9: Workflows in SharePoint Brian Russo RJB Technical Consulting July 2009

When Not to Use SPD• If your SPD workflow contains more than about 10

steps…

• If you have to create lists, libraries or fields/columns just to overcome a shortcoming in SPD…

• If you EVER need to deploy the workflow anywhere but where it is developed...

• If you might need to change the process the workflow supports once it is deployed…

Page 10: Workflows in SharePoint Brian Russo RJB Technical Consulting July 2009

When Not to Use SPD

• If you need to edit the generated forms at any point…

• If you need to create multiple workflows and chain them together in some Rube Goldberg contraption…

• If you need to do real parallel processing or escalation of any type...

• If you need any type of SDLC, or even simple source control...

Page 11: Workflows in SharePoint Brian Russo RJB Technical Consulting July 2009

SPD Workflow Deployment?

ProductionFarm

Development Farm

QA Farm

Production Data

DevelopmentBegins

Pause Production While Waiting for Updates to Occur

Backup and Restore Content Database

Content Database Migration Pattern

Page 12: Workflows in SharePoint Brian Russo RJB Technical Consulting July 2009

SPD Workflow Deployment?

ProductionFarm

Development Farm

QA Farm

Production Data

DevelopmentBegins

Pause Production While Waiting for Updates to Occur

Backup and Restore Content Database

Page 13: Workflows in SharePoint Brian Russo RJB Technical Consulting July 2009

Nintex

Page 14: Workflows in SharePoint Brian Russo RJB Technical Consulting July 2009

References• Kenneth Lo, PMP http://klopmp.com/

• When NOT to use SPD for Workflow http://www.mansoftware.com/workflow/Wiki%20Pages/When%20NOT%20to%20use%20SPD%20for%20Workflow.aspx

• Nintex http://www.nintex.com

• Workflow Scalability and Performance in WSS 3.0 http://msdn.microsoft.com/en-us/library/dd441390.aspx

• Workflow Development Tool Comparison http://msdn.microsoft.com/en-us/library/ms461944.aspx

• SharePoint Server Custom Application Development Document Workflow Management Project http://go.microsoft.com/fwlink/?LinkId=141577

• Useful Sharepoint Designer Custom Workflow Activities http://www.codeplex.com/SPDActivities