I'm wondering if you any of you have heard about the Composable Architecture methodology? What are your thoughts on it?
Figure 1. Composable Architecture
Composable architecture refers to a design approach where software systems are developed by combining independent and interchangeable components or services. The key aspects of a composable architecture include:
Modularity - The system is broken down into discrete modules or components that can be developed, deployed and scaled independently.
Loose coupling - The interaction between components is well-defined and not tightly coupled. Components have minimal interdependencies.
Interoperability - Components conform to shared interface definitions and protocols to communicate and interact with each other.
Replaceability - Components can be easily replaced without affecting the overall architecture. The system is not dependent on a specific component implementation.
Automation - assembly and configuration of the system from individual components is automated through definition files/APIs rather than custom coding.
Data separation - Components own and manage their own data storage rather than relying on a centralized database.
Dynamic binding - Components are discovered and combined at runtime to assemble business capabilities on demand in response to changing requirements.
Yes we've been looking at composable architecture in particular related to Customer Data Platform. In this context the data architecture is already reasonably well defined (typical fields required for customer interactions are fairly consistent across platforms) so it is a growing trend, but I haven't seen it applied to other subject areas. For us the Replaceability aspect is important and with that comes the Automation and Dynamic Binding in order to ensure nimble (low effort/cost) replaceability. SnapLogic clearly has much of this capability already - is it something you are looking to further leverage?
Thanks for sharing your insights.
Yes we are looking at further leveraging replaceability with more CI/CD functionality for our API management solution. We have some basic functionality already like our public APIs for APIM to retire, deprecate, publish, unpublish APIs at scale. You can see more of it here:https://docs.snaplogic.com/public-apis/apis-apim.html
Also stay tuned for more product releases this year regarding CI/CD with APIM.