Traditionally, enterprise applications followed a monolithic model, characterized by a singular executable encompassing presentation, application, and database layers. This approach utilized a single programming language and was often standardized on a specific database type. While effective in on-premise IT environments with controlled software updates every 6-12 months, the landscape has shifted. Today, various IT dynamics render the monolithic model less suitable for software delivery.