VS 2008 and SharePoint Workflow

The "Orcas" release train has been keeping me busy. For a long time I have been thinking of blogging about the feature that I worked on in Orcas. As the title of this entry suggests it is a VSTO feature that has to do something with SharePoint Workflow.

Firstly, lets look at SharePoint (also referred to as Microsoft Office SharePoint Server (MOSS) - yet another long product name!). In the MOSS 2007 release, the SharePoint team has done a great job of integrating with the Workflow Foundation (WF) to provide a means to create workflows.

A workflow is a reliably repeatable pattern of activity enabled by a systematic organization of resources, and information flows (from Wikipedia). A typical workflow in MOSS would be that of document approval. An employee writes a document that needs to be approved by the manager before sending it out externally. When the employee checks in the document in a SharePoint library, the manager is assigned a task to approve the document. On approval, the employee gets a notification and sends out the document to the customer. This is a simple example, but a workflow can define a more sophisticated and complex series of human or automated activities in an enterprise.

As you may have guessed, that building workflows from ground up is a lot of work. The SharePoint team has done a great job by integrating WF and creating a great runtime story - taking care of difficult problems pertaining to persistence, serialization, permissions, user model etc., However, there is a necessity to make the development of SharePoint workflows much easier.  As John Durant in his blog post quotes Robert Bogue:

SharePoint and Workflow may be the most powerful combination since chocolate and peanut butter, but the trick is harnessing their combined power. That isn't as easy as it first seems, but in this article you'll learn how create a SharePoint workflow in Visual Studio from start to finish. 

That's where the VSTO SharePoint workflow tools come in. We have made it extremely easy for you to develop, deploy, and debug SharePoint workflows. We have brought the "simple F5 experience" (as we internally refer to it) that you are familiar with for Windows application development, to SharePoint Workflow development.

No more hunting for the right w3wp processes in the task manager, looking for stsadm errors, or running of some batch scripts to deploy your workflows. (as documented here) VSTO SharePoint workflow tools take care of all this for you.

Check this feature out in the VS 2008 Beta 2 release. Now you can focus on your business logic right away - without caring about setting up your environment for development.