10 Red Hat OpenShift and IBM Cloud Paks on IBM Power Systems: Volume 1
To start the modernization journey, first you must analyze your current application estate and 
prioritize your modernization goals. The outcome of the analysis can help you select the most 
suitable modernization patterns:
/SM590000Move the monolith to cloud
Containerize the applications, also called the VM-based lift and shift method. When you 
containerize an application, you reduce future costs, simplify operations, and provide 
flexible cloud migration to a common Kubernetes platform. You also focus on a single 
operational model that can be used by new cloud-native and traditional applications. 
/SM590000Expose on-premises assets by using APIs
The use of APIs allows new applications to use the exposed capability in an accessible 
way. Typically, this connection is made by way of the OpenAPI Specification (OAS) REST 
standard that allows the interface to be discovered and managed. 
/SM590000Refactor the monolith into macroservices
Transform your monolith application to become cloud-native. For example, when you deal 
with large Java or JavaScript files and break monoliths into smaller deployable 
components. 
/SM590000Add capabilities as microservices
Enrich your application with new business functions that are implemented as 
microservices. Your application can use various services that are available in the cloud, 
such as AI, industry, and domain services.
/SM590000Strangle the monolith
Incrementally withdraw the monolith from service by replacing functions with new 
cloud-native implementations.
To help you on your cloud journey, IBM introduced new and better experiences on 
modernization approaches, such as the incremental lift-and-shift to cloud-native 
microservices. You do not need to rewrite your entire application assets to move to the cloud. 
With a cloud-native microservices approach, you can capitalize on the scalability and 
flexibility that is inherent in any robust cloud infrastructure. 
DevOps approach
DevOps is about tools and techniques that are needed to bring the worlds of development 
and operations closer together. It is about the practices and automation that is required to 
reliably and rapidly deploy new code through the build and test cycles to production 
environments.
DevOps is an approach where companies and their development, operations, and quality 
assurance teams collaborate to continuously deliver software. By following this approach, 
which is based on lean and agile principles, enterprises can seize market opportunities and 
reduce the time to include customer feedback in their products. DevOps applies to aging, 
traditional, cloud-ready, and cloud-native applications.
Failing fast and iterating quickly are DevOps requirements for competitive app delivery. They 
imply application architectures that decouple services from each other in a continuous 
development and delivery cycle, although ensuring well-performing interactions with users.
In a cloud-native environment, applications are viewed as collections of microservices with 
many deployable components that deploy at various speeds and independently of each other. 
Manually deploying anything becomes an unsustainable effort that is prone to error, 
inconsistency, and delays.