wf 100 - sharepoint designer workflow: tips, tricks and best practices 

29
WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices Paul Galvin

Upload: abe

Post on 25-Feb-2016

71 views

Category:

Documents


2 download

DESCRIPTION

WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices . Paul Galvin. Agenda. About Paul and BrightStarr (brief) The Arc of a SharePoint Workflow Project Data entry Processing Dashboards Patterns What are they? What are they important? - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Paul Galvin

Page 2: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Agenda

• About Paul and BrightStarr (brief)• The Arc of a SharePoint Workflow Project

• Data entry• Processing• Dashboards

• Patterns• What are they?• What are they important?

• Discuss business solutions in terms of the Arc and patterns

• Extending SPD to enlarge its scope• Wrap-up

Page 3: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Quick note on this presentation

My laptop doesn’t like Denver

Re-created this presentation without any of my demo’s.

Page 4: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

About Paul Galvin

• Microsoft MVP since July 2008• Working on a book on this very topic

• “Paul Galvin Workflow” on Amazon.com

• Working with SharePoint since January 2007(MOSS just came out)

• Twitter: @pagalvin• Email: [email protected]• Blog: www.mstechblogs.com/paul

Page 5: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

About BrightStarr

• Founded in UK in 2005 • Microsoft Gold Partner• Global reach with offices in USA

(Paramus, NJ, Houston, TX) and the UK

Microsoft Competencies

Digital MarketingPortals and CollaborationWeb DevelopmentCustomer Relationship Management

As a 100% dedicated SharePoint Company we offer a full range of SharePoint services including:

• Infrastructure Architecture and Design• Information Architecture and Business Analysis• User Experience and Interaction Design• SharePoint and .NET Development• SharePoint Training• Dedicated SharePoint Support

Page 6: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Our web site and links

• Success Stories• www.brightstarr.com/US/Pages/Success-Stories.aspx

• SharePoint Design• View our cool wall of designs

www.brightstarr.com/US/Pages/SharePoint-Design.aspx

Page 7: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

The Arc of a SharePoint Workflow Solution

• Requirements gathering• Defining content types

• Naming convention• Use lookup columns

• Implement the solution• Provide a dashboard

• Avoid:• List columns• Jumping in without considering the dashboard• Myopic requirements gathering

• (You can always choose to ignore a requirement)

Page 8: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Workflow Solutions Extend Beyond SPD

• SPD is the engine• SharePoint as a whole provides the solution platform• Don’t fall into the trap thinking that SPD workflow is all

that really matters

• HR On-boarding:• SPD workflow assigns tasks• Otherwise, all the rest is about dashboarding and human intervention

when necessary

Page 9: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Patterns

• At home, I always put the keys in the same place

• Patterns are very important• They save time• They ensure that work is done more quickly with high

quality• Provide a consistent end user experience

Page 10: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Patterns

Two types of patterns:

• Business patterns• Technical patterns

End users see and live with the business patterns

Solution designers use technical patterns to accomplish the task at hand

Page 11: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Common Patterns

There mare many, many patterns.

Here are a few:

• Delegation• Auditing• Security-related• Time Bank• Notifications

Let’s dig into a couple of them.

Page 12: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Delegation

Both a business and technical pattern

From business side:• Tasks are assigned to people• People go on vacation or become unavailable for other

unplanned reasons

From technical side:• How do you set up delegation?• How do you use it?• Video and blog to be posted next week

Page 13: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Auditing

Don’t rely upon SharePoint workflow history• It’s purged automatically• It’s not easy to report against

Instead:• Use a custom list• Rely upon “created” timestamp to see sequencing• Audit often and frequently• Always provide this minimum info: who, what, key value

and a link to the base item• Video / blog entry to follow before end of May

Page 14: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Patterns and Business Solutions

Walk through some solutions:• Helpdesk Ticketing• HR Time Off Management

Page 15: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Helpdesk Ticketing - Requirements

• Capture the request• Try to automatically assign to someone based on

“problem type”• Auto-assign pattern• Very similar to delegation

• Integrate delegation• Security

