LogoASPAlliance: Articles, reviews, and samples for .NET Developers
Overview of Enterprise Human Workflow Tools
by Grant Zhang
Average Rating: This article has not yet been rated.
Views (Total / Last 10 Days): 52336/ 135

Workflow and Workflow Management System

The Workflow Management Coalition ( defines workflow as the automation of a business process, in whole or part, during which documents, information or tasks are passed from one participant to another for action, according to a set of procedural rules.

Workflow itself is the process that is automated.  A work item or data set is created then is processed and changed in stages at a number of processing points to meet business goals.  Most workflow engines can now handle very complex series of processes.  Workflow normally comprises a number of logical steps, each of which is known as an activity.  An activity can involve manual interaction with a user or workflow participant, or the activity might be executed using machine resources.  Delivering work to users does increase efficiency.

A workflow management system defines, creates and manages the execution of workflows through the use of software.  It can interpret the process definition, interact with workflow participants and, where required, invoke the use of IT tools and applications.

K2 Workflow Examples

We need to understand what the workflow is before we understand what workflow system can do.  Instead of jumping into the tools and features of the directly, I would like to give a few workflow examples first.  The examples here are fairly simple and straightforward.  Some more complicated workflows include things such as creating and assigning tasks or open issues in SharePoint.

Example 1

·         A user accesses the purchase request web-form to request a new wireless mouse.  One of the fields on the form is the "category."  The category field is a drop-down field with options like software, hardware, publications and services.  The user selects hardware as the category. Once all the fields are filled in, he submits the form.

·         After the form is submitted, the 2003 server evaluates the category field.  If the field is either Hardware or Software, the Purchase Request is directed to the IT Department.  If it is one of the other categories, it will go straight to the user’s manager for approval.  In our wireless mouse example the request goes to the IT Department.

·         The IT Department receives the request.  They need to verify whether the requested item is available as stock within the company.  The responsible IT person will access his Work list (in the 2003 Workspace or smart form) and indicate if the item is available in-house or not.  If it is available, the workflow will be redirected to the hardware warehouse keeper; he can deliver the item to the requester and indicate by web form that item has been delivered.  This completes the process. However, if it is not available then the workflow will be redirected to the user’s manager; he may be notified by email and then he can access the purchase request on his work list.  The manager is also presented with a web-form that gives him the opportunity to either accept or reject the purchase request.  If he decides to reject the purchase request, he has the ability to enter a reject reason on the web form.  The reject reason will be included in the notification e-mail that is sent to the user that requested the purchase.  If the manager accepts the purchase request, the user will receive a notification e-mail informing him that the purchase request was accepted.

·         If the manager declines the purchase request then user will be notified, thus the process is complete.  If the manager approves the purchase request, the user will be notified and at the same time a work item will be assigned to the hardware purchase person.  After he purchases the item he can indicate his work has been finished.  The hardware distributor will have the work item.  After he finishes his work item, the process is completed.

The benefit of using workflow as the business solution is that once a request is initiated the work item will automatically be routed.  Meaning, everyone involved has to finish his work item before the process can move on then everyone's work is recorded automatically in the process and (optionally) can be recorded in other databases.

Note a WebForm (SmartForm) is used to initiate the K2 workflow.  Similarly an InfoPath form can be used here to initiate a process.  After the user fills up the form, he can submit the form and it will create a new K2 process.  It will do the same thing as in the above example.

The powerful drag and drop workflow design environment is shown as follows and the code behind can be C# or Visual Basic .NET. and looks like they are in Visual Studio .NET.

Figure 1




Example 2

A K2 workflow has been set up to monitor a SharePoint document library.  The insert and update events of this document library have been chosen to initiate the workflow process.  If a user uploads a vacation request form to the SharePoint library, a process will be initiated and a work item will be sent to manager for approval.  If a user uploads a training request form, the same thing happens and a work item will be sent to both the manager and HR training coordinator.  For the vacation request, the manager receives an e-mail that has been generated automatically by the K2 workflow.  He can simply click the link in the e-mail and a SharePoint site is opened.  He can view the request document and then either approve or reject the request.

Here K2 can use SharePoint event to initiate a new process without any programming required. 2003 Architecture overview

The Enterprise Workflow Server n-tier architecture ensures that the Enterprise Workflow Server grows with an organization.  The ability to distribute work items across LAN, WAN and the Internet ensures that everyone receives their work on time. 

The use of a relational database management system to contain work items ensures that the data store can grow as demand and volume increases.  The use of operating system services guarantees that the processing capabilities of the Enterprise Workflow Server grow with the load allocated and that the system management is optimized. 2003 Studio

Developers use 2003 Studio to develop workflow applications.  It is a powerful drag and drop workflow design environment with code behind.  It supports C# and Visual Basic .NET.  Just like developing in Visual Studio .NET, you can use web services and all the .NET Framework class libraries in 2003 Studio. 2003 Studio comes with 2003 Templates.  They are user friendly wizards which automate the task of authoring common workflow steps.  They allow users to create these workflow components without the need for programming.  The templates include wizards for Microsoft Exchange, Microsoft Office, Microsoft InfoPath, Microsoft SharePoint Portal Server 2003, Microsoft Content Management Server, Microsoft Commerce Server and Microsoft BizTalk Server.  They make the integration with Microsoft software very easy. 2003 Service Manager

The 2003 Service manager is the component that is used by workflow administrators to manage the 2003 server environment, together with the solutions and processes that are hosted on the server.  The System Manager is a Microsoft Management Console (MMC) snap-in which provides administrators with a familiar management interface.  It can be used to start and stop a process, manage user permissions, redirect a work item to another user, etc. 2003 SmartForms

The 2003 SmartForms are ASP.NET forms with workflow enabled controls on them.  To users, they are just like normal WebForms.  For developers, they are WebForms that can exchange values with the K2 process.  In other words, the values in the web form can be detected in the workflow and can change the routing of the process. 2003 Workspace 2003 Workspace empowers people to manage and track workflow tasks.  It reports on the activities in the enterprise.  You can view the process routing and approval status, as well as the comments in the workspace. 2003 Server 2003 Server provides a highly scalable, reliable and secure platform for human-to-human and human-to-system business processes.  It serves as the workflow engine and does behind-the-scenes processing.  It uses Microsoft SQL Server as its underlying data store, providing a robust and highly scalable platform.

Programming Object Models 2003 has provided programming object models for developers.  It has object models for runtime, for studio, for building and managing workflows, and for reporting.  For example, a developer can use the object model to create applications for out of office redirecting work items and to create applications to show all the work items for a specific user.

Conclusion 2003 is the current leading-edge workflow development environment for Microsoft platform.  It can closely and easily integrate with Microsoft software, such as SharePoint Portal, InfoPath form and Office.  The developers can leverage their knowledge in .NET, C# or Visual Basic.

Product Spotlight
Product Spotlight 

©Copyright 1998-2022  |  Page Processed at 2022-08-15 8:29:36 AM  AspAlliance Recent Articles RSS Feed
About ASPAlliance | Newsgroups | Advertise | Authors | Email Lists | Feedback | Link To Us | Privacy | Search