Orchestration and Integration in Microservices and Cloud Native Architectures
Bernd Ruecker

#Automation
#Microservices
#Cloud_Native
#BPMN
In today's IT architectures, microservices and serverless functions play increasingly important roles in process automation. But how do you create meaningful, comprehensive, and connected business solutions when the individual components are decoupled and independent by design? Targeted at developers and architects, this book presents a framework through examples, practical advice, and use cases to help you design and automate complex processes.
As systems are more distributed, asynchronous, and reactive, process automation requires state handling to deal with long-running interactions. Author Bernd Ruecker demonstrates how to leverage process automation technology like workflow engines to orchestrate software, humans, decisions, or bots.
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.
Bernd Ruecker is a software developer by heart and has been innovating process automation deployed in highly scalable and agile environments of industry leaders such as T-Mobile, Lufthansa, ING, and Atlassian. He’s focused on new process automation paradigms that fit into modern architectures around distributed systems, microservices, domain-driven design, event-driven architecture, and reactive systems. Bernd has been contributing to various open-source workflow engines for more than 15 years and is the cofounder and chief technologist of Camunda―an open source software company reinventing process automation. He’s a coauthor of the popular book Real-Life BPMN, now in its sixth edition and available in English, German, and Spanish, as well as a sought-after speaker at conferences around the world and a frequent contributor to several technology publications.









