The path to cloud-native applications varies by organization. Simply creating microservices does not lead to the service quality and delivery frequency required by digital business. And just adopting tools that support agile development or IT automation will not lead to the increased velocity of cloud-native approaches. Rather, success is achieved from a combination of practices, technologies, processes, and mindsets.

There are two complementary components to cloud-native application development: application services, or middleware, that speeds up the development of a cloud native application, and infrastructure services, or a container platform, that speeds up its delivery and deployment.

Cloud-native application development is an approach to building and running applications based on four key tenets: service-based architecture, application programming interface (API)-based communication, container-based  infrastructure, and DevOps processes.