In my previous blog post, I talked about the concept of composable business and the value this framework can bring to your organization, from increased agility and accelerated time-to-market to maximized developer productivity. In this second part, I’ll focus on how to turn those concepts into a pragmatic reality. I’ll show you how you can deliver a true composable architecture using the OutSystems low-code platform.
Experience the power of OutSystems
Wondering what's it like to develop with a high-performance low-code platform? Check out OutSystems free edition.
Table of contents:
- Key OutSystems Capabilities that Support Composability
- How OutSystems Promotes a Composable Business Architecture
- What’s Next?
Key OutSystems Capabilities that Support Composability
The OutSystems platform offers a full range of application development capabilities that allows any developer to build serious enterprise-scale applications. Service Studio is the IDE used by OutSystems developers to build and compose applications:
According to OutSystems’ best practices, any application is made of reusable modules that can be categorized into three types of services:
- End-User Services that provide screens, UI blocks, and other capabilities required to deliver end-user interfaces.
- Core Services that will encapsulate the business logic required to handle the underlying business objects.
- Foundation Services that contain the logic and capabilities to handle integrations and cross-functional logic.
How OutSystems Promotes a Composable Business Architecture
Now that we understand the OutSystems platform capabilities and best practices let’s see how these support Gartner’s Composable Business Architecture concepts.
The diagram below shows Gartner’s Composable Business conceptual architecture. I’ve described this diagram in greater detail in part one of this series, so for additional details on Gartner’s framework, visit this blog post.
In the next sections, I’ll describe how OutSystems technology supports those components.
Anatomy of a PBC
In OutSystems, a Packaged Business Capabilities (PBC) is represented by an Application. That Application is made of one of several modules that will be layered into different types of Services, as shown in the picture below.
Then, the Integration Services will trigger actions/events within the PBC, while Public APIs will be used to trigger actions/events into other PBCs or external systems.
OutSystems can be used to create PBCs or to integrate other PBCs generated in our programmatic frameworks and orchestrate all capabilities into a new customer journey.
Different Types of PBCs
OutSystems recognizes that customers who implement a composable business architecture will most likely integrate OutSystems with other PBCs.
While any PBC can be built on the OutSystems platform, making the right design decisions will be key to ensuring an appropriate fit for use and fit for purpose. While Application and Digital Twin PBCs are natural candidates for a perfect fit in OutSystems, the needs and constraints for Analytics and Data PBCs need to be properly assessed:
- Analytics PBCs: You will want to align with (or adjust) your Enterprise BI Strategy, as well as your User Experience Strategy. It is sometimes challenging to meet both needs. It might be required to encapsulate within your PBC screen components or APIs that are coming from your BI solution, or vice-versa. Only a thorough assessment and design can give the right answer to this question.
- Data PBCs: The volume of data gathered and processed by enterprises is drastically growing to support digital transformation, analytics, and AI needs. Most physical assets are augmented with IoT capabilities to support the creation of Digital Twins and capture trillions of data to feed machine learning and deep learning algorithms. The right data collection and consolidation strategy ensure scalability and suitability. While a Data PBC may be built on the OutSystems platform, depending on the volume and rate of data transactions, it may have to integrate with an IoT platform or data lake that can cope with the loads.
Autonomy and Authority
As I mentioned in the previous blog post, one of the key concepts of the Composable Business Architecture is to delegate the authority and ownership of the PBCs to smaller (business) teams to gain agility and speed. This will be the hardest part of the transformation, as it'll require adjusting the culture and people's mindsets towards composability, reusability, communication, and collaboration.
The OutSystems platform provides all the capabilities required to assign “Development teams” ownership and permissions on specific Applications and Modules. For instance, a product team may own the “Customer Management” PBC, while another product team might own the “Order Mgmt” PBC.
In this scenario, integration points and dependencies between these two PBCs are critical, as well as designing/ring-fencing to ensure minimal impact if any change occurs within the PBC (through robust Integration Services design).
As described in the previous sections, defining the appropriate strategies and making the right design decisions is utmost critical. We have listed here several questions that should help you think further about the approach and next steps to adopt the Composable Business Architecture:
- What’s the level of autonomy delegated to the teams? What’s the RACI for the creation of a new PBC?
- Who owns overarching governance, coaching, enablement and support? What’s the role of a CoE?
- Composed Application Experiences:
- Customer Experiences: OutSystems provides all the front-end capabilities needed for customer-facing interactions. Will you want to use it as your standard orchestration platform or use a combination of other technologies?
- Employee Experiences:
- Which Apps/Transactions should have an OutSystems front-end, and which ones shouldn’t? What’s the Experience Transformation roadmap?
- Should you use the SAP Fiori theme for employees facing OutSystems UX?
- Overall architecture strategy: What’s the role of each system of record?
- Integrations: Should you use an Enterprise Service Bus vs. Point-to-Point integrations?
- Data Fabric: Is it the Enterprise Data Lake? Or another Data Hub? Or would OutSystems play (part of) this role?
Would you like some help to answer these questions or hear from other customers already on the path of the Composable Business? If so, click here to talk to one of our experts. We would love to help you understand how the OutSystems platform supports a composable business. You can also explore our platform here.