This document provides an overview of the model-view-controller (MVC) framework, which is commonly used for web application development. It describes the three layers of MVC - the model layer manages the application data and logic, the view layer is responsible for display and presentation, and the controller layer handles user input and updates the model and view. The advantages of MVC include separation of concerns, testability, and support for parallel development. Some disadvantages are that it can be more complex and difficult to learn than other approaches. Popular programming languages and IDEs that support MVC development are also listed.