As business needs change, organizations must be able to deliver innovation quickly and adapt applications dynamically — reassembling capabilities from inside and outside the enterprise. To do this, organizations must understand and implement the “composable enterprise.” – Gartner
Businesses today more than ever are being pressed to innovate and adapt constantly. They require an array of reusable business recipes in a way that makes it easy to assemble new business strategies both inside organizations and across organizations.
Any business can be thought of as a collection of employees with unique skills which can be composed into new business recipes. Unlike computers, humans are flexible and their capabilities are applicable across a wide variety of scenarios and they learn and become more efficient over time.
The same cannot be said about computers although we have made significant progress over the last 70 years. Computers have offloaded human labor for routine work, but when something new needs to be offloaded, we need developers or automation specialists to come in and build the automation. Reusability, which eventually leads to composability, is one of the hardest problems in computer science. It is also the holy grail of running a business efficiently. We need to make automation recipes reusable across enterprises and withstand the test of time – like Grandma’s recipes.
As a business’s goals evolve, the business itself needs to reorganize like transformer bots, reusing existing parts but changing the overall business to meet the new requirements of the day. That physical transformation is hard and painful. It isn’t a surprise that many businesses are still undergoing Digital Transformation. Why is it so hard? What is the missing piece of the puzzle? Why can’t business be like Transformer Bots?
Reusability of Business Logic – A Brief History
The Era of Assembly Language
In the 1940s we were “assembling” behavior by composing machine instructions. The same assembly program would work on other machines that understood the same instruction set. Over time our business logic became repeatable and reusable across replicas and close variants of the same hardware. But, different hardware required us to rewrite the business logic from scratch to suit the new hardware’s language.
The Era of Portable Software
Since the 1970s programming languages like C, Java and Python have made it possible for a program to encode business logic in a way that the same program could be reused on any hardware. Business logic got liberated from the crutch of hardware, but was buried in software programs. Any change in the software program could affect the business logic buried in it.
The Era of APIs and Microservices
With the spread of the internet in the 90s, web protocols like SOAP and REST APIs made it possible for a programmer to clearly define the “contract” of a software program, hiding the software program behind an API that could be consumed remotely. Just like the menu at McDonald’s which allows them to change anything in the kitchen as long as the burger tastes and looks just the same. The consumption of APIs made business logic more portable and software became more of a “franchise” hidden behind the “menu” of these APIs. Business logic built using APIs became reusable across different providers of the same API. However, APIs for the same kind of service are not always compatible. APIs are opinionated and switching between incompatible APIs requires significant work limiting true portability of the business logic. What can we improve?
Let’s ask Grandma
When Grandma wrote that recipe for apple pie, she authored the most reusable piece of program ever written! No one had to rewrite the recipe just because they bought a new type of oven; it was hardware agnostic. No one had to rewrite the recipe because the oven was now controlled by Alexa; it was software agnostic. No one had to rewrite the recipe because an opinionated cook was in the kitchen. Grandma left out the situational details to the cook to figure out (“salt to taste”). The most beautiful piece of software.
Grandma knew to leave the details out for the cook to figure out. She didn’t mention the “pan on the back shelf that her mom gave her”. She didn’t mention the “2g of Morton’s salt”. But she did mention 45 minutes of cooking at 400 degrees. This disentanglement of the salient logic from the situational choices is what computer programmers have struggled with for decades – until now – the era of natural language.
The Era of Natural Language
Business logic always begins in natural language and today is translated into APIs by a developer or an opinionated drag-n-drop interface product. That irrevocably mixes the salient logic with situational choices and hinders reusability and portability of the automation. However, today computers are beginning to understand the “recipe” and have started to fill in the situational choices with conversational input with the business user. This is enabling businesses to express the business logic without specifying the APIs up front. That brings true reusability and composability to business capabilities.
Why did we not invent this decades ago?
It was hard. It still is hard. English is ambiguous but that is its strength. Computers have never been good at filling in the blanks or asking questions to resolve ambiguities as they run the programs. The last three generations of software engineers have all been trained to think of machines as opinion-less systems that cannot question what they are told or evolve the plan as they learn. For many decades we have all tried to make business logic more composable and reusable, but always frowned upon ambiguity at specification time. Only today we are seeing the advent of AI systems that can understand ambiguous natural language and creatively and conversationally fill in the blanks. The last decade’s deep learning advancements and the more recent large language models have enabled this next quantum jump in technology.
Implications for automating Business Processes
Whether it was a drag-n-drop tool or a more traditional RPA tool, all have struggled with reusability. With the advent of systems that can conversationally fill in the blanks at runtime, the door is now open to a next generation of reusable components for business process automation. Kognitos, Inc. is the leading natural language process automation platform that allows English to be the language of software that composably drives agile businesses. When the business logic is in English, it becomes extremely reusable and understandable. We are at the precipice of the democratization of automation to a billion business users.
The Key to Composable Enterprise
Businesses should look towards encoding business processes using Natural Language Process Automation. Not only does this enable the enterprise to be more composable and adaptable to an ever changing business environment, it moves business logic from the minds of the employees to a system of record of business recipes and their runs. That allows the creation of a new source of truth, arguably the most valuable one, and one that over time sheds light on how the business processes can themselves be improved for compounded gains.
I wish Grandma taught us computer science.
Want to Unlock the Power of Generative AI for Your Business Today