Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National...

26
Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint Server (MOSS) Solutions [email protected]

Transcript of Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National...

Page 1: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

Using Microsoft SharePoint to Develop Workflow and Business

Process Automation

Ted PerrotteNational Practice Manager,Quilogy, Microsoft Office SharePoint Server (MOSS) [email protected]

Page 2: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

AgendaWorkflow OverviewWorkflow TypesDemonstration

Out of the box workflows SharePoint Designer Demo

Q&A

Page 3: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

Real world workflow opportunities… Expense reports Purchase requests Performance Reviews Customer Quotes Document assembly (collaboration) Legal review and compliance Document Retention Policies Notifications Project Task Assignments Help Desk solutions Change Request management Approvals Many others…

Page 4: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

Windows Workflow Foundation (WF)

Windows Workflow Foundation is the programming model, engine and tool for quickly building workflow enabled applications

It consists of a .NET Framework version 3.0 namespace, an in-process workflow engine, and designers for Visual Studio

SharePoint extends the WF with specific activities and SharePoint Designer

Page 5: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

Overview The workflow process can control almost any aspect of an

item, including the life cycle of that item Workflow is flexible enough to model both the system

functions and the human actions necessary for the workflow to complete

Workflow functionality is provided through the Windows Workflow Foundation (WF) run-time engine

Developers can create custom workflows that run in Windows SharePoint Services & MOSS

Developers can use custom workflow forms to gather information from users

Page 6: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

Workflow Basic Concepts Each Workflow consists of a set of related activities An “activity” is the elemental unit of modeling, programmability,

reuse, and execution within WF An “activity” may be performed by the system or by a user Activities can represent logical control structures (if then…do

while…) Activities can have properties, methods, and events Simple Activities perform a single unit of work (e.g. “Delay for 1

day”) Composite Activities contain other activities (e.g. a condition with

2 branches) You can attach “handlers” (such as error handlers) to activities

Page 7: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

Conceptual View of Workflow Framework

Diagram from Microsoft.com

Windows Server 2003

Windows SharePoint Services

Site 1 Site 2 …

Web Browser

Site N

Microsoft Office Applications

SQL Server

WF Runtime Engine

Internet Information Services

Workflow Instances

List

Item A

Item B

Item C. . .

Associations

Workflow Templates

Document Library

Page 8: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

Conceptual View of Workflow Framework

Diagram from Microsoft.com

Page 9: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

Sequential & State Workflows

Sequential workflows: a procession of steps that execute in order until the last activity completes

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

Page 10: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

Sequential Workflow Sample Flowchart

Diagram from Microsoft.com

Page 11: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

Interaction points in Workflow Lifecycle

AssociationInitiation *ModificationTask *

*SharePoint Designer

Page 12: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

Initiating WorkflowsWorkflow can be started manually (user)Workflow can be configured to run

automatically when a document or item is changed.

Workflow can be configured to run automatically when a document or item is created

Page 13: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

Basic Types of WorkflowsMOSS “Out of the Box” WorkflowsSharePoint Designer WorkflowsVisual Studio Custom Workflows

Page 14: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

MOSS “Out of the Box” WorkflowsApprovalCollect FeedbackCollect SignaturesDisposition Approval

Page 15: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

SharePoint Designer WorkflowsUse Designer for declarative, rules-based

workflows that contain no code, and are developed against a specific SharePoint site

What’s actually produced is a sequential workflow with conditions expressed using the WF rules engine

Designer uses a “wizard driven” interface that enables users to assemble sequential workflows

Page 16: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

SharePoint Designer WorkflowsUsers select from a predetermined set of

activitiesActivities appear as “actions”, represented by

a sentence that contains variablesUsers can select conditionsWorkflow markup, workflow rules, and

supporting files are stored, uncompiled, in a specific document library on the site

Page 17: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

SharePoint Designer WorkflowsAs the user creates a Designer workflow,

SharePoint generates two files: Workflow markup file—which describes the

activities Workflow rules file—which contains the business

logic in declarative rules form, rather than code

Page 18: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

Limitations of Designer WorkflowsCan only produce sequential workflows (can’t create

State Based workflows)Designer workflows can’t be modified while they’re

runningWorkflows must be authored against a specific

document library or list Association happens when the workflow is authoredAutomatically generates ASP.NET forms for Initiation

& Task Completion—not association or modification

Page 19: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

SharePoint Designer

Screenshot

Screenshot from Microsoft.

Page 20: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

Features of Visual Studio Workflows Can write workflows for WSS or MOSS Code-behind file enables developer to write custom

Visual C# or VB .NET code to express business logic Generates workflow markup file Workflow is authored as a template, which can be

associated with multiple sites and lists Workflow markup file, or markup and code-behind

files, are compiled into workflow assembly

Page 21: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

Features of Visual Studio Workflows Workflow templates must be associated with each

list on which it is to be available (not automatic) Can use any forms technology (e.g. ASP forms for

WSS workflows, or InfoPath Forms for MOSS workflows)

Can include workflow modifications Can use custom symmetrical InfoPath forms, which

enable Office client integration of custom workflow forms

Page 22: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

Features of Visual Studio Workflows Can author custom activities for inclusion in

workflows package, workflow assembly and workflow definition as a SharePoint feature, and deploy to the site

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

Visual Studio debugging available Can author both sequential and state workflows

Page 23: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

Key SharePoint related workflow “Activities”

OnWorkflowActivatedCreateTask (this has a SendEmailNotification

property that can be set to true…) OnTaskChangedCompleteTaskDeleteTaskOnWorkflowModified SendEmail LogToHistoryList

Page 24: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

Visual Studio

Workflow Interface

Page 25: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

Demonstration

Page 26: Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.

Reference links and related information

A list of all WF activities can be found at:http://msdn2.microsoft.com/en-us/library/ms733615(vs.85).aspx

Overview of MOSS Workflow Development using Visual Studiohttp://msdn2.microsoft.com/en-us/library/ms580283.aspx

General information can be found on the Microsoft site , MSDN, TechNet, or contact the Quilogy team!

Contact us: [email protected] [email protected]