Process Automation Tools and Techniques
There are many ways to automate processes, from plain software development to batch processing, event-driven microservices, and any other development practice you can think of.
But automating processes has specific characteristics & requirements, and there is dedicated software built for addressing these. Analysts define different software market categories that are related to process automation: for example, digital process automation (DPA), intelligent business process management suites (iBPMSs), low-code platforms, robotic process automation (RPA), microservice orchestration, process orchestration, process monitoring, process mining, decision support, & automation.
All the different software categories provide tools & technologies that allow organizations to coordinate, automate, and improve business processes. These processes can include people, software, decisions, bots, and things.
That’s a broad scope. So what will we focus on in this book?
The Scope of This Book
This book looks at how process automation can be applied in modern system architectures and software development practices. It examines how tool support needs to look like to become a vital part of every developer’s toolbox. It demonstrates that the core component to make this happen is a lightweight and developer-friendly workflow engine, which will be explored in great detail throughout the book.
Along the way, we’ll discuss some typical misconceptions. Workflow engines are not alien in software development, like some people may expect. And even if neither analyst reports nor tools from big vendors are particularly developer-focused or developer-friendly, there are alternative tools available today, as you will see throughout this book. Some of these might not fit into the categories mentioned earlier, but others do.
That said, I will not dedicate a lot of time to what analysts say about process automation software, but focus on giving practical advice about workflow engines in the context of software development in modern architectures. In this context, I will weave together ideas from microservices, event-driven systems, and domain-driven design.
This might give you a new perspective on process automation.
Who This Book Is For
This book targets software developers and software or system architects who want to learn about process automation.
If you are a software developer, you might want to use a workflow engine in your application, service, or microservice to solve hands-on problems. This book will help you understand which problems a workflow engine can solve for you, and how to get started.
If you are a system architect, this book will help you understand opportunities and pitfalls around process automation. It will guide you through some tough architectural decisions and trade-offs, including how using a workflow engine compares to alternative approaches or whether a workflow engine should be operated centrally.
But you can also benefit if you work in other roles. For example:
- If you are an IT manager, this book can help you make better-informed decisions and ask the right questions internally.
- If you are a business analyst, this book can help you if you are motivated to think outside the box and understand the technical side of things.
Overall, you will need some general experience in the field of software engineering, but no other specific knowledge.