230 likes | 336 Views
Managing a Workflow Environment. David Mann MOSS MVP www.mannsoftware.com/blog. Agenda. SharePoint Workflow Overview Best Practices and Recommendations Troubleshooting Workflows Demo : When Things Go Wrong Managing Workflows Demo : Workflow Management Q&A Wrap Up. Door Points.
E N D
Managing a Workflow Environment David Mann MOSS MVP www.mannsoftware.com/blog
Agenda • SharePoint Workflow Overview • Best Practices and Recommendations • Troubleshooting Workflows • Demo: When Things Go Wrong • Managing Workflows • Demo: Workflow Management • Q&A • Wrap Up
Door Points • Requirements for Developers • Requirements for Admins • Tools and Information Available • Best Practices
SharePoint Workflow in 90 seconds • Built on Windows Workflow Foundation • People, Document/Item/Form and Task centric • MOSS: 5 samples • WSS: 1 sample • Custom workflows built with SharePoint Designer or Visual Studio • Can create custom components to extend workflow environment
SharePoint Workflow in 90 seconds • SharePoint Workflows must be attached to a List or DocLib • Custom Workflow built from Components: • Visual Studio: Activities • SharePoint Designer: Actions • SharePoint Designer: Conditions
Workflow Components • Activities • Building Blocks of all Workflows • 50+ Out of the Box • Visual Studio Workflows only • Actions and Conditions • Extended Activities • 32 Out of the Box • SharePoint Designer only
Deploying Custom Components • Features and Solutions • Assemblies –> GAC • Register Conditions and Actions • .Actions File • Web.config Entries
Building a Custom Workflow • Declarative • Build and Deploy via SharePoint Designer • Wizard-like interface • Code • Build a Template: Visual Studio • Deploy a Template: Features/Solutions
Associating a Workflow • Makes Workflow available on a particular List or Library • No-Code Workflow – not necessary • Code Workflow – programmatic or manual
Best Practices/Requirements • Administrators • Features and Solutions • GAC Deploy • Code Reviews • Security Reviews • Monitor Environment
Best Practices / Requirements • Developers • Logging • Defensive Coding • Verify Before Use • MethodInvoking • State Machine • Prevention • Event Receivers • Fault Handlers • Cancellation Handlers • Custom Status • http://www.mannsoftware.com/Blog/?p=114
Recommendations • State Machines whenever possible • Be aware of the strengths and weaknesses of SharePoint Designer for workflows before you start using it • Use the Rules Engine whenever possible
Best Practices for Components • Use Validator class
Troubleshooting Workflow • ULS Logs • Workflow Reports • Event Logs
Workflow Reports • MOSS Only
Workflow Security • Declarative workflows – run as System Account • Default Actions run with “user” permissions • Code workflows – run as System Account
Managing Workflows • Determining which workflows are running • Starting and stopping workflows • Collecting workflow info
Wrap Up • Thanks for Coming! • Please remember to fill out your evals! • Material will be posted on my blog/CodePlex • Blog: www.MannSoftware.com/blog