Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
La arquitectura de una webapp describe una infraestructura que permite que un sistema o
aplicación basados en web alcance sus objetivos empresariales. Jacyntho et al. [Jac02b] describe las
características básicas de esta infraestructura del modo siguiente: Las aplicaciones deben
construirse con el empleo de capas en las que se tomen en cuenta distintas preocupaciones; en
particular, deben separarse los datos de la aplicación de los contenidos de ésta (nodos de
navegación), y éstos, a su vez, deben separarse con toda claridad del aspecto y la sensación de la
interfaz (páginas). Los autores sugieren una arquitectura del diseño en tres capas que desacopla la
interfaz de la navegación y del comportamiento de la aplicación. Plantean que mantener separadas
la interfaz, la aplicación y la navegación, simplifica la implementación y mejora la reutilización. La
arquitectura de controlador de la vista del modelo (CVM) [Kra88] 9 es uno de varios modelos
sugeridos para la infraestructura de webapps que desacoplan la interfaz de usuario de sus funciones
y contenido informativo. El modelo (a veces denominado “objeto de modelo”) contiene todo el
contenido y la lógica de procesamiento específicos de la aplicación, incluso todos los objetos de
contenido, acceso a fuentes de datos o información externos y todas las funciones de
procesamiento que son específicas de la aplicación. La vista contiene todas las funciones específicas
de la interfaz y permite la presentación de contenido y lógica de procesamiento, incluidos
todos los objetos de contenido, el acceso a fuentes de datos o información del exterior y todas las
funciones de procesamiento que requiere el usuario final. El controlador administra el acceso al
modelo y la vista, y coordina el flujo de datos entre ellos. En una webapp, “la vista es actualizada
por el controlador con datos del modelo, basándose en las entradas que da el usuario” [WMT02].
En la figura 13.8 se muestra una representación de la arquitectura CVM. En relación con la figura, el
controlador maneja las solicitudes o datos del usuario. El controlador también selecciona el objeto
de vista que sea aplicable con base en la solicitud del usuario. Una vez determinado el tipo de
solicitud, se transmite al modelo un pedido de comportamiento, que implementa la funcionalidad
o recupera el contenido requerido para dar acomodo a la solicitud. El objeto de modelo accede a
https://docs.microsoft.com/es-es/dotnet/architecture/modern-web-apps-azure/common-web-
application-architectures
https://programacionwebisc.wordpress.com/2-1-arquitectura-de-las-aplicaciones-web/
los datos almacenados en una base de datos corporativa, como parte de un almacén de datos locales
o como una colección de archivos independientes. El objeto de vista apropiado debe dar formato y
organizar los datos desarrollados por el modelo para luego trasmitirlos desde el servidor de la
aplicación hacia el navegador del cliente para que se desplieguen en la máquina de éste. En muchos
casos, la arquitectura de la webapp se define en el contexto del ambiente de desarrollo en el que
va a implementarse la aplicación. Si el lector está interesado, puede consultar en [Fow03] el análisis
de los ambientes de desarrollo y el papel que juegan en el diseño de arquitecturas de aplicaciones
web.
Una aplicación Web es proporcionada por un servidor Web y utilizada por usuarios que se Conectan
desde cualquier punto vía clientes Web (browsers o navegadores). La arquitectura de un Sitio Web tiene tres
componentes principales:
Un servidor Web
Las aplicaciones Web están basadas en el modelo Cliente/Servidor que gestionan servidores web, y que
utilizan como interfaz páginas web.
Las páginas Web son el componente principal de una aplicación o sitio Web. Los browsers
piden páginas (almacenadas o creadas dinámicamente)
con información a los servidores Web. En algunos ambientes de desarrollo de aplicaciones Web,
las páginas contienen código HTML y scripts dinámicos, que son ejecutados por el servidor antes de
entregar la página.
Una vez que se entrega una página, la conexión entre el browser y el servidor Web se rompe, es decir que la
lógica del negocio en el servidor solamente se activa por la ejecución de los scripts de las páginas solicitadas
por el browser (en el servidor, no en el cliente). Cuando el browser ejecuta un script en el cliente, éste no
tiene acceso directo a los recursos del servidor. Hay otros componentes que no son scripts, como
los applets (una aplicación especial que se ejecuta dentro de un navegador) o
los componentes ActiveX. Los scripts del cliente son por lo general código JavaScript o VBSscript,
mezclados con código HTML.
https://docs.microsoft.com/es-es/dotnet/architecture/modern-web-apps-azure/common-web-
application-architectures
https://programacionwebisc.wordpress.com/2-1-arquitectura-de-las-aplicaciones-web/
La colección de páginas son en una buena parte dinámicas (ASP, PHP, etc.), y están agrupadas lógicamente
para dar un servicio al usuario. El acceso a las páginas está agrupado también en el tiempo (sesión). Los
componentes de una aplicación Web son:
1. Lógica de negocio.
Manipulación de BD y archivos.
3. Interfaz
Modelo de dos capas: La información atraviesa dos capas entre la interfaz y la administración de los datos.
Modelo de n-capas: La información atraviesa varias capas, el más habitual es el modelo de tres capas.
Modelo de dos Capas.
Cliente (fat client): La lógica de negocio está inmersa dentro de la aplicación que realiza el interfaz de usuario,
en el lado del cliente.
Es difícilmente escalable
La flexibilidad es restringida
La funcionalidad es limitada.
https://docs.microsoft.com/es-es/dotnet/architecture/modern-web-apps-azure/common-web-
application-architectures
https://programacionwebisc.wordpress.com/2-1-arquitectura-de-las-aplicaciones-web/
Modelo de tres Capas.
Esta diseñada para superar las limitaciones de las arquitecturas ajustadas al modelo de dos capas, introduce
una capa intermedia (la capa de proceso) Entre presentación y los datos, los procesos pueden ser
manejados de forma separada a la interfaz de usuari o y a los datos, esta capa intermedia centraliza la
lógica de negocio, haciendo la administración más sencil a, los datos se pueden integrar
de múltiples fuentes, las aplicaciones web actuales se ajustan a este modelo.
Generan la presentación
Recupera datos
https://docs.microsoft.com/es-es/dotnet/architecture/modern-web-apps-azure/common-web-
application-architectures
https://programacionwebisc.wordpress.com/2-1-arquitectura-de-las-aplicaciones-web/
https://docs.microsoft.com/es-es/dotnet/architecture/modern-web-apps-azure/common-web-
application-architectures
https://programacionwebisc.wordpress.com/2-1-arquitectura-de-las-aplicaciones-web/