Workflow Anti-patterns

Workflow Anti-patterns - what NOT to do

What is an anti-pattern?

An anti-pattern is a technique, process, or workflow that is intended to solve a problem, that often leads to other problems or introduces inefficiencies into the process.  Designing workflow for business operations, by its very nature is usually an iterative process, with the workflow evolving organically over time as new concepts, business rules and requirements are introduced.  Sometimes a workflow may start as a clean, efficient process - serving the needs of the business or task at hand, however, over time, it may lose its efficiency and start behaving as an anti-pattern.

A key principle to avoiding a bad design is to regularly review what you have built.  Get feedback from the team, run reports, and re-visit workflow when business needs change.

The following list is a general guide of some of the more common things that can affect workflow efficiency.

Too much granularity / complexity

Don’t overcomplicate a process.  As Albert Einstein once said, “Make things as simple as possible, but not simpler”.   Don’t add unnecessary workflow objects just because you can.

Too big too quick - don’t try to boil the ocean

Don’t take on too much at once.  Start small and grow in terms of process mapping, complexity and maturity.  Remember that people will take time get used to the new processes and workflows.  Going too big too fast can be overwhelming and get people off-side.  Start with a relatively simple process and get people using that with good success. 

The mother of all workflows

Don’t build a workflow that incorporates every conceivable option or process.  It will look intimidating, and be hard to use.  Consider splitting large, complex workflows into smaller parts, with discrete functionality and scope.  Remember that you can always swap-out a workflow at any stage, which means if the current workflow you’re using is no longer relevant, switch to another, more appropriate workflow.

Message box madness

Message box spam.  Don’t bombard people with too many message boxes or decision points.  Only display what you need, and minimize their use.  Consider using script-based decisions, or job-field based decision to progress a workflow rather than prompting the user to make a choice.  If it can be automated, just use that.

Give people time to adjust and figure it out

Even is a workflow within HelpMaster has been configured from existing business practices and process, it may take time for people to adjust to working with the workflow as it is presented in HelpMaster.  The user interface, the controls, the tooltips, history etc.  all take time to learn, understand and use.

Infinite loops and Circular processes

Circles within circles.  It is possible to build workflow that doubles-back on itself, potentially causing an infinite loop of process logic.  This is not necessarily a bad thing - in fact, some processes are circular by nature, and only exit the loop upon certain conditions.  Be mindful of potential closed loops that have no way out.

Over-notification

Notification fatigue can occur when too many emails, notifications, prompts or alerts are sent to people.  With workflow, it’s possible to configure all of these things.  Get the balance right to avoid people turning off altogether.

Too many jobs

Jobs for the sake of jobs.  Tickets for the sake of tickets.  Workflow objects can create other jobs, which can in-turn create jobs… It’s a powerful feature within HelpMaster to create jobs via workflow - just be careful that it doesn't take over!  Create just as many jobs/tickets as you need….and no more.

Automated chaos

Beware of the automated chaos.  Sometimes you can just be too tricky for your own good.  When automation kicks in, sometimes things will happen that you’re not expecting, or not even aware of.  Take time to audit and document.  Understand your processes and the trigger points for automation.  Communicate this to the team as well.

See Also

Workflow Overview

Workflow concepts