Chris Mayo, Technical Evangelist for Unified Communications

Chris Mayo
Chris Mayo builds no-code workflows for SharePoint 2010

Chris Mayo is a technology specialist focusing on Office 365 and SharePoint Online, and he’s going to take us through no-code workflows for SharePoint 2010 in this session.   He’s got a blog called SharePoint Development in the Cloud that I’m going to check out later.

Workflows in SharePoint Server 2010 enable enterprises to reduce the amount of unnecessary interactions between people as they perform business processes. For example, to reach a decision, groups typically follow a series of steps. The steps can be a formal, standard operating procedure, or an informal implicitly understood way to operate. Collectively, the steps represent a business process. The number of human interactions that occur in business processes can inhibit speed and the quality of decisions. Software that simplifies and manages this “human workflow” enables the automation of interactions among groups who participate in the process. This automation results in more speed, overall effectiveness of the interactions, and often a reduction in errors.

You can model business processes by using flow charts, such as those created using Microsoft Visio 2010 and can represent business processes by using workflow terminology. You can automate business processes, such as document approval, by associating a workflow with data in SharePoint Server 2010. For example, you can create a workflow to route a document for review, track an issue through its various stages of resolution, or guide a contract through an approval process.

One problem that many IT departments face when implementing business processes that require participation of information workers is that those processes do not integrate with the way people actually work. For a business process to be effective, it must be integrated with the familiar, everyday tools and applications used in the workplace so that it becomes part of the daily routine of information workers. In the electronic workplace, this includes integration with e-mail, calendars, task lists, and collaboration Web sites.

Automating business processes with SharePoint is a powerful way to increase efficiency in any organization.  Using SharePoint Designer 2010, no-code (or declarative) workflows can be built to run in either SharePoint 2010 or in the cloud with SharePoint Online.  The thing to remember is you CANNOT do this in the SharePoint sandboxed solutions.  That’s really important to know so you don’t waste time building something in the sandbox that will never work.

Using SharePoint Designer is much simpler than those workflows created in Visual Studio.  And, you don’t have to bother with code maintenance or framework revs later.

When you develop workflows for Microsoft SharePoint Foundation 2010 using SharePoint Designer 2010, you follow these basic steps:

  • Author your workflow by assembling and configuring the predefined activities and conditions available in SharePoint Designer 2010.
  • Have SharePoint Designer 2010 automatically generate ASP.NET forms for workflow initiation and any custom task in SharePoint Foundation, if necessary.
  • Customize the workflow forms, if necessary.

SharePoint Designer 2010 automatically generates the workflow definition template and deploys of the workflow to the specified list.

When you are creating a workflow in a declarative rules-based, code-free workflow editor, such as SharePoint Designer 2010, you are designing a workflow for the specific SharePoint Foundation site in which you are working. SharePoint Designer provides a user interface that enables you to create declarative rules-based workflows for the selected site. With SharePoint Designer 2010, you are in effect assembling preexisting activities into workflows.

You cannot create your own activities in SharePoint Designer; nor can you write code-behind files. Using SharePoint Designer, you create and deploy XML-based markup files, rather than an assembly that contains code.

Workflow authoring in SharePoint Designer is likely done by someone other than a professional developer, such as a web designer or knowledge worker who wants to create a workflow for a specific list or document library. In this case, the designer is limited to the workflow activities on their ‘safe list’, and the workflow cannot include custom code. The workflow author deploys the workflow template directly to the list or document library as part of the workflow authoring process.

In contrast, you can use the Visual Studio 2010 Workflow Designer to create workflow templates and custom workflow activities. You can include code in your workflow, as well as design forms to be used by the workflow to communicate with the workflow users during association and runtime. It is worth noting that when you are developing workflows templates in the Visual Studio 2010 Workflow Designer, you are not programming against a specific SharePoint site. 

Workflow authoring in the Visual Studio 2010 Workflow Designer is performed by a professional developer, who is creating a workflow template that can be deployed across multiple sites, and which contains custom code and activities. The developer then turns the workflow template over to a server administrator for actual deployment and association.

But, we’re not worrying about Visual Studio 2010 right now.  Back to no-code.

