Agile methodologies have proven to be a remedy to the old and endemic problems of software development projects: delays, cost overruns and above all, not meeting the real needs of customers. The same principles can be applied when it comes to automating a workflow, and we will call it Agile Process.
Agile Processes are business processes that allow the achievement of some of the organization’s business objectives, and that are automated in a business process management system following the principles of agile software development methodologies.
In this post, we will review what are the principles and activities that support the agile methodologies of software development, and how they are applied to the discipline of Business Process Management (BPM), to automate workflows and processes.
Agile process concepts
In general, most agile software development methodologies are based on the following concepts:
- Backlog, where the tasks to be performed are listed.
- Planning, where priority is given to the tasks and the people responsible for them are assigned.
- Cards, where the tasks and their progress can be followed up.
- Construction (1 to 3 weeks, with daily “Dailies” meetings), where the tasks are actually carried out.
- Product delivery, when it is evaluated if the product is finished for the client, or a new cycle must be restarted.
- Review meeting, where lessons are drawn for the next project.
We will then map out how these concepts are applied in building agile processes.
When automating an entire process, there are several tasks that must be scheduled. The most visible is the graphical modeling of the workflow, using BPMN notation. Building such a model involves several sub-tasks, such as discussing the process with business users, agile backlog grooming, analyzing the suitability of existing tasks (or eliminating some that do not add value).
There can also be more technical tasks, such as integration of the agile process with other systems, using WebServices or Zapier. Create databases to store persistent information between processes. Connect the BPM Suite to the User Directory to have a single-sign-on (SSO).
And of course, there could be organizational change management tasks. Always remember that automating a process, even if it is done using agile methodologies, will imply a relevant change in the way people carry out their daily activities. This change must be managed to avoid rejection or a simple lack of adoption of the automated process.
Once all the tasks have been identified, the sprint should be planned, and in particular what tasks will be performed and by whom. This planning is relevant to ensure that a cycle can be completed with visible results in the time frame stipulated for the sprint.
The type of BPM Suite being used comes into play in this planning. If it is one that does not require coding (low-code / no-code BPM) like Flokzu, then the cycles can be short and the results will be visible in a short time. Not requiring software development will allow building agile workflows in a short time and with fewer errors.
This element, highly graphic and typical of agile methodologies, is applied exactly the same way when building agile processes. Simply, each card will represent a task to be performed, which will be moved through the different stages as it advances in its completion.
The effective construction of the agile process corresponds to its implementation in a business process management system (BPM Suite). This implies graphically modeling the process, deploying it, and being able to use it.
In the following illustration, a simple example is presented, with user tasks (performed by a human being), automatic tasks (such as sending an email or connecting with other systems through Zapier), as well as conditional gateways for the flow to go through one branch or another are distinguished.
In addition to the graphic design of the process presented, it is important when building an automated process to store the relevant process data. This is usually done in a form with fields. These fields can also be hidden at certain stages, made mandatory, etc.
Flokzu provides a powerful form generator, which naturally also works under the no-code paradigm, so it is not necessary to have the programming knowledge to configure it:
The use of these technologies that do not require programming, facilitates the construction of agile processes in short sprints (1 or 2 weeks). They are deployed, tested and adjusted iteratively.
Delivery of an Agile Process
When each sprint is completed, the process is delivered to the customer. This does not mean that it is the final version, but it is a version that works and shows value to the customer.
Being able to deliver many versions of the automated process in a short time (short cycles), facilitates having a lot of interaction with the client, one of the pillars of agile methodologies. Customer feedback allows us to adjust upcoming tasks and planning.
In this way, the product moves in the right direction. In contrast, with traditional methodologies, one would have waited to have the process fully implemented before showing it to the customer. And when it was done, there were notable differences with the customer’s expectations. By building agile processes with the described methodology, we ensure that the customer is involved and if there are corrections they are made in time.
Agile Workflow Review Meeting
Review meetings should be executed according to agile methodologies. After delivering the complete process to the client and that it is working, lessons should be extracted for the whole team. In this way, the team is professionalized and prepares the next agile processes to be implemented.
Analyzing the recently automated workflows, from a team perspective, will allow finding methodological improvements, as well as good practices for all the activities involved (from integrating the processes with other systems to managing organizational change).
Agile workflow automation is feasible by applying the general principles of agile software project methodologies. For this, it is key to have a low-code/no-code business process management system, which does not require programming and allows short iterative cycles. Showing results to customers generates their involvement, as well as detecting deviations and errors early.
An organization’s ability to build agile processes is usually an indication of its responsiveness to changes (market, regulatory, and internal). This adaptability is key to generate and sustain competitive advantages that allow it to survive first, and grow later.
Agende uma sessão de trabalho, onde juntos modelaremos um de seus processos até que ele esteja pronto e funcionando!