Docuvela Blog

Sharing our knowledge and experiences with the content services community

Content Services Workflow: 5 Best Practices

Aug 14, 2023 | Best Practices, Content Services UI, Workflow | 0 comments

Image by Freepik

Along with Search, Folder/Document Viewing, and Adding Documents, Workflow is often a critical component of a Content Services application. Workflow quickly increases the complexity of the user interface. When setting up an application that requires workflow, it is important to minimize impacts of workflow to the user experience to ensure that users still find interaction with the application is intuitive and improves their overall productivity.

What is Workflow

Before diving into the best practices, we should define what we mean by “workflow”  in a Content Services application. Oxford Dictionary defines workflow as:

The sequence of industrial, administrative, or other processes through which a piece of work passes from initiation to completion.

The term “workflow” can be applied outside of an application as well.  For instance, consider the process a homeowner goes through to build a new patio.  The homeowner must procure a contractor, make a down payment, submit permitting applications to the city, etc.  This process could be described as the “workflow” necessary to build out the patio from concept inception to completion.

However, what we are describing here is a prescribed business process.  These processes are typically created using the Business Process Model and Notation (BPMN) format and then deployed to a Business Process Management (BPM) tool within the overall Content Services suite.  We have seen two broad categories of these workflows:

  1. Review and Approval Workflow – review and approval workflows are utilized to control the review and approval of one or more documents.  Typically these documents have a lifecycle assigned that describes the various states that the documents move through – Draft, Pending Approval, Approved, Effective, etc.  These lifecycle states are controlled by the participants in the workflow, and these state changes typically alter the security on the documents.
  2. Business Process Workflow – business process workflows describe a process within the organization where more than one person or group needs to coordinate to accomplish a desired outcome.  These workflows may or may not have documents or folders attached to them, and often require reaching out to other systems.  Large companies have hundreds or thousands of these types of workflow processes, and likely most are informal and not controlled within a Content Services application.  These processes are typically the most critical due to their influence on the company bottom line.

Why is Workflow Important to Get Right?

So why is workflow important to optimize in a Content Services application?  Obviously, given the definition of workflow we outlined above, workflow processes usually define a mission critical or regulated process that must be followed.  However, from the user’s perspective, the Content Services application typically comprises one of many tools that they use to complete their job.  Given the critical nature of the overall outcome, users utilize the application as intended in two circumstances:

  1. The user is forced to use the system – typically due to regulatory oversight (ex: FDA for a Life Sciences organization).
  2. The system helps the user achieve the desired outcome more efficiently than other methods.

The second point is most critical here.  If the system doesn’t make the user more efficient, the user may then find alternative ways to achieve the desired result.  We have seen poorly implemented workflow systems result in frustrated users who resort to email, physical or remote conversations, and other methods to work around the system to complete their job.

Which leads us to our best practices.  These best practices are gleaned from working with many customers over the past 25+ years and all strive to ensure that users are getting the most out of the system and organizations are achieving their goals in the most efficient way possible.

Best Practice 1: Sometimes Workflow Templates Aren’t Needed

It may seem odd to start here given this post’s topic, but when clients are analyzing a given business process, we recommend asking the question: is a traditional workflow process template even needed?  In some cases, designing a workflow process template, deploying it, and then expecting users to utilize it is simply overkill for what the business actually needs.  In these cases, simple metadata properties defined in the content model can be leveraged to provide workflow-like functionality.  Dashboards and saved searches can be utilized to alert users when a document is assigned to them and ready for processing.  Some examples include utilizing status and assignment properties to control the user’s overall flow.

Status-Based Flow

In this case, a property is assigned to the document to indicate status.  For example, options could include: New, Open, Review, Released.  The application dashboard would have dashlets that display documents in particular status and a user in the “quality assurance” group may see a dashlet with all documents marked for “Review”.

The quality assurance user would then review the documents, and after their review is complete, they would change the status to “Released”.  This action would remove it from the dashlet queue and could optionally perform other automatic tasks like sending email notifications or changing security based on the property change.  

Additionally, certain users, based on group assignment, may have automatic filters applied when running searches that only allow “Released” documents to return – limiting them from seeing documents in other statuses.

Assignment Flow

A property is assigned to the document to indicate who it is assigned to.  Application configuration may control the list of users for assignment based on application context.  For example, when looking at a claim document the list of possible assignments would be limited to claims adjusters in the document’s region.

Similar to the status flow above, dashlets and saved searches are utilized to indicate assignment.  For example, one dashlet could be used to list documents that are not assigned, and a separate dashlet would list documents assigned to the logged-in user.  When a document is assigned to a user, the user sees the document in the appropriate dashlet, and they perform the necessary tasks. When finished, the user changes the assignment to the next appropriate user.  Repository actions could automatically notify the new assignee via email if necessary.

When the overall process is finished, a status attribute can be changed to a value such as “Complete” to ensure that the document does not return to the “unassigned” dashlet.

Bottom Line

