Glossary
Comprehensive glossary of migration, cloud, and software engineering terms. Learn key concepts and terminology for successful technology migrations.
Migration
The process of moving data, applications, or infrastructure from one environment to another
Lift and Shift
Moving an application to a new environment with minimal or no changes to its architecture
Replatforming
Making targeted modifications to an application to take advantage of cloud capabilities without changing core architecture
Refactoring
Restructuring existing code without changing its external behavior to improve quality and maintainability
Technical Debt
The implied cost of additional rework caused by choosing an easy solution now instead of a better approach
Strangler Fig
A migration pattern where new functionality wraps and gradually replaces the legacy system
Microservices
An architectural style structuring an application as a collection of loosely coupled, independently deployable services
Containerization
Packaging software code with its dependencies so it can run uniformly across computing environments
CI/CD
Continuous Integration and Continuous Deployment - practices for automating code integration and delivery
Infrastructure as Code
Managing and provisioning infrastructure through machine-readable configuration files
API Gateway
A server that acts as a single entry point for API calls, handling routing, composition, and cross-cutting concerns
Service Mesh
A dedicated infrastructure layer for handling service-to-service communication in microservices
Schema Migration
The process of changing a database schema from one version to another
ETL
Extract, Transform, Load - a process for moving and transforming data between systems
Feature Flag
A technique allowing features to be enabled or disabled without deploying new code
Rollback
Reverting a system to a previous version after a failed deployment or migration
Cutover
The point in migration when traffic or operations switch from the old system to the new
Backward Compatibility
The ability of new versions to work with data or interfaces from older versions
Polyglot Persistence
Using different data storage technologies for different data storage needs within an application
Bounded Context
A central pattern in Domain-Driven Design that defines clear boundaries within which a model is defined