WF 103 - Build scalable SharePoint 2013 Staged Workflows to run locally and in the Cloud


Published on

SharePoint 2013 now supports two workflow platforms. We will walk through using the two workflow platforms and how they are different. We will configure the SharePoint 2013 Workflow Manager and build a workflow that can run locally and in the Azure cloud seamlessly.

Attendee Takeaways:
1. Understanding both of the SharePoint 2013 Workflow architectures.
2. Learn to setup and configure the SharePoint 2013 Workflow Manager.
3. Learn to build staged workflows and run them in the local or the Microsoft Azure cloud.

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

WF 103 - Build scalable SharePoint 2013 Staged Workflows to run locally and in the Cloud

  1. 1. SharePoint 2013 Workflows Build scalable SharePoint 2013 Staged Workflows to run locally and in the Cloud Brian Culver ● SharePoint Fest Chicago ● October 2013 ● WF103
  2. 2. About Brian Culver • SharePoint Solutions Architect for Expert Point Solutions • Based in Houston, TX • Author • SharePoint 2010 Unleashed • Various White Papers • Speaker and Blogger
  3. 3. Session Agenda • Why do we use Workflows? • What about Workflow changed in SharePoint 2013 • Why are they better in 2013? • Workflow Manager 1.0 • Building a Workflow in 2013 • Workflows Best Practices
  4. 4. Why do we use Workflows? • A workflow is basically a series of tasks that produce an outcome. • In a business scenario, a workflow is a business process. • Workflows can be used to automate, solve and improve processes: • Help people to collaborate on documents • Manage project tasks • Help organizations to adhere to consistent business processes • Improve organizational efficiency and productivity • They enable the people who perform these tasks to concentrate on performing the work rather than managing the workflow or process.
  5. 5. What about Workflow changed in SharePoint 2013? • SharePoint 2013 offers two workflow engine flavors: • SharePoint 2010 Workflows (based on .NET3.5) • SharePoint 2013 Workflows (based on .NET4.x) • SharePoint 2010 Workflows run within SharePoint (the internal workflow host) • SharePoint 2013 Workflows run outside of SharePoint in the new Workflow Manager (formerly labeled as Azure Cloud) Farm SharePoint 2013 2010 Workflows 2013 Workflows Rest Services
  6. 6. Why are they better in 2013? • Several improvements in several areas: • Workflow Engine • For SharePoint 2013 Workflows – taken out of SharePoint • Uses Workflow Framework in .NET 4.x which is much more robust • Can be extended and enhanced more easily • Much more scalable • SharePoint Designer 2013 • Leverages Visio 2013 to provide a better design experience for users and developers. • Business user builds the Workflow in Visio 2013 with SharePoint 2013 Workflow Shapes. • Designer/Developer can import into SharePoint Designer 2013 and/or Visual Studio 2012. • Export to Visio 2013 files preserves workflow properties and details which makes it much more portable between sites and environments.
  7. 7. What is better in 2013? New Workflow Actions, Components and Conditions
  8. 8. What is better in 2013? Stage Shapes • A stage is a container which can contain any number of shapes and actions, such as sending an email and logging to the workflow history. A stage must have only one path in and one path out.
  9. 9. What is better in 2013? • The following rules apply to stages: • A workflow must have at least one stage. A stage, by default, has a Start, Enter and Exit shape SharePoint 2013 Workflow template. • An explicit Start shape is required outside of the stage for the entire diagram. An explicit Terminate shape outside of the stage is not required. • Stage containers cannot be nested. Use other containers within a stage to nest, such as a Step container. • Stop Workflow shapes may exist within a stage. • At the top level, the workflow can contain only stages, conditional shapes, and Start and Terminate terminators. All other shapes must be contained within a stage.
  10. 10. What is better in 2013? Loop shapes • Loops are a series of connected shapes that will execute as a single unit within a loop container. Like stages, loops are a container shape with an Enter and Exit shape. A loop shape also requires that an Enter and Exit shape be added to the edges of the container to define the paths in and out of the loop. Workflows in SharePoint Server 2013 support two types of loops: loop n times and loop with condition.
  11. 11. What is better in 2013? • The following rules apply to loops: • Loops must be within a stage. • Steps may be within a loop. • Loops may have only one entry and one exit point.
  12. 12. What is better in 2013? Step shapes • Steps represent a group of sequential actions to be performed as a single unit.
  13. 13. What is better in 2013? • The following rules apply to steps: • Steps must be within a stage. • Steps may be within a loop. • Steps may have only one entry and one exit point. • Steps can contain steps. To learn more about the workflow Shapes available in the SharePoint Designer 2013, go to:
  14. 14. What is better in 2013? • Designer Improvements (with Visio 2013 only) • Text-Based Designer • Visual Designer
  15. 15. Demo Visual Designer vs Text-Based Designer
  16. 16. What is better in 2013? SharePoint 2013 Workflows Architecture • SharePoint 2013 workflows are powered by the .NET 4.x workflow infrastructure or Windows Workflow Foundation 4 (WF4). • WF4 was substantially redesigned from prior versions in that it is built on the messaging functionality provided by the Windows Communication Foundation (WCF). • In WF4 workflows, each business process step is represented by a workflow "activity". Thus, workflow activities represent the underlying managed objects whose methods drive workflow behaviors.
  17. 17. What is better in 2013? SharePoint 2013 Workflows Architecture
  18. 18. What is better in 2013? SharePoint 2013 Workflows Architecture • In SharePoint Designer, workflow actions are the user-friendly representations of the underlying activities from WF4. • As the workflow executes, each workflow action interacts with the workflow execution engine which in turn acts on the corresponding activities. • The workflow activities are implemented declaratively by using XAML. • Workflow activities are invoked by using loosely coupled web services that use messaging APIs (Windows Communication Foundation or WCF) to communicate with SharePoint Server 2013.
  19. 19. What is better in 2013? SharePoint 2013 Workflows Architecture • In SharePoint Server 2013, the Workflow Manager Client 1.0 hosts the WF4 engine and WCF web services. • Together, the Workflow Manager Client 1.0, SharePoint 2013, and SharePoint Designer 2013 each provide the functionality that makes up the SharePoint 2013 Workflow Architecture. • The Workflow Manager Client 1.0 provides the management of workflow definitions and hosts the execution processes for each workflow instance. • The SharePoint 2013 platform provides the framework for building SharePoint workflows and storing the SharePoint workflows.
  20. 20. Is there bad news? • So the bad news? There is no bad news. There is only news. • SharePoint 2013 does not support all the actions SharePoint 2010 did. • Why? • WorkAround: • Invoke a SharePoint 2010 Workflows via the SharePoint Interop (Start Another Workflow action). • Bad ALM Story • Dueling Banjos • Dictionaries are hard to build dynamically
  21. 21. Workflow Manager 1.0 Installing the Workflow Manager 1.0 • Download “Workflow Manager 1.0” • • Install • Prerequisites: • WorkflowManager.exe in the Application Servers or Workflow Farm Servers. • For SharePoint 2013, WorkflowClient.exe in the Web Front Ends. • Apply the Cumulative Updates • Service Bus • Workflow Manager
  22. 22. Workflow Manager 1.0 Installing the Workflow Manager 1.0 • Run the “Workflow Manager Configuration” • “Configure Workflow Manager with Custom Settings” • Note: Do not pick “Recommended” option • For more information:
  23. 23. Workflow Forms The New Story • Is InfoPath 2013 going away? • .NET 4 Workflows and Forms • Generates .ASPX pages • Can work with InfoPath 2013 as well • InfoPath 2013 does have new improvements. • Web service, WCF, REST, JSON
  24. 24. Workflow Forms The New Story • New features in InfoPath 2013 • The development experience has been drastically improved to work with Visual Studio 2012 • InfoPath can now be deployed as a sandbox solution • The publishing process has been simplified • SharePoint List forms have been enhanced • An InfoPath form Web part has been added • The InfoPath Form Service provides richer Web forms • The InfoPath Form Service follows better compliant standards • InfoPath now supports digital signatures
  25. 25. Building a Workflow in 2013 Reusable and Global Reusable Workflows • Reusable workflows were introduced in SharePoint Designer 2010 along with site workflows. Reusable workflows are associated with a content type instead of a specific list. • SharePoint provides the ability to reuse content types across multiple sites and lists, and enables associated workflows to execute on any list where the content type has been configured for use. • Reusable workflows are only aware of site columns on the associated content type, and certain core list metadata columns that are shared across all lists such as “Created” and “Created By”. • Global Reusable workflows are available for use anywhere within a Site Collection, but the workflow and associated content type must be created in the top-level site of a site collection. • One of the most powerful features of the reusable workflow is the ability to export for use in other site collections, web applications and SharePoint farms. • SharePoint Designer automatically packages the workflow and dependencies including forms as a solution package (.WSP) that can be deployed as a sandbox solution, making it possible to also deploy them to hosted SharePoint environments such as Office 365.
  26. 26. Building a Workflow in 2013 Site Workflows • Site workflows were new in SharePoint 2010. Site workflows are published to a site rather than a content type or list. Since they are not associated with a specific list or content type, they are not associated with any specific list item (or within the workflow context, the current item). Since a site workflow does not have the specific list item associated with the workflow context, some workflow actions are not available, such as workflow actions triggered when the current list item changes. • Site workflows also do not have events in SharePoint that trigger them. Therefore, site workflows have to be started manually either directly by user or programmatically. • Site workflows are essentially best designed to perform administrative functions on the sites upon which they execute. • Site workflows greatly benefited from custom workflow actions which can expand the capabilities far beyond what is provided out of the box.
  27. 27. Building a Workflow in 2013 List Workflows • List workflows have been supported since SharePoint 2007 in SharePoint Designer. A list workflow is designed and published directly to a specific list instance. • List workflows do offer a key feature not found in site workflows or reusable workflows, the ability to access list columns (columns created directly on the list). • A very annoying flaw in list workflows is their affinity to the list where they were published. • Cannot be moved or reused on another list or another site. • List workflows have a place where a small and specific process is required. • They are not good choices for complex workflows or workflows that may need to be used elsewhere, such as another site or list.
  28. 28. Building a Workflow in 2013 • Lets build a simple vacation request workflow
  29. 29. Demo Building a workflow in SharePoint 2013
  30. 30. Workflows Best Practices • Document the High-Level workflow • Then break it up into smaller units • Plan before you build • Most workflows do not look the same after a couple iterations • Put in the time to carefully understand the workflow and identify issues • Create Reusable workflows • Portable and reusable • Create smaller, simpler workflows (when possible) • Larger workflows are harder to reconfigure • Larger workflows are harder to fix and diagnose • Larger workflows increase complexity of logic
  31. 31. Questions ? ? ? ?
  32. 32. Constructive Feedback Is Appreciated Brian – Your presentation was … Thanks! Good Demos! Great information, but would like to have learned more about [Insert Topic]
  33. 33. Brian Culver, MCM Twitter: @spbrianculver E-mail: Blog: Thank you!