
With users expecting continuous innovation coupled with unparalleled responsiveness, the modern landscape of enterprise applications requires business systems to be well-architected, resilient to failure, and increasingly flexible. However, adopting modern application development practices and tools that fully exploit the advantages of the cloud delivery model can pose challenges. It often requires tracking the many fast-changing technology choices available for developers and operators, walking through, or creating your decision trees that cover overlapping technology choices and at times from the same vendor, and assessing various architectural permutations using different technology choices.
These factors significantly increase the complexity for developers to define the right application architecture and ensure that it aligns with best practices. Furthermore, these actions often come at the expense of the time you would otherwise spend on meeting the demands of your end customers faster. At Oracle Cloud Infrastructure (OCI), we realize this fact, and our strategy is to reduce the cost, complexity, and resources required to build and deploy modern applications quickly and confidently.
How Oracle can help
Our modern application development framework simplifies the architectural decision-making process to help you build and run highly available apps that are resilient to failure, fully secure and compliant, and support DevOps. We’ve crystallized our learning into nine core requirements and 10 design principles that represent our opinionated guidance for building a modern app. Regardless of what an app does functionally, every modern app needs to meet a minimum set of requirements. These core requirements include availability, security and compliance, cost optimization, performance, resiliency, agility, scalability, observability, and portability.

Next, we offer 10 design principles that are the best practices and a curated set of guiding principles that help govern and decide on the application architecture.

To get you started with adopting the modern application development framework, we have created opinionated architectures, that use our technology recommendations, for the commonly requested patterns.

Use case: Banco de Chile
One of our enterprise customers, Banco de Chile, has built their mobile banking application (Mi Banco) applying the modern application development best practices on OCI. Mi Banco is their main mobile application to help drive their data transformation strategy, with over 1 million users replicated in two regions, Santiago and Ashburn, to guarantee high availability.

Mi Banco is composed of around 33 microservices defined using a domain-driven design approach, offering many services to the clients like foreign currency exchange, credit card payments, billing payments, simulation, and advancing of loans. Each microservice has its own auto-scaling policies and allocated resources. Oracle Identity Cloud helps with user access, privilege, and authorization.
Utilizing this design, Banco de Chile improved the provisioning time by a thousand-fold, from months to minutes. By implementing continuous integration and delivery (CI/CD) pipelines for deployment of applications to Oracle Kubernetes Engine, they accelerated application delivery from months to a few days. Oracle Autonomous Database’s automatic upgrade and patching features have reduced the bank’s administration costs by 80%.
To learn more about this architecture, you can watch this video, where Leonel Romero at Banco de Chile explains how they designed and architected this application.
Resources
The following resources can help you get started with modernizing your existing and building new apps on Oracle Cloud Infrastructure.
-
Watch the Oracle Developer Live keynote: Simplifying modern application aevelopment
-
Learn more about modern application development framework
-
Review the eight architecture patterns referenced in this blog
-
Check more reference architectures and deploy solutions on Oracle Cloud Infrastructure
