430 likes | 819 Views
Ezequiel T. Muñoz K. etmunoz@gmail.com , etmunoz@yahoo.com Ingeniero Civil Industrial, MBE (i) Departamento de Ingeniería Industrial Universidad de Chile. ARQUITECTURA TECNOLÓGICA DE APLICACIONES WEB – IN72J. Aplicaciones. Contexto Arquitectura. Arquitectura Empresarial CODELCO.
E N D
Ezequiel T. Muñoz K. etmunoz@gmail.com, etmunoz@yahoo.com Ingeniero Civil Industrial, MBE (i) Departamento de Ingeniería Industrial Universidad de Chile ARQUITECTURA TECNOLÓGICA DE APLICACIONES WEB – IN72J
Contexto Arquitectura Arquitectura Empresarial CODELCO Arquitectura del Negocio Arquitectura de Desarrollo e Integración Arquitectura de Calidad y Seguridad Estrategia del Negocio y Organización Arquitectura de Procesos de Negocios Arquitectura de Datos Arquitectura de Aplicaciones Arquitectura de Información Arquitectura de Aplicaciones (Portafolio) Arquitectura de Operaciones Arquitectura de Aplicaciones (Diseño) Arquitectura Técnica Arquitectura de Infraestructura Arquitectura de Operaciones
IN72J, ARQUITECTURA TECNOLOGICA DE APLICACIONES WEB Relación entre componentes, modelos y entornos de ejecución
Esquema de la arquitectura Aplicaciones clientes Dominio Base de datos Esquema externo Esquema conceptual Esquema interno
Dos Capas: Arquitectura Cliente Servidor (Tradicional). L.presentacion L.Aplicación Almacenamiento L.Accesos Datos L.Aplicación
IN72J, ARQUITECTURA TECNOLOGICA DE APLICACIONES WEB Estrategias Cliente/Servidor Adm. Datos Remota Pres. Dist. Pres. Remota Lógica Distrib. Base Dat. Distrib. DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM DM Servidor App App App App App App App App App App App App App App App App App App App App App App App App App App App App App App App App App App App App App App App Cliente Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre DM DM App App App App App App App App App App App App App App App App RED Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre Pre
IN72J, ARQUITECTURA TECNOLOGICA DE APLICACIONES WEB El Modelo Cliente/Servidor Client Platform Workstation OS A- dap- ter Dri- ver Net- work A- dap- ter Pre- sen- tation Inter- face Apli- ca- tion Apli- ca- tion Tools Data- base Acc- ess Net- work Pro- to- col oo Usuario N E T W O R K Server Platform Operating System A- dap- ter Dri- ver Net- work A- dap- ter Database Database Access Network Protocol
Arquitectura de Tres Capas • Pretende dar solución a los problemas enunciados anteriormente • Divide la aplicación en tres tipos de servicios • Visualización, Lógica y Datos
IN72J, ARQUITECTURA TECNOLOGICA DE APLICACIONES WEB Arquitectura multinivel con módulo Web
IN72J, ARQUITECTURA TECNOLOGICA DE APLICACIONES WEB Arquitectura de un Servidor de Aplicaciones
Agentes Móviles Paradigma de agentes moviles vs cliente servidor Servidor Cliente Know- how Agente Agente red Know- how Know- how Host Host
Agentes Móviles ReanudarEjecución Suspender Ejecución Deserializar Agente Serializar Agente Codificar Datos Decodificar Datos Transferir Datos Recibir Datos La Red
ASP ASP es un lenguaje de script (guión), que contiene además de tags de HTML, secuencias de comandos que el servidor resuelve, para luego enviar al navegador el resultado al Cliente en código HTML. Las secuencias de comandos quedan ocultas a los usuarios, estos solo reciben el resultado de la ejecución en formato HTML.
Visión General de una Aplicación (I) El siguiente gráfico ilustra la interacción disposición de una aplicación monocanal
Visión General de una Aplicación (III) La distribución, composición de la aplicación se complica a medida que se usan diferentes tipos de tecnología y se abren nuevos canales de reporting
IN72J, ARQUITECTURA TECNOLOGICA DE APLICACIONES WEB Arquitectura Java, Ejemplo
IN72J, ARQUITECTURA TECNOLOGICA DE APLICACIONES WEB Arquitectura de Aplicación J2EE (JEE)
IN72J, ARQUITECTURA TECNOLOGICA DE APLICACIONES WEB Otra vista de J2EE
IN72J, ARQUITECTURA TECNOLOGICA DE APLICACIONES WEB Componentes J2EE
IN72J, ARQUITECTURA TECNOLOGICA DE APLICACIONES WEB Contenedores Funciones Principales: - Gestión de Recursos y Ciclo de Vida - Entorno de Ejecución - Vista Uniforme de los Servicios
IN72J, ARQUITECTURA TECNOLOGICA DE APLICACIONES WEB Patrón de Diseño Model-View-Controler
MVC: Controlador Frontal / Arquitectura JSP Modelo 2 Las recomendaciones que propuso Sun para implementar una arquitectura MVC: JSP Modelo 1: diseños centrados en la página, las solicitudes son realizadas a la página encargada de generar la salida, sólo es aplicable para aplicaciones extremadamente simples, no es válido en aplicaciones complejas donde se requiera generación dinámica de contenido, agilidad en el cambio del flujo de la aplicación y del contenido.
MVC: Controlador Frontal / Arquitectura JSP Modelo 2 • JSP Modelo 2 o diseños de controlador. Permite llevar a cabo de una manera menos traumática los objetivos de generación dinámica de contenido, cambio del flujo de programa, cambio de contenido
MVC: Controlador Frontal / Arquitectura JSP Modelo 2 (I) Modelo: Contiene el núcleo de la funcionalidad (dominio) de la aplicación. Encapsula el estado de la aplicación. No sabe nada / independiente del Controlador y la Vista. Vista: Es la presentación del Modelo. Puede acceder al Modelo pero nunca cambiar su estado. Puede ser notificada cuando hay un cambio de estado en el Modelo. Controlador: Reacciona a la petición del Cliente, ejecutando la acción adecuada y creando el modelo pertinente.
IN72J, ARQUITECTURA TECNOLOGICA DE APLICACIONES WEB Arquitectura J2EE Típica
IN72J, ARQUITECTURA TECNOLOGICA DE APLICACIONES WEB Arquitectura J2EE con JSF
IN72J, ARQUITECTURA TECNOLOGICA DE APLICACIONES WEB JSF con MVC II
IN72J, ARQUITECTURA TECNOLOGICA DE APLICACIONES WEB JSF: Ciclo de Vida
IN72J, ARQUITECTURA TECNOLOGICA DE APLICACIONES WEB Arquitectura Three Tier y JSF
(X)HTML/ XML RMI/IIOP JNDI JTA JDBC JMS JavaMail JAF Applet Client Application RMI/IIOP JNDI JTA JDBC JMS JavaMail JAF Client Application Logic Data Web Container JDBC RDMS HTTP(S) Servlets JSPs Java Mail Tag Library Mail Server RMI J2EE Application Server Java Application EJB Container IIOP CORBA Server Session Beans Entity Beans JNDI Directory Service JMS Message Queue
IN72J, ARQUITECTURA TECNOLOGICA DE APLICACIONES WEB JPA: Java Persistence API
Ezequiel T. Muñoz K. etmunoz@gmail.com, etmunoz@yahoo.com Ingeniero Civil Industrial, MBE (i) Departamento de Ingeniería Industrial Universidad de Chile ARQUITECTURA TECNOLÓGICA DE APLICACIONES WEB – IN72J