We’ve recently completed our initial effort that successfully implemented the Active Wizard’s dynamic workflow with the Activiti workflow engine embedded in Alfresco 4.0. The Active Wizard has supported Documentum workflow since 2002. For this new effort, we re-examined some of the fundamental concepts behind the Active Wizard’s dynamic workflow. This post will overview those concepts, and how the Active Wizard’s dynamic workflow is different than a typical “dynamic” workflow template. One best practice we have seen at multiple clients is to leverage forms AND workflow. Especially in the case of controlled document processes, a form needs to be created along with one or more attached documents to explain to the user what they are approving. In this post, we will discuss the use of forms for dynamic workflow.
Most ECM workflow tools achieve dynamic workflow through allowing administrators to define business rules within the workflow template. In other words, you can define a rule in the template that says “if property x is y, go to Activity A” and “if property x is z, go to Activity B”. While this is a definite upgrade over a static workflow template, we’ve seen some limitations with these types of workflow processes:
- If a particular form has a business process that doesn’t fit into an existing template, a new template definition must be created.
- All workflow templates require IT assistance to create and manage the template. If business rules change, IT involvement is required to make any necessary template updates.
- For a particular form instance, the workflow runtime is limited to the constraints within the workflow template itself (more on this below). There’s no opportunities for “one off” processes that do not fit the template.
Active Wizard Dynamic Workflow
The Active Wizard takes dynamic workflow a step further – there are no approval workflow templates defined at all. A component within the Active Wizard’s administration module allows business users to define workflow rules based on the user’s answers to questions within the form. When the approval workflow is started, the Active Wizard evaluates the rules and generates a workflow template on the fly. For our IT readers out there, don’t worry – these templates are cleaned up nightly so that the repository is not littered with unused templates.
The Active Wizard’s approach to dynamic workflow includes all of the benefits of a dynamic workflow template, but it also provides the following benefits:
- The workflow rules can be configured by a business Subject Mater Expert (SME). The IT department does not need to be involved to create templates or modify them when business rules change. This can be key when dealing with a lot of forms. One of our clients has over 400 forms, each with a potentially different workflow process!
- Some of our clients have requirements that certain users can modify the workflow before starting it for a particular form. Typical requirements can include reordering tasks, splitting out tasks, adding new tasks, and removing tasks. Since the Active Wizard doesn’t rely on a workflow template, we can enable all of these requirements by manipulating our rules XML before generating the template and starting the workflow. These requirements are extremely difficult for a template-based solution to meet. If your business process doesn’t allow for this type of flexibility, the functionality can be disabled, forcing the user to abide by the rules evaluation results.
In our experience, we’ve found that the Active Wizard’s approach to dynamic workflow is much more flexible, especially for systems with many forms, oft-changing business requirements, and/or systems dealing with Change Request. These solutions typically have very complex requirements that are better suited to the Active Wizard’s workflow method.