Subscribe to Updates

Business Capabilities determine Microservices

For an effective and efficient Microservices architecture, it is imperative to let business capabilities determine microservices. In essence, we mean the business capabilities model should influence the modularity, granularity and the composition of the microservices, which in turn are the decomposition of a large application into manageable chunks

At the outset, it is better to level set the terms business capabilities and microservices.

Microservices are loosely coupled atomic services that decompose an application into modular and elemental building blocks.  It is a construct to move away from monolithic applications and instead think small and focus on bounding the concept and context of a little piece of functionality into a repeatable service.

Business capabilities are what a business does and can do and focus on the “What” and not the how. Business capabilities are logical, stable, and foundational. They abstract what a company does and can do into a level of abstraction that is useful and practical. Capabilities are business friendly terms and are a bridge from business to IT fostering understanding and alignment.

In companies where concepts of business architecture and business capability mapping are well-established, one of the typical business architecture deliverables is a decomposition of the business into logical, multi-level groups of capabilities.  The level of depth and granularity of the enterprise business capabilities map varies between organizations, but we at Capstera prefer to decompose the business capabilities to level 3, 4 and beyond to achieve specificity and precision.  

How do Business Capabilities determine Microservices?

For example, let us take a simple example from something most of us are familiar with – Placing a Trade in an online Brokerage Account. 

The process goes like the following:

Business Capabilities Determine Microservices - stock trading process example

 

 

The business capabilities involved in the realization of this process may look as follows. (Please note that these are example capabilities and in this sample illustration we are not rigorous with capability levels, granularity, and grouping.)

Business Capabilities determine Microservices

Moreover, the Microservices that are involved may be listed as follows (again these are just example and include a combination of Micro and Mini Services):

Business Capabilities determine Microservices

 

 

Overall a conceptual diagram of how business capabilities determine microservices may look like the diagram below:

Business Capabilities determine Microservices

 

In your company, do you let the business capabilities determine the microservices?  How is the concept working in practice?

Related Products:

 

Sign up for Newsletter

[mc4wp_form]