Daniel López Azaña

Tema

Social Media

Blog

GNU/Linux, Open Source, Cloud Computing, DevOps y más...

¿Qué es la arquitectura web?

Reflexiones
Arquitectura y desarrollo web

Arquitectura tecnológica

Antes de poder entrar a definir lo que es la arquitectura web primero es necesario enmarcarla correctamente. Dentro del sector de las tecnologías de la información hay diversos roles relacionados con la arquitectura, pero básicamente podríamos hacer la siguiente división:

  • Arquitectos de sistemas : conjugan distintos elementos hardware (máquinas y otros dispositivos) con elementos software (sistemas operativos) para construir sistemas capaces de ofrecer los recursos que necesitan las distintas aplicaciones o servicios destinados a correr sobre ellos.

Esquema típico manejado por un arquitecto de sistemas

  • Arquitectos de datos : diseñan cómo se va a estructurar la información manejada por las aplicaciones mediante el uso de bases de datos.

Esquema típico manejado por un arquitecto de datos

  • Arquitectos de almacenamiento : diseñan redes de almacenamiento (SAN) que permitan almacenar toda la información que generan las distintas aplicaciones que corren sobre los sistemas de información.

Esquema típico manejado por un arquitecto de almacenamiento

  • Arquitectos de redes : planean y diseñan las redes de comunicación que permitan el intercambio de datos entre distintos sistemas de información.

Esquema típico manejado por un arquitecto de redes

  • Arquitectos de software : más típicamente conocidos como ingenieros de software , diseñan y construyen las aplicaciones que van a permitir ofrecer el servicio que necesitan los usuarios de los sistemas de información u otras aplicaciones.

Arquitectura web

Sería en este último grupo donde se encuadrarían los arquitectos web , como un subgrupo de los arquitectos de software especializado en diseñar y contruir aplicaciones que se van a utilizar a través de lo que conocemos como la Web, es decir, haciendo uso del protocolo HTTP para comunicarse con el usuario o con otras aplicaciones web.

A veces esta división no es tan clara, sobre todo en proyectos de menor tamaño donde el arquitecto web puede tener que llevar a cabo tareas como la selección y el dimensionamiento de las plataformas hardware y software en las que se apoyará una aplicación web, dimensionar el tráfico de red que va a generar la aplicación y dotarla de los recursos necesarios para que pueda asumir dicho tráfico, diseñar cuestiones relativas al almacenamiento y la disponibilidad de los datos como la replicación de bases de datos, etc.

Conceptos de desarrollo web

En cualquier caso, las competencias que genuinamente son propias de un arquitecto web son las siguientes:

  • Diseño de la interfaz de usuario de la aplicación web. En el caso de un sitio web se referiría al diseño de la propia web, tanto su aspecto visual (colores, imágenes, tipografía empleada, posicionamiento de los distintos bloques de contenido dentro de las distintas páginas, etc.), como de la estructuración de los contenidos en diversas secciones y apartados enlazables a través de un menú con las distintas opciones disponibles. Aquí entrarían en juego distintas disciplinas como las del diseño gráfico , la usabilidad , la experiencia de usuario (UX) , la interacción usuario-máquina, los mapas del sitio o mapas web, etc., así como distintos términos como HTML5, CSS, DOM, Javascript, AJAX, estándares web, etc.
  • Diseño e implementación de la lógica de la aplicación , es decir, del conjunto de funcionalidades que ofrecerá ésta, como el procesamiento de los datos introducidos por el usuario, el cálculo de resultados a partir de distintos datos de entrada, el diseño y ejecución de algoritmos , la manipulación de la información almacenada en una base de datos, la ejecución de diversas acciones como consecuencia del cumplimiento de diversas condiciones o del disparo de algún evento, etc. Es decir, planear y diseñar lo que luego se llevará a cabo mediante el uso de uno o varios lenguajes de programación.
  • El arquitecto de datos se ocupa más de dimensionar y diseñar la implementación de un motor de base de datos concreto, mientras que la arquitectura de la información que maneja un arquitecto web se ocupa más de la propia naturaleza de la información en sí y de como se organiza ésta dentro de una base de datos.

Diseño de la arquitectura de la información , es decir, determinar la información del mundo real que tendrá que tratar una aplicación, diseñar un modelo conceptual que sea un fiel reflejo de dicho mundo real con sus distintas entidades y relaciones entre dichas entidades, determinar el modelo de datos que mejor se adapte a dicho modelo conceptual, implementar ese modelo de datos sobre un motor de bases de datos concreto y trasladar a él la información necesaria para el correcto funcionamiento de nuestra aplicación. No confundir todo esto con la labor de un arquitecto de datos, que sería la de organizar la información presente en estas bases de datos para un mejor aprovechamiento de los recursos disponibles, es decir, determinar qué volúmenes o qué discos físicos se asignan a dichas bases de datos, cómo replicar dichos volúmenes para conseguir redundancia de datos, cómo optimizar el uso de memoria o de entrada/salida que hace la base de datos, etc.

Arquitectura web
Daniel López Azaña

Sobre el autor

Daniel López Azaña

Emprendedor tecnológico y arquitecto cloud con más de 20 años de experiencia transformando infraestructuras y automatizando procesos.

Especialista en integración de IA/LLM, desarrollo con Rust y Python, y arquitectura AWS & GCP. Mente inquieta, generador de ideas y apasionado por la innovación tecnológica y la IA.

Artículos relacionados

Mi primer post

Mi primer post

Pese a llevar muchísimo tiempo relacionado con Internet en general y la blogosfera en particular, nunca hasta ahora me había decidido a escribir mi propio blog.Desde hace muchos años sigo multitud de bitácoras y dejo en ellas mis contribuciones en forma de comentarios u observaciones. Del mismo modo participo en numerosos foros y debates ofreciendo y solicitando ayuda en muchas y variadas disciplinas. Y por supuesto también hago mis aportaciones escribiendo algún que otro artículo de vez en cuando, como en el caso del blog de Gretur Viajes.

2 de octubre de 2011
JAMstack Architecture - JavaScript APIs Markup

¿Qué es JAMstack? Arquitectura moderna para sitios web ultra-rápidos

Descubre cómo JAMstack revoluciona el desarrollo web con sitios estáticos pre-generados servidos desde CDN global. Velocidad excepcional, seguridad mejorada, escalabilidad ilimitada y costes mínimos de hosting comparados con CMS tradicionales.

3 de noviembre de 2025
Xorg icon

Cómo evitar que el fichero .xsession-errors alcance un tamaño enorme

El fichero .xsession-errors es un fichero de log que utiliza el sistema de ventanas X para registrar todos los errores que se producen en el entorno gráfico de Linux. Dado que todos los entornos de escritorio, ya sea Gnome, KDE, Cinnamon, XFCE, LXDE, etc., y todos los gestores de ventanas más livianos que no llegan a constituir un entorno de escritorio como FVWM, IceWM o Window Maker utilizan el sistema de ventanas X, al final cualquier aplicación gráfica que ejecutemos en nuestro ordenador puede provocar que se escriban mensajes de error en el fichero .xsession-errors, por lo que éste puede crecer de forma descontrolada hasta alcanzar fácilmente un tamaño muy grande de decenas de GB o incluso cientos si la capacidad de nuestro disco lo permite.

25 de junio de 2017

Comentarios

Yuser 26 de abril de 2018
Que relación hay entre la Arquitectura web y bpmn?
Vilma 2 de diciembre de 2019
Daniel clara tu explicacion. Leere tus conceptos y ejemplos. Estoy tratando de retomar, abandone la tecnologia, y estoy como en el fondo del vaso.

Enviar comentario