Cloud migration remains high on this year's agenda for CIOs. The transformation of IT is well...
The term "Cloud Native" doesn't have a standardized definition. In general, this describes a software development approach for cloud applications. Some important aspects are therefore highlighted and interpreted in more detail below.
Cloud Native themes and features
The basic idea is to design applications in a way that enables them to be run well ("natively") and successfully in a cloud environment. The certification authority iSAQB / CPSA defines the term as follows: "Applications adopting the principles of Microservices, packaged and delivered as Containers, orchestrated by Platforms, running on top of Cloud infrastructure"
A Cloud Native App will rarely ever be without Devops, CI/CD, Microservices and Containerization.
Fig.1: The 4 cornerstones of Cloud Native (Source: Pivotal)
A few other features are described in the following points:
Fig.2: The key attributes of cloud native (Source: CLOUDINFRA)
The 12-factor app
Implementing an application respecting the formerly mentioned "Cloud Native" definitions can be achieved with a few helpful clues from https://12factor.net/. Those factors and their explanations describe the essential pillars of an Cloud Native/Saas application. Because each Cloud Native Journey is highly individual, there is no obligation to strictly implement all of the 12 factors. From a practical point of view, first of all you should select the building blocks, that correlate with your requirements and quality goals the most. A 12-factor app is not necessarily Cloud Native, but offers the best qualifications to get there.
▪ I. Codebase: One codebase tracked in revision control, many deploys
▪ II. Dependencies: Explicitly declare and isolate dependencies
▪ III. Config: Store config in the environment
▪ IV. Backing services : Treat backing services as attached resources
▪ V. Build, release, run: Strictly separate build and run stages
▪ VI. Processes: Execute the app as one or more stateless processes
▪ VII. Port binding: Export services via port binding
▪ VIII. Concurrency: Scale out via the process model
▪ IX. Disposability: Maximize robustness with fast startup and graceful shutdown
▪ X. Dev/prod parity: Keep development, staging, and production as similar as possible
▪ XI. Logs: Treat logs as event streams
▪ XII. Admin processes: Run admin/management tasks as one-off processes
What is the Cloud Native Journey?
The Cloud Native Journey describes a process with the ultimate goal to develop and deploy Cloud Native apps. Depending on your starting point and accumulated experience this process will be highly individual and influenced by scope and requirements.
Cloud Native Maturity Model
Another way to visualize the road along the Cloud Native Journey is the following maturity model.
Fig. 3: Cloud Native Maturity Model (Source: Pivotal)
Cloud Native Trail und Landscape
The resources found at CNCF (Cloud Native Computing Foundation) are also an excellent starting point:
For more information, please visit our website:
André has been part of USU Digital Solutions since 2011. As a consultant, architect or project manager, André uses his many years of IT expertise to support challenging digitization projects for customers in the public sector and industry.