When evaluating this “no-template-needed” approach to workflow, there are some caveats to keep in mind:

  • Users involved in the process need to be in the system as part of their job.  If the Content Services system is tangential to what users do on a day-to-day basis, this approach may not work.
  • Users need to be intimately familiar with the process and what is expected.  They need to immediately know what statuses and/or assignments to set on the documents.  Otherwise, tasks will get lost or stalled.
  • Complex conditionals and other automated processes aren’t possible with this approach.  

However, using this property-based approach to workflow can be an easy, flexible, simple win for processes where a complex BPM workflow is overkill for user needs.

Best Practice 2: Design Workflows with Dynamic Templates

If a workflow is needed, the first step is to design a process template, typically using the BPMN format.  There are various model designer tools available, and most modern BPM tools provide their own model designer that will generate BPMN templates.

When designing templates, we would recommend making them as dynamic as possible by utilizing input variables and process flow to handle multiple situations.  In other words, don’t simply design a template for each and every business process.  Instead, design templates that can be flexible for multiple business processes.

One good example of the above concept is the Alfresco Content Accelerator (ACA) Policy and Procedure Management accelerator.  The Route for Approval process is a single workflow template that is designed and deployed once, and then business rules are evaluated to determine the steps in the workflow, the number of approvers, whether or not groups or individuals are required, etc.  There are a few limitations.  One notable limitation is that any “reject” action in the workflow stops the entire process – there is no option to send a task back to a previous step.  However, by utilizing a dynamic template approach, new processes can be updated by reconfiguring business rules without needing to design and deploy a new process template each time.  

The lack of design and deployment that a dynamic template enables can be extremely valuable for business organizations deploying and modifying new workflows without requiring assistance from IT designers and developers.

Best Practice 3: Make It Easy to Start the Workflow

When starting the workflow, ideally the system should smartly make decisions about the correct workflow process template to use based on the user’s context.  At a bare minimum, the system should smartly limit the available templates and should not simply display a list of all available templates.  When selecting users, the application should again take context  into account.  For example, when starting an approval workflow for a procedure at a nuclear plant, the interface should correctly know to only display approvers for a given plant based on the document(s) being routed.

Best Practice 4: Ensure Clear Visibility – Workflow Should Not be a “Black Box”

Clear visibility to the workflow should be apparent at all stages of the workflow process.

When setting up a workflow, the initiator should clearly know what the overall process will entail as well as who will be assigned to various tasks.  The goal here is to reduce process errors at the earliest possible point.  When errors are noticed downstream, the time loss is magnified since the process will likely need to be stopped and restarted, re-sending tasks that have already been completed.  If it is clear how the process will flow and who (or what roles) will be included in the process, then the initiator can easily make changes up front if something looks incorrect, avoiding time-loss issues when errors are noticed downstream.

When a user receives a task, the task details as well as why the user received the task is very helpful.  The task details typically include the task name, description, process name, date received and due date.  Providing the “why” to the task recipient can be challenging, but important for complex workflows.  In the ACA Policy and Procedure Management accelerator, this is accomplished by including the routing form in the package, which details the business information rules that led to the user being selected.

Most systems will indicate somehow that a document is currently in a workflow.  Additional details and clarity should also be provided as well.  It should be easy for a user to see who is currently assigned to the document, who has completed a task and when, as well as who is upcoming in the process flow.  This will help identify any bottlenecks or roadblocks that may be holding up the workflow.

Best Practice 5: Provide Features to Ensure Workflow Doesn’t Get Stuck

Continuing from the previous best practice, it’s important for the system to provide features which prevent or minimize any workflow bottlenecks.  Some examples include:

  • Task Delegation – the system should provide a way for a user to delegate his/her task to another user.  During this process, it’s important for the system to smartly show a list of users authorized for the task, rather than simply allowing for a list of all users.
  • Task Reassignment – the system should allow for certain power users to reassign tasks from one user to another.  This feature is similar to delegation, except that here a user is reassigning someone else’s task to a third person.
  • Inbox Proxy – similar to your email “out of office” reply, it’s important for workflow systems to provide for an inbox proxy if a user will be on vacation or unavailable.  Prior to leaving on vacation, a user should be able to proxy his/her inbox to another user so that workflows are not piled up and stuck while the user is unavailable.
  • Task Reminders – the system should allow for configurable notification reminders to be sent for tasks that are not completed in a certain amount of time, which will depend on the process requirements.  Reminders can be in-app notifications, emails, or a combination of both.
  • Escalations – One step beyond reminders would be automatically escalating tasks after a certain configurable amount of time.  Escalation works like a task reassignment, except that it is automated and typically reassigns the task to the assignee’s manager. While escalations are frequently requested, they are rarely used in practice since it requires integration with a master HR system or the tedious step of maintaining reporting structures in the content services application.

Summary

Workflow within a Content Services application typically powers important business processes that involve multiple stakeholders and user roles throughout the organization.  Since these workflow processes are often mission critical and potentially regulated by oversight agencies, it is critical that the Content Services workflow interface keeps the users happy and efficient while working through workflow processes.

Let us know your thoughts below or comment on LinkedIn.  We’d love to hear from you if you would like Docuvela’s assistance with your Content Services applications.

0 Comments

Leave a Reply

Discover more from Docuvela

Subscribe now to keep reading and get access to the full archive.

Continue reading