Workflow changes in SharePoint 2013

SharePoint Server 2013 brings a major advancement to workflow: enterprise features such as fully declarative authoring, REST and Service Bus messaging, elastic scalability, and managed service reliability.

SharePoint Server 2013 can use a new workflow service built on the Windows Workflow Foundation components of the .NET Framework 4.5. This new service is called Workflow Manager and it is designed to play a central role in the enterprise. Processes are central to any organization and workflow is the orchestrator of processes.

Two SharePoint workflow platforms

 The SharePoint 2010 Workflow platform has been carried forward to SharePoint Server 2013. All of your workflows that were built by using SharePoint Server 2010 will continue to work in SharePoint Server 2013.

In SharePoint Server 2010 the workflow engine installed automatically with the product. This continues to be the case with the SharePoint 2010 Workflow platform in SharePoint Server 2013. If you simply install SharePoint Server 2013 and do not install and configure Workflow Manager then you will have a nearly identical experience with building workflows as you did in SharePoint Server 2010.

The SharePoint 2013 Workflow platform only becomes available to you, and your tools, after you download and install the new Workflow Manager service and configure it to communicate with your SharePoint Server 2013 farm. For a detailed guide on this process, see Start: Set up and configure SharePoint 2013 Workflow Manager.

The figure illustrates the concept.

Figure:High-level architecture of the workflow infrastructure

High-level workflow architecture

Figure: Architectural changes in SharePoint Workflow

Architectural changes in workflow

Fully declarative, no-code authoring environment

Another of the prominent changes is that workflows on the WF 4 platform are fully declarative. That is, workflows are no longer compiled into managed assemblies and deployed to an assembly cache. Instead, XAML files define your workflows and frame their execution.

SharePoint Designer enhancements

SharePoint Designer 2013 includes new functionality designed specifically for Workflow Manager. In SharePoint Designer 2013 this new platform is known as the SharePoint 2013 Workflow platform. These new features include:
  • A visual workflow development experience that uses a Visio 2013 add-in
  • A new action that enables no-code web service calls from within a workflow
  • New actions for creating a task and starting a task process
  • New coordination actions that let you start a workflow built on the SharePoint 2010 Workflow platform from a workflow built on the SharePoint 2013 Workflow platform
  • A new Dictionary type
  • New workflow building blocks such as Stage, Loop, and App Step

When you create a workflow in SharePoint Designer 2013, you have the option of choosing the platform on which you wish to build a workflow in the workflow creation dialog as shown in the figure.

Create a workflow using SharePoint Designer 2013.

Workflow Manager capabilities

Workflow Manager brings a new class of workflow to SharePoint Server 2013. Workflows built by using Workflow Manager can take advantage of several new capabilities. These include enterprise features such as:

  • High Density and Multi-Tenancy
  • Elastic Scale
  • Activity / Workflow Artifact Management
  • Tracking and Monitoring
  • Instance Management
  • Fully Declarative Authoring
  • REST and Service Bus Messaging
  • Managed Service Reliability

To learn more about Workflow Manager, see Workflow Manager.

As a SharePoint Server 2013 workflow administrator you should be familiar with Windows PowerShell. After you have installed the Workflow Manager service you will need to configure it to communicate with your SharePoint Server 2013 farm. This pairing is accomplished by using Windows PowerShell cmdlets. Windows PowerShell is used exclusively when you manage and monitor Workflow Manager.

Writing a Simple SharePoint Designer Workflow

After the above PowerShell script runs, you need to test if workflows are running properly or not. You can create a simple SharePoint 2013 style workflow and verify if the workflows are initiated and completed as expected. To perform this test, I’ll walk you through using SharePoint 2013 designer workflows.

In this workflow, you’ll create a task in the workflow tasks list if the title of the newly created list item is “SPS2013”. To craft up such a workflow, open SharePoint Designer 2013, and open the http://sp site. Once SharePoint Designer has opened the site, click the Workflows tab on the left hand side, and then click on Reusable Workflow button in the ribbon as shown in Figure 6.

Figure 6: Creating a reusable workflow.

Name your workflow TestWF; note that you can only target the “All” content type setting here, even though you’re choosing to create a reusable workflow. Ensure that you are creating a SharePoint 2013 workflow as shown in Figure 7.

Figure 7: New workflow details.

Next, go ahead and craft up a workflow as shown in Figure 8.

Figure 8: Logic of the workflow.

Finally, click the Save and Publish buttons in the ribbon.

Now go to your SharePoint site and click Site Contents. Choose to “Add an app” and add a custom list. Once the list is created, choose to add a workflow to it, and add the TestWF to this list. Select the checkbox, “Creating a new item will start the workflow.”

In this custom list, add a new item, ensure that its title is “SPS2013.”

Once the item is created, verify that the workflow task gets created as shown inFigure 9.

Figure 9: Completed workflow task.

Congratulations. You just wrote your first SharePoint 2013 style workflow.



Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s