An organizations crown jewels are the things they can do, the products they sell, and the business processes they execute.
They are what create value and generate their revenue stream.
Faster, safer, cheaper ways to change and add to them enables them to sprint ahead of their competitors.
It’s all about having an agile business!
But we all know that, and it is a bit of a cliché. So how does it work in practice? And what does business agility have to do with APIs? I’m glad you asked because it has everything to do with APIs.
To run a business, we have business processes. We put them into systems that help us run the processes the same way every time and ensure we don’t forget anything.
The vital part of a business process isn’t the steps required to perform it. It is essential, of course, but not for them that want to use it. For the users, the information needed to start it and its result are the critical parts.
Having a customer apply for a loan starts with collecting information from the customer and results with either an approval or rejection. How the process works internally isn’t relevant for the customer or others that use the process.
An API packages a business process into a package that hides the internals and exposes only the information it needs and its result. So when using an API, we don’t need to understand how the process does what it does, as long as we can provide the information to start it and know which result to expect.
Having these packages with business processes inside(APIs) gives us a catalog of business capabilities.
When we start a new project, we can look at the catalog and see which processes are there and which processes are missing. This knowledge helps us evaluate business cases better because holes in the catalog directly translate to work we need to do.
The other side of the equation is when a process is already there. Then it can be reused. Reuse gets us to market faster and makes the project cheaper at the same time.
Defining a business process in detail to create an API is difficult and time-consuming. But when we have an API, it provides us with a building block that we can reuse. So it is worth investing effort into creating them because the more building blocks we have, the faster we can add value.
It is not always needed to build something new. Sometimes it is possible to change the project slightly to reuse something existing. Having a catalog give the needed transparency to evaluate what is feasible and what isn’t.
Thinking of business processes as reusable IT packages isn’t how we historically think about building IT systems. It requires close collaboration between the people in business who understand the processes and potential for reusing them.
With API thinking, there is a duality. In IT, we can do a lot to package the business processes we know about. But it is just as necessary from the business side to look at the catalog and find ways to reuse and improve what we already have.
The more we consolidate and improve processes, the more value APIs give us.