About Me

My photo
Rohit is an investor, startup advisor and an Application Modernization Scale Specialist working at Google.

Friday, April 24, 2020

Java Application Modernization Maturity Model

This is how I think about the Maturity Model for Java Transformers
--------------------------------------------------------------------------

1. Basic Containerization of Stateless apps to TKG - enabled by https://github.com/pivotal/kpack and Cloud Native Buildpacks. - Deploy with vanilla  manifests that maybe helmified   / Basic Containerization to TAS - Using TAS Buildpacks ... some apps require no changes when deploying with JavaBuildpack. **O changes.**

2. TKG - Basic Containerization of Stateful apps possibly using K8s Stateful sets or persistent volumes. / TAS - Extract state out like session replication or databases (not sure how to do this yet).   Some tools purport to do this. Like Google anthos and the POC the tracker team is working on. **Minimal changes.**

3. Invasive S-boot transformer - high vaule - high degree of change and difficulty. Thae automate the transformation recipes to cloud native. Bootifier ones as well simpler ones like boot 2 -> boot 3, XML -> Config Migration.  **Invasive changes.**

4. Microservice generator - looking at the dynamic runtime of the appllication. Determines seams and makes suggestions where apps can be decomposed and used as a starting point for Swift. **Monoliths2Microservices**