Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Navigating Application Modernization - Leverag...

Navigating Application Modernization - Leveraging Gen-AI

This talk presents an approach that utilizes static code analysis using Konveyor.io (CNCF Sandbox project) coupled with Large Language Models (LLMs) to facilitate automated code transformation. Our method comes from the tool "Kai", which analyzes static code to pinpoint areas within source code requiring modification. Kai uses the power of LLMs to generate code changes to resolve identified incidents. It eliminates the need for fine-tuning LLMs. Instead, it augments the knowledge of LLMs with Konveyor data through prompt engineering (few shots) and the use of Retrieval-Augmented Generation (RAG). This session includes a demo showcasing how a legacy application is migrated and then deployed to Kubernetes using the power of Kai.

Avatar for Shaaf Syed

Shaaf Syed

July 10, 2025
Tweet

More Decks by Shaaf Syed

Other Decks in Technology

Transcript

  1. https://konveyor.io 2025-WeAreDevelopers-Navigating Application Modernization - Leveraging Gen-AI • First line

    of Java in 1996. • Java developer, advocate, architect, engineer… • Contributor to Konveyor.io, Migrations of JavaEE using LLMs • #keycloak #infinispan #temurin #quarkus #kubernetes #ai/ml #fedora • InfoQ Java Technical Editor • Organizer Copenhagen Tech Talks (since 2013) • Mentor, writer and speaker at local meetups, events, conferences.. • Ask me about #Java, backends, architecture, opps, ML .. • (x) Cricket Coach - Junior teams in Copenhagen, Denmark fosstodon.org/@shaaf sshaaf in/shaaf/ shaaf.dev shaaf.dev shaaf_dev
  2. https://konveyor.io www.konveyor.io A community of people passionate about helping others

    modernize and migrate their applications to Kubernetes by building tools and best practices on how to accelerate the journey to Kubernetes Additional contributors welcome CNCF sandbox project Migration Toolkit for Applications Supported Tool Available with OpenShift subscription Konveyor Hub Assets Generation Reporting Assessment Code Transformati on Planning Analysis
  3. https://konveyor.io 4 “Surface insights on applications at scale to empower

    enterprise architects to make better-informed decisions related to modernization activities” github.com/konveyor/community/Charter.md Konveyor Mission and goals
  4. https://konveyor.io Technical Debt Lack of agility Security risks Maintenance and

    Cost Inability to make changes to the stack and frameworks. Hard to develop new features Unable to keep with business demands in a timely manner. Old frameworks and applications pose a threat to business and application and IT operations e.g., data leaks, etc Maintaining legacy applications is expensive. Vendor support, skills are costly and hard to find The pit of legacy applications Nurturing legacy applications is costly
  5. https://konveyor.io 6 Enable adoption leads to take informed decisions and

    make the migration and modernization process measurable and predictable Gather Insight Fully integrated toolkit leveraging multiple Open Source tools with a seamless user experience Extended Scope Help organizations safely migrate and modernize their application portfolio to leverage OpenShift Migration Guidance Ease OpenShift adoption Reduce risks Provide value on each stage of adoption Migration Toolkit for Applications How we originally helped solve the problem
  6. https://konveyor.io 7 Application Inventory ▸ Used to maintain a portfolio

    of applications ▸ It is the hub, and natural integration point for all Konveyor projects in the future ▸ Applications can be linked to the business services that they support ▸ Application interdependencies can be defined and managed ▸ Through the use of tags extensible metadata can be added to describe and categorize the applications in multiple dimensions
  7. https://konveyor.io 8 Application Assessment ▸ A questionnaire based tool that

    assesses the suitability of applications for deployment in containers within an enterprise Kubernetes platform ▸ The reports provide information about the suitability of the applications for containerization, highlighting risks and producing an adoption plan informed by effort, priority and dependencies
  8. https://konveyor.io Analysis Incident Analysis Info Details Issue location in source

    code Application Analysis Issue identification and guidance for developers
  9. https://konveyor.io Improve the economics of re-platforming and refactoring applications to

    Kubernetes and cloud-native technologies by leveraging Generative AI Upstream: Konveyor AI (Kai) Goal 14
  10. https://konveyor.io Expand Konveyor/MTA capabilities beyond surfacing information. Automate source code

    transformation. Transform Integration with commercial models and ability to bring your own self hosted model. Model Agnostic Avoid fine-tuning each model by using Retrieval Augmented Generation (RAG). Shape LLM results with examples of how Organization has solved similar problems in the past. Learn and adapt Generate code suggestions for discovered migration issues. Work with LLMs using structured migration data Konveyor has collected Gen AI Infused Upstream: Konveyor AI (Kai) Foundations 15
  11. https://konveyor.io How is it different and where is the value?

    ➔ Not -> Co-pilot, Cursor AI, Amazon-Q, Supermaven etc. ➔ Valuable generations for developers ◆ Static Source code analysis + Context + LLM • Pinpoint issues to adopting a new technology • Cloud Readiness, Java, Spring, Quarkus, and more.. ➔ Use the solved issues and patterns in customers code bases ◆ Private AI. Data stays within, use OpenShift AI, RHEL AI (Red Hat AI) ➔ Integration with IDE e.g. VSCode extension konveyor.io Upstream effort in Konveyor, CNCF Sandbox Project. Not just another code generator Improve the economics of replatforming and refactoring applications using Generative AI
  12. https://konveyor.io Agentic AI More value to the migration process using

    Agentic AI • “Its not just about a single response from the LLM” • Sanitization of responses • Compilation • Understanding that it works as per the context • Ensuring the code is usable again.
  13. https://konveyor.io Accelerating Modernization with AI Simplified user experience Checkout Code

    Developer retrieves code from repository Configure Targets Setting up targets for analysis Run Static Analysis Analyzing code for potential issues Request Contextual Fix Ask Developer Lightspeed for a fix Generate Patch Developer Lightspeed creates a code patch Migration Complete Developer decides to apply or reject the patch
  14. 21 Syed M Shaaf Developer Advocate Red Hat fosstodon.org/@shaaf sshaaf

    https://www.linkedin.com/in/shaaf/ shaaf.dev https://bsky.app/profile/shaaf.dev Thank you!