Workflow solutions best practices and mistakes to avoid

38
SHAREPOINT AND PROJECT CONFERENCE ADRIATICS 2013 ZAGREB, NOVEMBER 27-28 2013 Workflow Solutions Best Practices and Mistakes to Avoid

Transcript of Workflow solutions best practices and mistakes to avoid

Workflow Solutions Best Practices and Mistakes to Avoid

About me

• Vadim Tabakman

• Lead Technical Evangelist, Nintex

• Over 19 years consulting, development and corporate IT experience

• End user advocate

Introduction• There are more best practices and errors to avoid

• Based on real-world projects

• Advice applies to any workflow product

• No demos

SharePoint Workflow and Multiple History Lists

Why Not One Workflow History List?• History Lists are just SharePoint lists

• Performance degradation with 2000-4000 items

• Multiple Workflows and One History List

• Grows very quickly

• Multiple Workflows and Multiple History Lists

• Shares the load.

• Faster to access workflow history

Don’t Always Use SharePoint Workflow

Good Uses of SharePoint Workflow• Managing how people work

• Document approval & feedback

• Collaborative reviews & discussions

• Gathering signatures

Good Uses of SharePoint Workflow• Automating some of SharePoint’s behavior

• Approve site creation requests

• Parse incoming email in a list and act on it

• Publishing items to target

• Moving documents through lifecycles

Possible Uses of SharePoint Workflow• Manipulating other applications, data sources

• Employee onboarding

• Resource scheduling

• SharePoint lists become work queues

Bad Uses of SharePoint Workflow• Transaction-oriented processes

• Blocking or modifying activity

• Application-to-application service activity

• Aggressive data transformations

• Work that doesn’t involve SharePoint at all

Plan to Fail

Consensus May Not Exist• Get 3 employees and 1 manager together

• Talk about a process

• Little agreement

• Documentation disagreement, too

The Process Will Change

Exceptions are Initially Ignored• Rarely is this considered in advance

• Rarely does everyone agree

• Ignored exceptions lead to bypass

Initial Failure as a Winning Strategy• People do not want to hear these hard truths.

• You may have to create an initial workflow just to show how awful a

process is.

• Only then can you change it.

Process

Step

Step

Step

Start Simple

Automatethisfirst

Automatetheselater

Focus on Everyday Process

“Policy is the abdication of thought.”-Nathan Myrvold

Everyday Processes

• Steal time

• Get in the way

• Annoy users

Everyday Processes

• Have few stakeholders (even if many participants)

• Are easier to automate

• Free up time to focus on more critical stuff

Everyday Processes

• Automating them trains users how to think

When to use a :List WorkflowSite Workflow

Reusable Workflow Template

Reusability

• You should think about reusability first

• Save yourself time

• Save your colleagues time

• Save your business time and money

• Is a List workflow the best solution for you?

• It’s probably the quickest and easiest, but is it the best solution?

Put Forms in Their Proper Place

The Form is the User Interface

• Not the workflow

• Not the data

If (x and y) then do this do thatEnd if

If (user is Bob) then do this and that and the other thing undo thatEnd if

If (x and y) then do this do thatEnd if

If (x and y) then do this do thatEnd if

If (user is Bob) then do this and that and the other thing undo thatEnd if

If (x and y) then do this do thatEnd if

Form-Only App Problems• Hidden logic

• Disconnected logic

• Security

• Complexity without code

• Inheritance / Knowledge Transfer

Presentation Process IntegrationBegin Step 1

Step 2Step 3

End

Think About the Whole App

Make the Workflow Do the Work• Documented

• Auditable

• Easier to change

• Easier to manage

One Form Per Step• Submit

• Start

• Task

Task Forms

• Workflow can route new data

• New data can be written to original form

• All info can be sent to other places

Self-Reporting Workflows

Least-Loved Techniques

• Browsing individual history entries

• Building custom reports

You’re Already Using SharePoint

• The list itself can be the report

• Users can sort, group, filter on metadata (Leverage Views!)

• Write progress information to item properties

• Stage Workflows already do this

Summary• Don’t always use SharePoint Workflow

• Plan to fail

• Focus on everyday processes

• It’s not about forms

• Self-reporting workflows

Questions?