Take a moment to think about all the things you do every day in your work. You may come up with a huge list of individual tasks that are directly related to your organizational responsibilities and accountabilities. You will also come to realize that you interact extensively with your peers and direct managers.

Business Processes with Forms

If you work in a medium- or large-size company, you may also cross-collaborate with departments or groups outside of your own. All this interaction happens in many different ways. It can happen in the many e-mail messages you send and receive every day, in phone calls, during the frequent knock-on-someone-else’s door, in meetings, and in chat messages. Even when we do not realize we’re doing it, we all play roles in different business processes. We all interact and need these frequent small communication exchanges to get things done and to make the necessary decisions that keep our businesses working. However, in many cases, coordinating business processes is complicated, and employees do not collaborate in the most efficient way. Also, some business processes are quite complex in the sense that they require interaction between multiple actors and systems.

There is more to all these challenges and opportunities. While all of this out-of-band interaction takes place, we fail to update back-end systems that exist to help store information related to a business process. Sometimes we do not update systems because of all the overhead and increased work that they bring. We either get the work done or spend our time tracking metadata. Back-end systems represent a huge investment for companies, and sadly, they may be seen as overhead since they do not map to the real way that people work. In many cases, back-end systems require end users to log on to other systems to copy and paste data. The consequence: frustrated employees and slow business productivity.

Fortunately, new workflow technologies provide the option to automate and coordinate business processes. Workflows help bring together the power of human collaboration with the power of software to improve communication and task management. Workflows allow you to route specific tasks to different actors and systems. Therefore, you can streamline business processes while greatly increasing business efficiency. Additionally, workflows provide end users the ability to work productively by not requiring them to log on to all the systems in which the enterprise has invested.

The goal of this chapter is to introduce you to a new set of workflow capabilities offered by the SharePoint. You will explore different Microsoft products and technologies that you can use to build custom Office Business Application (OBA) workflow solutions. Hopefully, this chapter can help you understand how to leverage your current technology investments and think about the wide variety of custom workflow solutions and architectures that you can use to optimize the efficiency of your business processes.

Workflows

Workflows help people to collaborate on documents and to manage project tasks by implementing business processes on documents and items in a SharePoint site. Workflows help organizations to adhere to consistent business processes, and they also improve organizational efficiency and productivity by managing the tasks and steps involved in business processes. This enables the people who perform these tasks to concentrate on performing the work rather than managing the workflow.

Workflow is sometimes described as a series of tasks that produce an outcome. In the context of Microsoft SharePoint Products and Technologies, workflow is defined more narrowly as the automated movement of documents or items through a sequence of actions or tasks that are related to a business process. Workflows can be used to consistently manage common business processes within an organization by enabling the organization to attach business logic to documents or items in a SharePoint list or library. Business logic is basically a set of instructions that specifies and controls the actions that happen to a document or item.

Workflows can streamline the cost and time required to coordinate common business processes, such as project approval or document review, by managing and tracking the human tasks involved with these processes. For example, in an SharePoint site, you can add a workflow to a document library that routes a document to a group of people for approval. When the document author starts this workflow on a document in that library, the workflow creates document approval tasks, assigns these tasks to the workflow participants, and then sends e-mail alerts to the participants with task instructions and a link to the document to be approved. While the workflow is in progress, the workflow owner (in this case, the document author) or the workflow participants can check the Workflow Status page to see which participants have completed their workflow tasks. When the workflow participants complete their workflow tasks, the workflow ends, and the workflow owner is automatically notified that the workflow has completed.

The actions in the Approval workflow in this example follow the process shown in the following illustration.

Workflows not only support existing human work processes but also extend the ways in which people can collaborate and work with documents, lists, and libraries. Site users can start and participate in workflows by using customizable forms that are accessible from the document or item in a SharePoint list or library. Additionally, the workflow functionality in SharePoint is tightly integrated with the 2007 Microsoft Office system. The following workflow tasks can be performed either in an Office SharePoint Server 2007 site or directly within certain client programs that are part of the 2007 Office release:

  • View the list of workflows that are available for a document or item.
  • Start a workflow on a document or item.
  • View, edit, or reassign a workflow task.
  • Complete a workflow task.