La arquitectura multicapa divide el software en capas o niveles con funciones especializadas. La más común es la de tres capas, que separa la presentación, la lógica/reglas de negocio y el almacenamiento/persistencia, de modo que cada capa solo se comunique con la siguiente. Esto permite un desarrollo independiente, mayor flexibilidad y escalabilidad. Otras arquitecturas comunes son la monolítica y la de dos capas cliente-servidor.