En el contexto de la ingeniería del software el desarrollo de la arquitectura tiene que ver con la estructuración de un sistema para satisfacer los requerimientos de clientes y otros involucrados, en especial los requerimientos de atributos de calidad. En el momento tecnológico que nos encontramos interactuamos con muchos sistemas de software con necesidades cada vez más complejas, como el desempeño, disponibilidad o facilidad de uso, razón por la cual la arquitectura es un tema fundamental.