In the modern world of remote/hybrid employees and virtual meetings, organizations are quickly discovering that in-person engagement with employees – and even customers – is no longer a guarantee.
This is essentially the final nail in the coffin for paper forms and paper-based processes like applications, contracts, expense reports, purchase orders, and service requests.
Paper was always a poor solution for collaborative workflows. It always starts off blank, never remembering who you are. It always shows the same information to all viewers – no privacy or security there.
It cannot tell you when you are doing something wrong and conversely cannot help you do it right. Paper relies on you to route it to the right people and make photocopies when you need to share it with more than one person.
Creating Real Workflows
Many organizations – and software companies – have tried to replicate the workflow of paper by turning paper forms into digital documents – sending them from person to person, from stack to stack, to recreate the comfortable and familiar inbox of paper sitting neatly on the desk, waiting for the start of the next business day.
Whether it be the conversion of a paper document to a fillable PDF, or even an online data collection form with an approval workflow tacked on, routing submissions to approved or rejected stacks, these solutions fundamentally miss the mark.
Workflow is about meaningfully engaging people in collaboration around data to achieve a goal. Each person plays their part in this story, performing different tasks at different times, or even at the same time, using and updating the information they are responsible for, to cross the finish line together.
A real workflow:
- Allows participants to view and modify the right information at the right time based on who they are
- Lets multiple people participate at the same time
- Captures clear decisions from participants, not just information
- Ensures the appropriate information exists to support these decisions
- Notifies participants when it is time for them to do their part
- Triggers meaningful outcomes based on the decisions people make
- Allows workflow coordinators to quickly understand how the workflow is progressing and assist when needed
Let’s consider a simple example of a real workflow:
- An employee submits a time off request, requiring them to enter the dates and a reason
- The employee’s manager receives a notification asking them to approve or reject the request
- The manager makes the decision to approve or reject the request
- If the manager rejects the request, they must also enter a reason for making this decision
- While reviewing requests, managers cannot change the reason or dates of the request
- Employees receive appropriate notifications when their requests are either approved or rejected
- Employees see why a request was rejected and decide to either resubmit or cancel the request
- Employees may also decide to modify or cancel an approved request if their plans change
- Approved requests automatically appear on an employee’s calendar and any updates to requests update or remove these calendar events
- Human resources monitors the entire process, making sure requests are approved on a timely basis, and ensuring employee records are up to date
As you can see, even simple real-world workflows can end up being pretty complicated. As the diagram shows, you have two participants in the workflow, the employee and the manager. You have four states the request can be in (not including the initial state, of submitted, rejected, approved and cancelled). The employee can decide to submit, modify, or cancel requests at different phases of the process. The manager, in turn, can reject or approve submitted requests. All of these decisions may create, update or remove an event from the employee’s calendar.
When we set out to support real workflows in Cognito Forms, we considered hundreds of both simple and complex workflows in our own lives, and the lives of our many customers, to ensure that we would be empowering you to easily build powerful workflows. This means we had to make it easy for you to model workflows like the one above on your own forms and really harness the power of our forms, calculations, condition logic, notifications and integrations to build solutions specific to your needs. This meant that workflow had to be tightly integrated into the form building process itself, not a tack-on approval process or afterthought workflow add-on.
We achieved this by breaking down workflow into three key concepts: workflow roles, workflow statuses and workflow actions.
Real workflows must adapt to the different types of people participating in them. In the example above, employees and managers have different responsibilities in the time off request process and must see and update different information to complete these tasks. While you could always conditionally show fields internally in Cognito Forms, you could not fully customize the experience for multiple types of people interacting with your forms.
Workflow roles address this need by allowing you to easily specify named roles for each type of person participating in your workflow, and then tailor the form experience to their specific needs.
Any time users interact with your forms, you will always know their role in the workflow process, allowing you to conditionally show fields, make fields read only, make fields required and even control what decisions users can make based on their role. The role of the user is available for all calculations and conditional logic, so you can customize virtually every aspect of your forms.
While workflow roles address the need to customize workflows based on who is participating, they do not represent phases or steps in your workflows. As you can see in this simple example, an employee may participate at multiple points in the process, to create the initial request, modify approved or rejected requests, or even cancel requests at any point in the process. While your forms have always had entry statuses to distinguish between submitted, reviewed and completed entries, you could not customize these statuses to reflect the actual state of your workflow process.
Workflow statuses address this need by allowing you to customize statuses for your forms, so you can easily track what phase of the workflow process they are in—and again—fully customize your forms based on this invaluable information.
As you can see, we also allow you to assign colors to statuses to quickly visually understand the state of your workflow for your form entries when you manage them. However, the real power of workflow statuses lies in the ways in which your form controls how entries flow from one status to another. You can now intentionally track the decisions users make when they participate in workflows by directly changing the status or you can automatically assign a status when certain conditions are met on your form. The later option is really important for multi-party processes, like parallel approvals, allowing you to change the status automatically once everyone has done their part.
While workflow roles and statuses are powerful concepts in and of themselves, they only answer the questions of who is filling out a form and what stage or state the form in is, not why the user is making changes. Real workflows must capture clear decisions from participants and ensure appropriate information exists to support these decisions. In the time off request example, managers may decide to approve or reject a request, and must provide a reason when rejecting. While you could add a manager approval status field to your form and conditionally require a rejection reason field if the status field is set to rejected, this is cumbersome and does not make it clear what is actually happening when the manager clicks Update to save their changes.
Workflow actions fundamentally address this confusion by allowing you to define concrete actions users may perform to save changes to forms, essentially replacing the lone Submit/Update button on your form with a completely customizable set of buttons that control the submission behavior for your form.
For each action you define, you can:
- Name the action and customize the button text
- Conditionally decide when the action should be available
- Specify a confirmation message that is appropriate for the action
- Optionally specify the workflow status the entry should transition to when users perform the action
- Specify what emails to send when users perform the action
- Optionally clear fields on your form when users perform the action
This ties everything together. Now, when a manager is reviewing a submitted time off request, they see two clear options—think buttons—to either Approve or Reject the request. If they decide to reject the request, the form can automatically show and require a rejection reason before proceeding. When they reject the request, the confirmation message can clearly state that the request is now rejected based on their decision and the employee will receive an email letting them know their request was rejected and why, allowing them, in turn to continue the workflow. And the entry will now be in the Rejected status to ensure human resources understands the status of the request when they review time off requests for all employees.
Referring to the diagram of our workflow example from earlier, you can see that our form now fully reflects the roles of the different participants, the statuses a request may be in at different stages, and the actions workflow participants may take to move the workflow along.
And before we leave the topic of workflow actions, there are two more important aspects to point out. As we said, real workflows must notify participants when it is time for them to do their part and triggers meaningful outcomes based on the decisions people make.
Addressing this first point, when you define emails to send for your actions, you can now specify the role of the recipient. This automatically gives email recipients the ability to view the form in this role and continue the workflow. In the case of the rejection email sent to employees, the recipient will be assigned the Employee role, allowing them to quickly resume the workflow directly from this email notification.
Addressing the second point, when users perform actions on your forms, like the Submit, Approve, Reject or Cancel actions in the time off request example, the action they perform will be sent to integrations like Power Automate or Zapier. This allows you to do some pretty amazing things, like create a calendar event when a request is approved and automatically removing the event when an approved request is later modified or cancelled. Because you know what decision was made (the action) to cause the integration to trigger, along with the current status of the entry and the role of the user, you can quickly and easily customize your integrations to ensure your workflows result in meaningful outcomes.
At this point we have discussed how Cognito Forms empowers you to easily build powerful workflow forms that address the first six requirements of real workflows. Now, let us consider the seventh and final requirement—allowing workflow coordinators to quickly understand how the workflow is progressing and assist when needed.
In an ideal world, when someone initiates a workflow, the actions they take will automatically engage others in a seamless fashion until the overall goal is accomplished. In the simplest case for a time off request, an employee submits a new request, and the manager immediately approves it—case closed. However, given that things are not always so easy, and given that some workflows may require a bit of supervision, we also made a number of significant changes to entry management to empower workflow coordinators to initiate, manage and complete workflows with ease.
First and foremost, all entry views now allow you to specify a role, thus allowing you to control how forms appear—and what actions users may take—when managing entries:
This means that when managing entries, you will be able to perform actions appropriate for each entry, based on the role of the view and the status of each entry:
And to streamline entry management, the cumbersome Edit button is now gone and you can immediately start updating and taking action on entries as soon as you select them in the list. You can still create read only entry views by configuring the entire form to be read-only (another new workflow feature) for a specific role, and users with Reviewer permissions will always see the read-only version, but eliminating the requirement to click Edit makes it much easier to quickly review and take actions of entries.
Also, in many cases with workflow, entries may be partially or entirely read only in these views anyway, due to workflow settings, where the actions themselves are the primary means of moving things forward, as in this example for submitted time off requests. Since employees are responsible for modifying their own requests, the entry is read-only for managers and human resources (the workflow coordinator).
Another significant change is you can no longer change the status of an entry by simply picking a new one from the list when viewing an entry. Workflow occurs as a result of decisions made by workflow participants, which means actions are the preferred way to trigger status changes for entries. You can still use the Actions menu to changes statuses when absolutely necessary, but status updates no longer have any side effects, and will not send emails, trigger notifications, or otherwise do anything besides change the status.
While status changes, including bulk status changes, no longer trigger emails and integrations, the Actions menu shown above now includes the workflow actions defined for each form. This allows workflow coordinators to perform the same action against hundreds or thousands of form entries in a streamlined way. The actions will only be performed when they are allowed, thus ensuring the integrity of the overall workflow process.
All of these changes together empower workflow coordinators to build entry views representing each stage in the workflow process, quickly review form entries progressing through workflows, and easily take action when necessary to keep things flowing smoothly!
We built Cognito Forms to help people connect in a meaningful way using data to help drive the conversation. For us, releasing these amazing new workflow capabilities is both an important milestone on our journey and a big step forward in our vision for making these connections possible. While these new capabilities significantly change the way you will use Cognito Forms, we also believe that these deep integrated changes were necessary to provide a cohesive and comprehensive workflow building solution.
Try out our new workflow-infused templates to get a hands-on jumpstart building workflow forms for your organization and definitely check out our workflow help guide for more information!
We are so excited to get these powerful workflow capabilities into the hands of our amazing customers. We cannot wait to see what you will do with them!