Part 2 - Decomposing and decoupling to achieve composability

Having introduced "composable" in part 1, we will now look at deconstructing and decoupling the typical layers of a digital solution to understand how composability can be achieved within them.

Let's assume a typical application is composed of the following four layers:

  1. Client UI - typical client UI to serve channels like web, mobile, email, Social, AR/VR, Kiosk
  2. Infrastructure - this includes networking, security, hosting, routing and other typical functions
  3. Platforms/products - Off-the-self, plug-and-play, pay-as-you-go, bespoke products and tools that offer packaged business capabilities (PCBs is another Gartner term) or business applications as well as persistence
  4. Data storage - storage and persistence for data and analytics. Enterprise Data Lakes, Collections DB etc.
Non-composable version of a digital solution will still include these layers but they are siloed.

Layers in non-composable solution

Decomposing the digital solution into these basic layers is in other terms is achieved through decoupling of technology. 

Composable layers

The idea is rather simple. Customers and employees interact across channels with client UI. The user's interactions on the UI generate requests that are handles by appropriate Infrastructure which hosts business applications. The users interactions, request routing, application logging etc. all generate data which is persisted at scale within the data layer.

This now starts to resemble Composable DXPs like SitecoreOptimizelyAdobeAcquia.

In case of home grown, bespoke digital platforms, decoupling all four can be achieved but will end up being too complex and too expensive to maintain.

So where do SaaS products feature into the composable story?

Let's take this decomposition at bit further. The layers further breakdown into composable blocks of their own.
  1. Client UI  - let's say breaks down into basic building blocks like HTML/CSS, JavaScript,  JSON, GraphQL, OData 
  2. Infrastructure - breaks down into Hybrid Cloud,  API Gateway, SaaS API endpoints
  3. Platforms/products - break down into self hosted or self managed products vs SaaS stacks
  4. Data storage - includes platform data, customer data, engagement analytics, content indexes
Composable stacks and suites

As you can see SaaS plays a role in almost all the layers. This picture also starts to draw a line between monolithic suites vs SaaS based composable stacks. 

In the next article, we will add a orchestration layer to show how the composable architecture can truly take shape.

Comments

Popular posts from this blog

Decision tree for selecting the best cloud hosting option (App service, VM, Containers, Serverless)

SOLVED: Sitecore Habitat Home Sync-Unicorn fails with the error: GetResponse" with "0" argument(s): "The remote server returned an error: (403) Forbidden.

Google Lighthouse Tips: Importance of web page speed