• “Only IT can see my stuff”

• Self-service• Email notifications at key points during my ticket’s lifespan

• Metrics reporting

Page 16: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Helpdesk Ticketing - Implementation

• Custom list to capture the need• Back the list with a content type

• Follow a naming convention (“HD_”) for all site columns and the content type itself

• Use SPD or InfoPath to improve the UI

• Use content approval on the list to implement security• Implement the metrics feeder pattern

• Track events in a custom list• (submitted, who submitted it, how long it was open)

• Dashboard for self-service• Email notification includes a link to search with

appropriate keywords

Page 17: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Helpdesk Dashboard

SharePoint dashboards are easy• Views on lists• Create web part pages• Add the helpdesk request list to the dashboard

• Add it multiple times• Add with different views

Page 18: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

HR Time Off Management - Requirements

• Security is paramount

• End users become lawyers when their vacation is being calculated

• Time bank pattern• Everyone has types of available time off

Page 19: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Time Off - Implementation

• As always, custom lists backed with content types• Always follow a naming convention

• Security pattern: Use one list per approving manager• Content approval won’t be sufficient in this case• The approving manager’s direct reports request time via this list

• Auditing is especially important• Re-use the same auditing pattern• Log all requests• Log all dispositions

• Workflow updates master timebank.

Page 20: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Time Off - Dashboard

Two audiences• HR managers• Individual employees

This is a good case for item level security* on the time bank

• End users can go directly to the time bank• Item level security ensures that they cannot see anyone

else’s time• HR can view everyone’s time

• (*) Item level security ios usually a bad idea

Page 21: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Patterns and SharePoint Designer

Business patterns transcend SharePoint Designer• There’s a lot of stuff you want to do with SPD that

simply can’t be done, or shouldn’t be done• In these cases make a decision:

• Abandon SPD• Extend SPD

Page 22: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Extending SPD

SharePoint Designer is extensible• Custom activities• Custom conditions

Implemented using C# code.

Can follow same feature/solution framework as web parts (and other technical artifacts)

Page 23: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Why Bother Extending SPD?

Invoicing Story from the old days• Human beings spending a lot of time doing

inappropriate things

• Extend SPD so that highly trained/skilled IT resources can spend their time doing the kinds of things that require highly trained and skilled resources

• This is not a knock against end users / power users.

Page 24: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

What does it take to extend SPD?

• Some strong SharePoint coding skills• A good example upon which to base your first effort (i.e.

a pattern)• Strong developer can get first custom activity working in

a few days (fully tested and deployed)

• You should think about extending SPD in the same way that you think about creating a content type – it’s a little harder but really, it’s no big deal

Page 25: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Good Candidates for SPD Custom Activities

• Calculate “next business day”• Take company calendar and weekends into account when assigning

due dates.

• Iterations• Iterate over all the items in the list

• Item level security• When content approval isn’t good enough

• Site Governance

Page 26: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Miscellaneous tips and tricks

XOML files (“zommel”)• Role within the SharePoint workflow framework – data

to the engine• Text file that can be edited manually• Best use – richly formatted emails

• Create an email in outlook• “View source”• Put the source into the right place in the XOML file

Page 27: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Miscellaneous tips and tricks

• Security• Use the update workflow variable activity • Look up from a secured list• Empty result means that current user does not have access

Secure the list by means of SharePoint users, SharePoint groups and active directory groups

Example: Conditional approval• $500 approvers• $10,000 approvers• $50,000 approvers

Page 28: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Summary

• Keep the Arc in mind whenever you sit down to start a new business solution• Requirements (cast a wide net)• Implementation, using patterns• Dashboards for self-service and exceptions management

• Discover and use patterns in your daily routine with SharePoint Designer workflow

• Extend SPD so that the right people with the right skill sets are doing the most appropriate things at all times

Page 29: WF 100 - SharePoint Designer Workflow: Tips, tricks and best practices 

Questions?

Paul’s contact information:• [email protected]• Twitter: @pagalvin• www.mstechblogs.com/paul

• BrightStarr goodies and business cards