Domain-Driven Design Is at the Core of Composable Banking

Tushar Chitra, Vice President, Product Strategy and Marketing

Avinash Swamy, Senior Principal Product Manager

Banking is a classic example of an industry operating in a dynamic environment. Rapidly evolving customer expectations and market developments, a continuous stream of new competitors—many of which are digital natives—and ever-changing and increasingly arduous regulations require new levels of organizational agility.

Composability is an architectural principle that enables banks to be more agile and efficient in the face of such evolving market dynamics. As defined by Gartner, an essential aspect of a composable architecture is “a cohesive set of well-defined packaged business capabilities, which represent the independent composition of building blocks … that are small enough to maximize agility, but large enough to contain integrity.”

Domain-Driven Design—ensure strength and adaptability

Domain-Driven Design (DDD) posits that software systems need to be based on a well-developed model of a domain, introduced by Eric Evans in 2003, and subsequently improved and expanded. DDD is most advantageous for complex domains, such as transaction banking. The DDD framework enables the creation of well-defined independent solution components that are bounded by a functional context aligned to business domains and subdomains to limit complexity.

Evans contends that each component delivers specific functionality with minimal dependency on other components that can be delivered to an end-user or to service other components. Consequently, DDD enables a key requirement of a composable architecture—the development of well-defined packaged business capabilities or solutions that form key building blocks that can power agile composability.

For example, a complex domain like transaction banking is decomposed into domains like liquidity management, cash management, and payments. Cash management is further decomposed into subdomains, such as collections management and cash flow forecasting. Independent solution and service components are built in alignment with the identified domains and subdomains, which are bounded by a functional context. Building-block solution and service components are optimized to a size that is small enough to maximize business agility and large enough to ensure operational integrity.

Domain-driven composable banking—optimize agility and efficiency

The Oracle Banking suite is a comprehensive modern banking solution suite that leverages DDD to offer an extensive menu of independent, composable solution building blocks across retail banking and corporate banking. Each building block and underlying microservice is built using domain modeling, which enables an optimally composable suite of logical components or building blocks centered on the bounded context of a domain or subdomain. (See illustration below.)


For retail banking, the suite offers building blocks across individual business capabilities, such as originations, service delivery, and default management. For corporate banking, banks can leverage composable blocks for different business lines, such as corporate accounts, corporate lending, cash management, liquidity management, trade finance, supply chain finance, treasury management, and more.

In addition to a menu of ready-to-use components, the suite includes an extensive library of microservices. These microservices mitigate the risk and costs associated with duplicating core and shared services, facilitate management and control, and accelerate the deployment of additional components. Examples of shared services include currency management, charge calculations, data management, and transaction code management, all of which banks can easily manage as centralized and independent services—enabling optimized control and reducing duplication of effort for faster and more efficient innovation.

The suite also includes an extensive technical microservices chassis that enables the rapid development, deployment, and management of microservices. The chassis eliminates code duplication and optimizes service management with stateless microservices that are disposable, concurrent, and configurable. The suite’s shared functional and technical microservices power robust composability with optimal sharing of services and maximized reusability that lower operating costs. They also power the rapid deployment of additional components, further accelerating time to market.

In addition, the suite offers an API-first approach in which building blocks expose all their functionality via APIs. The suite’s independent message routing and rule engine enables easy and quick integration of systems to power next-gen composability capabilities for business domains and other services.

Limitless possibilities

With the Oracle Banking suite, banks can tailor transformation paths to suit their diverse needs. The possibilities are endless, and we are excited to share a few powerful use cases.

  • A challenger bank that wants to rapidly launch a retail banking business can choose several pre-integrated retail banking building block components from the front office to the back office and across originations and service delivery to compose and roll out end-to-end digital retail banking.
  • A small-tier bank looking to explore Banking-as-a-Service (BaaS) can select components that enable it to compose and roll out account and deposit products while quickly integrating with third-party channels that will manage originations and service delivery.
  • A mid-tier bank that seeks to expand its offerings in the transaction banking space can roll out a single component, such as virtual account management, as a starting point. As the business expands, the bank can efficiently compose and deploy other transaction banking components, such as cash management and liquidity management by leveraging the suite’s shared functional and technical foundation services.
  • A mid-tier bank that wants to manage its transformation in stages can initially choose a single component to roll out digital omnichannel capabilities. Subsequently, it can easily compose and add components to transform assisted engagement and processing, as well as product management and core operations.
  • A large Tier 1 bank looking for a best-in-class core for corporate accounts can deploy the corporate banking accounts core engine that is built for high scalability and quickly integrate the component with its existing landscape and/or external ecosystem.

The Oracle Banking suite does not force-fit transformation to specific paths, such as an ecosystem approach or an end-to-end pre-integrated suite. Its leading-edge composability enables a bank to pick and choose any or a blend of approaches and even tailor them to the requirements of different lines of business.

The suite’s domain-driven composability allows banks to compose any customer journey, user experience, or business and product line capability quickly and efficiently. They can easily reimagine and redefine customer journeys and user experiences and quickly build and launch innovative products and services. Banks also have the power to adopt new distribution and servicing models with ease and improve collaboration with partners to co-innovate products and revenue streams.

Domain-driven composability that is truly agile and efficient enables banks to confidently embrace new capabilities, transformation paths, and business models, equipping them for success in a constantly evolving and dynamic industry.