Modularity, Composability & NoCode
Modularity is essential for the design of scalable and flexible services and applications. We can define services as modular units that implement specific business functionality. Focusing on a single functionality, modular services can be easily reused in various contexts and can also be used as building blocks to meet new requirements. In addition, the modularity in the services prevents the propagation of changes to other services and therefore simplifies their maintenance.
Modularity is well established in product development and software engineering. Service providers apply the principle of modularity to achieve reductions in the time and cost of offering personalized services. The modularity of the service is, therefore, a key concept for the company to be able to develop its own service-oriented strategy and foster innovation.
Many digital systems are actually compositions of various subsystems, typically developed by various teams, often from different vendors. Modularity requires designing subsystems (modules) with well-defined interfaces that can be used in a variety of contexts. Composability means the ability to combine modules and establishes the way in which two or more components are related or connected to each other. Modular composability means assembling the modules into a new system, connecting a set of compatible components.
Enterprise composability is the mindset, technologies and set of operational capabilities that enable organisations to innovate and adapt quickly to changing business needs. It is based on applying modularity to the business to achieve the scale and pace required by business ambition. Gartner* considers three action areas of enterprise composability:
- Composable thinking - a mindset to guide business through uncertainty and opportunity. Leaders encourage the creation and reuse of modular business capabilities and technologies.
- Composable business architecture - a model for managing the pace of business change. Combining business elements (e.g., capabilities, products and services) in multiple ways to create new value.
- Composable digital technologies - systems and data that are quickly and easily integrated. The work of producing technology capabilities is modularised and automated through APIs, microservices and other modular components.
Composable digital business based on modularity allows an enterprise to reorganise and reorient itself as needed based on external (or internal) factors, such as a change that needs to be made by the customer or a sudden change in the supply chain. Enterprise composability applies modularity to any business asset - people, processes, technologies and even physical assets - so that leaders can quickly, easily and safely reorganise them and create new value.
What Is No-Code?
No-code is an approach to software development that does not require any prior knowledge of traditional programming languages to create applications. This is made possible by no-code development platforms, which include visual modelling of business logic and allow developers to drag and drop pre-configured blocks of functionality to create advanced applications. Codeless platforms leverage technology to empower people to innovate. There are many advantages, but here are three of the most important:
- Shorten time to market. The visual drag-and-drop functionality of the codeless platform enables rapid prototyping, which in turn means that products can be brought to market much faster than through traditional programming.
- Better solution through citizen development. No one understands business processes and customers better than business people. Including this unique insight into the software development process is invaluable, leveraging the unique collaboration, skills and experience of business and IT teams.
- Reduced development costs. The graphical design of applications using pre-configured functional blocks facilitates the reuse of components and streamlines the design and deployment of services.
Packaged Business Capabilities
The basic principle of modularity is that digital systems should be built from cohesive and loosely coupled components (modules). This means that the system should consist of different components that have well-defined functionality, are integrated and work together efficiently. Modularity is therefore fundamental for the development of composable digital technologies.
By combining modularity, no-code and composability in the design of applications and services, we can raise the level of abstraction and create packaged business capabilities (PBCs). PBCs are software components that represent a well-defined business capability, functionally recognisable as such by a business user, and reusable in the design of custom assembled products, applications and services.
PBCs are defined as building blocks for applications or solutions and can be considered as aggregations of microservices. Microservices are the way we design, build and deploy modular applications, organised into well-defined services. PBCs are the way we bring applications to market and how they are used by users.
Well implemented, PBCs are functionally complete to guarantee autonomy, without critical external dependencies, without the need for direct external access to your data. For interaction with the rest of the enterprise's systems and services, each PBC offers a data schema, an API, an event notification system and a set of services.
In short, with PBCs a company only has to manage a small number of building blocks. Everything is simplified and, in general, it makes it easier to understand the value provided by the application, create the best solution that fits the needs, implement it and train the company's staff.
Cloud Media Integration Platform
How can we apply the concepts of modularity, composability, no-code and PBC to business in the M&E market? The answer lies in identifying and analysing the different business areas of the M&E company. Without being exhaustive, we list some well-defined areas common to many companies: news and live sport production (NRCS), scripted content production, post production, dubbing and subtitling, AI based content enrichment, content reception and delivery, linear channel playout, social networks or legacy archive migration, among others.
As an example, let's consider the business area "linear channel playout", where we identify at least six basic processes with their corresponding workflows: channel playlist processing, missing clips processing, versions processing, send to playout servers, content reception, and as run log, among others. We can group the applications and systems that use the different processes into five classes:
- Order generation: traffic, automation, content archive.
- Storage: videoserver, NAS folder, S3 bucket.
- Processing: transcoder, AQC, file transfer.
- Notifications: email, slack, rabbitMQ.
- Business intelligence: elasticsearch, kibana.
Between applications and systems, we have listed a total of fourteen. In all classes there are multiple products that perform the same function. Landmark, Whats'On and Provys, among others, are well-known traffic systems, although each has a different API.
If we want a modular, composable, non-code design then we need to raise the level of abstraction and offer a virtualised API so that the three traffic systems mentioned can be interchangeable (interoperability). This is the function of a hybrid cloud media integration platform, which integrates each application individually and offers one-to-many integration to all other applications and systems.
All applications and systems dialogue and exchange metadata and media files via the platform. In fact, the integration platform models them as local or remote workspaces. Workspaces that can be sources and/or destinations of content (metadata and/or media files) to get from, transform and send to.
If we have solved the problem of one-to-many integration, we can consider applications and systems as design modules in a composable architecture. Note that applications can also consist of multiple microservices that provide well-defined blocks of functionality. Both the workflows associated with the processes and the grouping of processes can constitute PBCs, easily modifiable by citizen developers (no-code).
For the hybrid cloud media integration platform to be effective, it needs at least the following components:
- Form editor for the mapping of metadata between applications and the platform, as well as facilitating the participation of people in the processes.
- Workflow editor for the graphical design of business processes by business users (citizen developers). BPM based workflow automation is a proven solution to reduce costs, improve profitability and accelerate growth.
- Common workspace where applications and systems share a common metadata and media file exchange model.
- Business intelligence to automate platform elasticity and report costs associated with each PBC.
- Hybrid cloud multitenant and multisite support.
- API REST and developer framework for integrating applications and systems with the platform.
While process automation drives efficiency and scalability, composable PBCs and technologies enable multiple outcomes simultaneously. In fact, the combination of modular application design and no-code technology enhances composability, flexibility and agility to implement and accelerate changes aligned with business needs. A hybrid cloud media integration platform is the answer the M&E market urgently needs to accelerate digital transformation.