Software Modernization and Migration

← Back to Projects

Software Modernization and Migration

Automating the modernization of legacy software systems for improved safety, performance, and maintainability.

Overview

Legacy software systems power critical infrastructure but often suffer from security vulnerabilities, outdated architectures, and high maintenance costs. Our research develops AI-driven techniques to automate the modernization of these systems, from translating unsafe C code to memory-safe Rust, to decomposing monolithic applications into microservices.

Key Directions

  • C-to-Rust Translation: Neurosymbolic techniques that produce safer Rust code from C projects, preserving functionality while gaining memory safety.
  • Microservice Migration: AI-guided dependency analysis and partition refinement for decomposing monolithic applications into microservice architectures.
  • Translation Quality: Empirical studies measuring the quality, correctness, and idiomatic nature of machine-translated code.
  • Multi-modal Specifications: Generating specifications in multiple modalities to guide and validate code translations.

Contributors

Baishakhi Ray Vikram Nitin Rahul Krishna

Selected Publications

View all publications →