It takes a while to start the workflow the first time, but once it’s there you can see the task and status, etc.  If you’re using a Visio (a great way to make your workflows awesome), you can see the diagrams from the workflow view.

Workflows implement business processes on documents, Web pages, forms, and list items in SharePoint Server 2010. They can be associated with libraries, lists, or content types.

In document management, use workflows to route documents from person to person so that they can each complete their document management tasks, such as reviewing documents, approving their publication, or managing their disposition. Also, use custom workflows to move documents from one site or library to another. For example, you can design a workflow to copy a document from one site to another when the document is scheduled to be archived.

SharePoint Server 2010 includes workflows that address the following document management needs:

  • Collect Feedback   Sends a document for review.
  • Approval   Sends a document for approval, often as a prerequisite to publishing it.
  • Disposition   Manages document expiration and disposition.
  • Collect Signatures   Routes a document for signatures.
  • Translation   Manages the translation of a document into one or more languages.
  • East Asian Document Approval   Routes a document for approval by using stamp signatures and a group-oriented consensus process.

Associate a workflow with a content type when you want to make that workflow available whenever that content type is in use. For example, a purchase order content type could require approval by a manager before completing the transaction. To ensure that the approval workflow is always available when a purchase order is initiated, create a Purchase Order content type and associate the approval workflow with it. Then add the Purchase Order content type to any document libraries in which purchase orders will be stored.

To plan workflows for your document management solution, analyze each document content type you plan to implement and identify the business processes that need to be available to run on content of that type. Then identify the workflows you will need to make available for that content.

Workflows can automate interactions among the people who participate in a process to improve how that process functions, increase its efficiency, and lower its error rate.

Many processes can benefit from automated support for human interactions. Examples include the following:

  • Approval   A common aspect of human-oriented business processes is the requirement to get approval from multiple participants. What is being approved can vary widely, ranging from a Microsoft Word document that contains next year’s marketing plan to an expense report from a trip to a conference. In every case, some number of people must review the information, perhaps appending comments, and then indicate approval or rejection.
  • Coordinating group efforts   Whether it is preparing a response to a request for proposal (RFP), managing the translation of a document into one or more languages, or something else, many processes require people to work together in an organized way. By defining the steps of the process through an automated workflow, the group’s work can be made more efficient and the process itself more predictable.
  • Issue tracking   Many business processes generate a list of outstanding issues. An automated workflow can be used to maintain that list, assign issues to the people who can resolve them, and track the status of that resolution.

Prototype workflows in Visio 2010 so you can get approval, implement them in SharePoint Designer 2010, and do more advanced stuff in Visual Studio 2010.

Thanks to the many web sources I kluged this content from as I was in the back of the room feeding my hungry laptop some power.


Author: Ynema Mangum

Ynema Mangum is an experienced, data-driven principal product manager of mission-critical composable infrastructure at HP Enterprise. Constantly curious, her passions draw her to emerging technologies. She joined HP 6 years ago as a solutions architect for private IT cloud computing. She then served as owner of the enterprise social collaboration domain at HP, responsible for its future direction. Prior to her current position, she was a senior product manager for the massive HP ConvergedSystem 900 for SAP HANA. At SUN, she was a product line manager for cloud computing, responsible for the requirements for common subsystems of the Sun Cloud, as well as user personas, industry analysis, and competitive research. Her product experience also includes building web based database management systems at BMC Software targeted at Oracle, Microsoft SQL Server, Sybase, DB2 and DB2 UDB. Y provides an invaluable hybrid mix of strategist, architect, product manager and product marketer with an unbendable passion for the user experience. Her entrepreneurial experience allows her to understand business as a whole and drives her to make decisions and execute quickly. As an added bonus, she is certified in ITIL v3 best practices for IT and Pragmatic Product Management. Ynema is a change agent. She considers herself a determined influencer and a connector whose collaborative nature ensures success in introducing new concepts and services into the mainstream -- even in the most complex environments. She thrives on doing what seems to be impossible, and enjoys taking calculated risks in her personal life -- snowboarding, skiing, SCUBA diving or wake boarding when the season is right.

One thought on “Chris Mayo, Technical Evangelist for Unified Communications”

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 )

Google+ photo

You are commenting using your Google+ 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 )


Connecting to %s