Este documento describe y compara dos modelos de arquitectura de software: el modelo MVC (Modelo Vista Controlador) y la programación por capas. El modelo MVC divide una aplicación en tres componentes (modelo, vista y controlador) que se comunican entre sí. La programación por capas separa una aplicación en capas lógicas como presentación, lógica de negocio y datos.