Ensuring business success with business building blocks (BBB’s)
In the first article in this series I posed a question about whether our MuleSoft implementation had been a success. Now, this was proposed in generic terms and not aimed at one particular implementation. However, the MuleSoft Catalyst and the Catalyst Knowledge hub are founded on the lessons learned from many implementations across many countries and many industries and therefore the lessons embedded in the hub are to be ignored at your own peril. Some parts of the hub are advisory, as in the playbooks, but some, the delivery approaches which accompany three of the six playbooks, are very prescriptive. We will be coming back to these in later articles so look out for these soon.
My point here is that the lessons learned and compiled in the Catalyst Hub focus on achieving business success using an outcome-based technology approach. You won’t find any deep technical content on the MuleSoft platform but what you will find is discussion on composable solutions.
Whilst in other articles I have written about the three layer API architecture and how this allow us to use the building blocks of API’s to accelerate delivery and reduce the impact of change in this article I want to take those same principles into developing a composable business architecture and look at why we should do this and what benefit it brings to both the business users and to the MuleSoft team building API’s within that business. Remember I talked about avoiding technical success but business failure. What we want is a win-win not a lose-win situation.
So, what are the business building blocks and how are they related to API’s. Well, as we should all know, successful business must be founded on accurate, consistent and timely data. In other words, data quality and good data governance are a fundamental part of the recipe for success. But providing data to a business in itself means very little, it needs to be partnered with functionality in order to mean anything in business terms. So to do this we need to develop business building blocks that provide modularity, flexibility, consistent and standardised functionality which will be functionally cohesive but logically decoupled.
Let’s look at how these building blocks will provide business benefit whilst also driving innovation within a business.
Modularity and flexibility
Processes that exist within any business can become complex very quickly but, at least in my view, we should always strive to keep things simple. By decomposing functionality into smaller building blocks not only do things become more simple they also become more flexible. This also has the advantage that when things change, as they always will in business the impact of the change can be minimalised. An additional benefit of this componentisation is the ability to introduce additional security by distributing the development of functions across developers. A number of people know how bits of the business process works but a much-reduced number will know how the whole process is architected. It works if the architects get the design right!
Rapid Innovation
Of course, with the architecture being decomposed into logically decoupled ‘chunks’ this also provides the ability to innovate much more quickly allowing organisations to produce new solutions and gain competitive advantage by building and combining blocks of functionality.
Consistency and Standardisation
Many businesses use components across a wide number of functions within their operations. By driving consistency of processes, functionality and data, the business can ensure that processes and workflows are uniform across different parts of the organisation. This consistency enhances operational efficiency, reduces the likelihood of errors and ensures that all business decisions are made using consistent data.
Scalability
A benefit of building blocks that is often overlooked is that of scalability. Modular business structures are inherently scalable which is of significant importance especially where business may be multinational where regulatory requirements may vary from country to country. The modularity of their business structure will allow building blocks to be country specific while not affecting the building blocks that surround that specific block. In this way functionality can be encapsulated within individual building blocks.
Adaptability to change.
In a rapidly evolving business environment, adaptability is crucial. Building blocks allow organisations to respond to changes in technology, regulations, or market dynamics more effectively. They can replace or modify individual components without disrupting the entire business.
Risk Mitigation
The key to effective building blocks is in the architecture. By using well-defined building blocks that support key identified functions within the business architecture, organisations can mitigate risks associated with new initiatives. The established building blocks have been tested and refined over a period of time thus reducing the likelihood of unexpected problems occurring when introducing new functionality to the business.
Cost optimisation
In the same way that the reuse of API’s provides benefits through the three layer architecture, reuse of API’s to provide consistent data delivery and reuse to reduce development time, the business building blocks provide cost savings by not reinventing the wheel for each project and gaining the benefits discussed above.
So, hopefully we can see that building blocks are essential for creating a structured, adaptable, and efficient organisation. They provide a foundation for growth, innovation, and sustained success in a dynamic and competitive business environment providing that the architecture of the design is efficient and effective. The key to that is to use the two mantras that I have used through my career — Keep It Simple (KIS) and remember your building blocks need to be functionally cohesive and logically decoupled.
Next time I will begin to look at the phases of the Catalyst methodology as we start our journey of architecting solutions and employing the methodology to construct the building blocks for a successful MuleSoft implementation.