“A digital platform serves as a meeting point between service providers and users: thanks to the ability to abstract the underlying technological and organizational complexity, it indeed promotes collaboration among different organizations and operational units, as it allows multiple service providers to share and integrate their offerings.
This leads to the possibility of creating new products by combining elementary services both within the same organization (In-Organization applications or I-O) and through the union of services provided by different organizations (Cross-Organization applications or X-O).
Digital ecosystems thus facilitate value creation through the aggregation of existing services that can be used flexibly and customized by a wide range of customers and applications.“
- Composable applications – cross context user journeys
This way of creating new products by composing elementary pieces (composable applications) connects different logical and business contexts, allowing users to navigate from one context to another without realizing it, offering a seamless and frictionless experience even in entirely new contexts.
This gives rise to a true breakdown of information silos at both the application level and, above all, the data compartmentalization level: breaking down silos allows for greater information sharing, fosters collaboration and integration among various functions and areas of the organization, as well as between different organizations. Information and services are shared and reused more efficiently, reducing duplication of efforts and enabling better resource allocation.
- Technological decoupling
The breaking down of silos can be facilitated by the adoption of modern technologies and architectures, such as digital platforms, cloud computing, and microservices, which make integration and interoperability between different systems and services easier. This leads to greater agility and flexibility in responding to the ever-evolving market and customer needs.
The creation of a decoupling layer allows for technical integration and logical abstraction of the underlying systems.
Creating applications should be as simple as connecting connectors, orchestrating processes, and composing existing components.
An example: managing a trip with an electric car
One of the things that change radically when switching to electric vehicles compared to cars with internal combustion engines is trip planning: both due to the different range (currently lower) and the different distribution of charging stations (compared to fuel stations), it is necessary to plan a long trip, deciding in advance where to stop for charging, how much to charge, and what battery level to expect at the next stop.
However, it is true that the scenario is rapidly improving, both for the improvement of car performance (in terms of range and charging speed) and for an ever-increasing density of fast charging points; two factors that should greatly reduce the need for excessive planning for long trips.
The factors at play for trip planning are typically the car’s performance (battery capacity and charging speed), the starting battery level, the route, the type of charging points (super fast or regular), and the network (to take advantage of particular economic agreements).
To perform this task, there are several applications available, of which probably the most famous is AbetterRoutePlanner (available for both web and mobile). You enter the data (start-destination, type of car, etc.), and it calculates the route with the various stops.
At this point, the traveler must use the on-board system to set this trip in their infotainment system. Many car on-board systems offer integrated systems capable of performing this task (perhaps the most famous is Tesla’s proprietary system), but let’s assume for a moment that we have to create this application from scratch and see how a digital approach can help create a composed application.
To clarify the process we need to achieve, this customer journey that combines two phases can be represented: trip planning + importing and using the car’s on-board system. The diagram below can provide a very basic understanding of how one could create an application of this type:
In terms of service platforms, we can imagine that an X-O application can aggregate the services offered by the two underlying systems, allowing for a simpler UX, perhaps from a single system (the car’s info system).
The example provided here is very simple, but it allows us to understand the potential of this approach and to introduce the complexity and challenges that it brings. Here are some of them:
- Product envisioning: To create a composite product, we must change our approach in both the envisioning and implementation phases. We need to define the vision in a distributed manner and introduce a new approach to understanding the needs to be met and the resources offered by the actors involved in the composition process.
- Semantic reconciliation of data: When aggregating data from different contexts to create new systems and applications, it is necessary to align the meaning of the data as it varies across different application contexts.
- Service governance: Every time a service is published on a digital platform, it is necessary to activate governance for that service that takes into account aspects related to the lifecycle, versioning, types of data exchanged, conflicts, and overlaps.
- Cross-departmental security: By aggregating functionalities offered by different systems, the issue of data and service protection in a broader and more complex context arises.
- Execution environment: Since we are talking about digital ecosystems, we can draw from another metaphor derived from the natural world and discuss the habitat of services. Technologies must enable the publication, discovery, accessibility, and connection of services belonging to different contexts from each other. Cloud and Platform Economy are two aspects not to be underestimated.