Article: Implementing Manual Activities in Windows Workflow
While Windows workflow is an excellent framework for implementing business processes, it lacks direct support for human activities. Several approaches to solving this problem exist, but they are not generic enough for general usage. Boris shows a completely generic implementation of human activities in WF, using a work queue manager as a decoupling layer between workflow engine and human activity execution:
This is a centralized service keeping track of all tasks for all of the users of the system. Any workflow (or a service/application containing workflow), which requires a human activity, invokes a custom workflow activity, which submits the request to the work queue manager persisting them and allowing other components of the system to work with these requests. By doing this a work queue manager is becoming a decoupling layer between workflow engine and human activity execution, thus providing support for the cases where user is not present in the system during workflow execution. Also by being a centralized service a work queue manager allows to combine all of the tasks for a given user, regardless of the process that they have initiated from. Because different user tasks can require different input information and can produce different outputs, communications between workflow and human activity is XML in and XML out, which allows processing any possible request and response generically.Boris elaborates on the internals of the whole system, highlighting important design decisions and the rationale behind them. Check out the full article for more information.
Great article!
by
Julien Jacobs
We are working on a project involving workflows and lots of human activities, and this article re-enforces what we started to put in place.
Is there any plan for publishing the source code?
Source Code
by
Tobias Hertkorn
thank you for this excellent article. I really enjoyed it.
Like julien I would be very interested in the source code as well. Could we have some feedback if a release of the source is possible or if we have to implement it ourself.
Tobi
Superb!
by
Haris Sheik
It's the Humans Stupid!
by
John Reynolds
Very Helpful!
by
Derrick Bell
Excellent Article
by
Gustavo Marotta
Great article
by
Shirvan Noormohammadifar
It will be helpful to see the source code for this if possible.
Tanx
Would like to now more..
by
Sharad Patel
Many thanks,
Sharad
Educational Content
Clojure in the Field
Stuart Halloway May 23, 2013
Tuning the Size of Your Thread Pool
Kirk Pepperdine May 23, 2013




Hello stranger!
You need to Register an InfoQ account or Login to post comments. But there's so much more behind being registered.Get the most out of the InfoQ experience.
Tell us what you think