arquitectura de las aplicaciones web
Click here to load reader
Transcript of arquitectura de las aplicaciones web
1
URJC - Aplicaciones para la Web
Introducción a la Arquitectura de Aplicaciones para la Web
1R. Capilla
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
2R. Capilla
La WWW está basado en el modelo Cliente / Servidor.
El Cliente principal en el WWW son los browsers o navegadores que solicitan información al Servidor.
El Servidor son los Servidores Web que proporcionan documentos y contenidos multimedia a los clientes a través de la red.
Introducción (I)
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
3R. Capilla
Los “clientes” realizan peticiones de información a los “servidores”.
Las peticiones de información en el Web se realizan a través de la red (Internet / Intranet).
Las peticiones vía Web utilizan el protocolo HTTP para realizar las transacciones dentro del modelo Cliente / Servidor.
Introducción (II)
2
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
4R. Capilla
Además del modelo Cliente / Servidor existen otros tipos de “Arquitecturas” para organizar la información y los elementos y actores de un modelo determinado.
Una Arquitectura define: un conjunto de elementos, conectores, restricciones y un sistema de control que caracterizan a un sistema o a una familia de sistemas.
Introducción (III)
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
5R. Capilla
La heterogeneidad de los contenidos Web y su distribución en la red facilitan esquemas distribuidos.
Estos esquemas distribuidos orientados a proporcionar servicios a las aplicaciones suelen basarse en modelos de componentes distribuidos (CORBA, RMI, DCOM).
Introducción (IV)
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
6R. Capilla
Applets utilizando RMI
Introducción (V)
Browser
HTML
Applet
ServidorWeb
Soporte RMI Objeto
remoto
Servidor de Aplicaciones
HTTP
3
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
7R. Capilla
Introducción (VI)
ORB
PeticionesCliente Implementación
del Objeto
CORBA ORB
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
8R. Capilla
DCOM en una Aplicación Web
Introducción (VII)
Browser
HTML
ActiveX
ServidorWeb
ObjetoCOM
Servidor de Aplicaciones
HTTP
DCOM DCOM
SCM
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
9R. Capilla
XML-RPC
Introducción (VIII)
HTTP como transporte y XML como codificación
RPC: Llamada a procedimiento remoto
4
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
10R. Capilla
Los modelos de capas son utilizados por las aplicaciones Web dentro de la filosofía Cliente / Servidor.
Los modelos esquemas más habituales son las arquitecturas de dos y tres capas
Arquitecturas de Capas (I)
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
11R. Capilla
Arquitectura de dos Capas:Utilizados en esquemas poco complejos (simplicidad del diseño).Los datos y los servicios Web aparecen juntos.Difícil de separar los datos de la “lógica de negocio”.Menor seguridad en los “datos corporativos”.El cliente recibe los datos y la información directamente del servidor.
Arquitecturas de Capas (II)
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
12R. Capilla
Esquema general del modelo de dos capas:
Arquitecturas de Capas (III)
Cliente
ServidorWeb
AplicacionesCGIs – Scripts
ServiciosDatos
HTTP
Peticiones
Respuestas
5
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
13R. Capilla
Arquitectura de tres Capas:Utilizados en esquemas más complejos.Los datos y los servicios Web aparecen separados.Facilidad para separar datos de la “lógica de negocio”.Mayor seguridad en los “datos corporativos”.El cliente recibe los datos y la información de forma indirecta a través servidor.
Arquitecturas de Capas (IV)
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
14R. Capilla
Arquitecturas de Capas (V)
Navegador
Cliente LAN
Servidor Web
Servicios de
AplicacionesDatos
HTTP
Firewall
Capa 1 Capa 3Capa 2
Lógica de Negocio
Interfaz dePresentación
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
15R. Capilla
Arquitecturas de tres capas:
Los Servidores de Aplicaciones actúan como un enlace entre los servidores Web y las aplicaciones empresariales.
Se fomenta la escalabilidad del sistema, la seguridad y la reutilización de código.
Arquitecturas de Capas (VI)
6
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
16R. Capilla
Arquitecturas de Capas (VII)
A nivel empresarial la Arquitectura de tres capas fomenta:
Construir aplicaciones de negocio y de comercio electrónico.Construir aplicaciones mediante la tecnología de objetos distribuidos.Construir aplicaciones escalables.
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
17R. Capilla
Arquitecturas de Capas (VIII)
Navegador
Cliente LAN
BBDDHTTP
Firewall
Capa 1 Capa 3Capa 2
IIS
ASPScripts
MTS
ObjetosCOM
DCOM
MainframeAplicacionesDatos
Modelo de componentes,transacciones y seguridad
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
18R. Capilla
Arquitecturas de Capas (IX) Arquitectura de Capas para Transacciones en la Web
7
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
19R. Capilla
Arquitecturas de Capas (X)
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
20R. Capilla
Las diferentes arquitecturas deben distinguir entre:
Modelo Físico: como se organizan los elementos y componentes de la arquitectura.
Modelo Lógico: como se organizan los datos y la información que utiliza un modelo físico determinado.
Distribución Física y Lógica (I)
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
21R. Capilla
Distribución Física y Lógica (II)
Navegador
Máquina 1www1.urjc.es
Máquina 1www2.urjc.es
Máquina 1www3.urjc.es
RED
WWW.URJC.ES
HTTP
Distribución de Recursos:Aplicaciones, datos y máquinas
8
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
22R. Capilla
Arquitecturas B2B, B2C y B2E (I)
Existen diversos tipos de arquitecturas y modelo de negocio basados en la Web que utilizan aplicaciones Web para fomentar el comercio electrónico (e-commerce y e-business), como por ejemplo:
B2B: Business to BusinessB2C: Business to ConsumerB2E: Business to Employee
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
23R. Capilla
Arquitecturas B2B, B2C y B2E (II)
Características del Business to Consumer (B2C)Orientados al comercio electrónico de particulares a sectores concretos (e-commerce).Portales y aplicaciones horizontales (e.g.: amazon)Rapidez en las compras y pago electrónico (VISA, AMEX, etc.)Mecanismos de seguridad.
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
24R. Capilla
Arquitecturas B2B, B2C y B2E (III)
Tienda WebFirewall
ISP
ISP
ISP
Compradorcon Browser
Compradorcon Browser
Compradorcon Browser
Arquitectura B2C
9
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
25R. Capilla
Arquitecturas B2B, B2C y B2E (IV)
Características del Business to Business (B2B)Orientados al negocio electrónico entre comunidades con intereses comunes (e-business).Mayor volumen de negocio que en el esquema B2C.Portales y aplicaciones sectoriales (e.g.: seguros, banca, informática, etc.)Rapidez en las compras.Mecanismos de seguridad.
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
26R. Capilla
Arquitecturas B2B, B2C y B2E (V)
Modelos B2B (I)Modelo de un solo comprador y varios vendedores: compañías que utilizan los servicios web para comprar de vendedores autorizados. Modelo de un solo vendedor y varios compradores: compañías que utilizan los servicios web para vender productos y servicios a otras compañías.
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
27R. Capilla
Arquitecturas B2B, B2C y B2E (VI)
Modelos B2B (II)Modelo de mercado electrónico (varios compradores y vendedores): representan “supermercados” o centros de ventas en la red donde múltiples clientes y vendedores compran y venden.
10
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
28R. Capilla
Arquitecturas B2B, B2C y B2E (VII)
Modelos B2B (III)Modelo de partners de mercado (normalmente un vendedor un comprador): constituyen acuerdos o contratos entre dos o más compañías para hacer e-business.
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
29R. Capilla
Arquitecturas B2B, B2C y B2E (VIII)
Características del Business to Employee (B2E)El modelo se centra en el empleado, trabajador o individuo.Portales altamente personalizados.Las compañías ofrecen productos y servicios a sus empleados.Integran la horizontalidad y la verticalidad.Permiten gestionar los recursos humanos.
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
30R. Capilla
Arquitecturas C2C
Características del Consumer to Consumer (C2C)Orientados a las transacciones entre clientes.El pago no siempre es electrónico.Los consumidores interactúan entre ellos y definen los precios.
Ejemplos: portales de subastas.
11
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
31R. Capilla
Otras arquitecturas
B2B2C: un negocio vende a clientes usando un vendedor como intermediario.C2B2C: venta entre consumidores a través de un intermediario.P2P (Person to Person): pago entre individuos a través de una transacción (e.g.: una subasta o sistemas de pago vía móvil).
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
32R. Capilla
Comercio Electrónico (I)
Los modelo mencionados se utilizan en esquemas de comercio electrónico (e-commerce) y negocio electrónico (e-business).
El objetivo es utilizar los servicios Web e Internet como medio para realizar transacciones comerciales entre empresas y usuarios.
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
33R. Capilla
Comercio Electrónico (II)
MotivosLos usuarios (clientes) no están ligados en un espacio geográfico determinado.Los servicios y mercados pueden globalizarse y distribuirse de una manera más fácil y con menores costes.Se llega a un mayor número de clientes.
12
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
34R. Capilla
Comercio Electrónico (III)
Los sistemas de comercio electrónico utilizan el concepto de Perfiles de Usuario para definir sus productos y campañas informativas. Los perfiles de usuario identifican grupos de usuarios con características y preferencias comunes.Los perfiles de usuario determinan partes concretas de un sistema de comercio electrónico y campañas de marketing.
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
35R. Capilla
Comercio Electrónico (IV)
Perfil 1
Perfil 2
Perfil 3
Perfil 4
SISTEMADE
PERSONALIZACION
CookiesBanners
WebE-commerce
EncuestasPáginasVisitadas
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
36R. Capilla
Comercio Electrónico (V)
PERSONALIZACIONLa personalización 1:1 no es viable.Existe personalización de usuarios registrados.Existe personalización de usuarios anónimos.Existen recomendaciones personalizadas.
13
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
37R. Capilla
Comercio Electrónico (VI)
Ciclo de Personalización
Análisis ypropuesta
Implementación
Atención alusuario
Generación deinformación
Recopilación deresultados
Información generada por los usuarios. Diseño de mecanismos de personalización
Incluir elementos Webpersonalizables
Interacción con el usuario
Informes a medida
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
38R. Capilla
Comercio Electrónico (VII)
Equema global de un Sistema de Personalización de Perfiles para la Web
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
39R. Capilla
Comercio Electrónico (VIII)
Arquitectura del Sistema de Personalización
Logs
Contenidos
Front-endGestión de Contenidos
ServidorWeb
AdministradorGestión de Contenidos
Observador Motor dePersonalización
PerfilesAdministración
de Personalización
B.I. eCRM
14
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
40R. Capilla
Comercio Electrónico (IX)
Banners
Noticias
ConcursosTerra Compras
Terra TV
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
41
Bibliografía Consultada
[BASS 98] L. Bass, P. Clements y R. KazmanSoftware Architecture in Practice. Ed. Addison-Wesley, 1998
[ROSE 98] L. Rosenfeld y P. MorvilleInformation Architecture for the World Wide Web Ed. O’Reilly & Associates, 1998
R. Capilla
URJC - Aplicaciones para la Web
Tema 4: Arquitectura de Aplicaciones para la Web
42
Direcciones Web Consultadas
http://www.microsoft.com
http://www.omg.org
http://www.corba.org
http://java.sun.com
http://www.communityb2b.com
http://www.b2byellowpages.com
http://www.b2business.net
R. Capilla
http://www-1.ibm.com
http://www.pwcconsulting.com
http://www.canaltai.com
http://www.rational.com