arquitectura de las aplicaciones web

14

Click here to load reader

Transcript of arquitectura de las aplicaciones web

Page 1: 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)

Page 2: arquitectura de las aplicaciones web

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

Page 3: arquitectura de las aplicaciones web

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

Page 4: arquitectura de las aplicaciones web

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

Page 5: arquitectura de las aplicaciones web

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)

Page 6: arquitectura de las aplicaciones web

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

Page 7: arquitectura de las aplicaciones 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

Page 8: arquitectura de las aplicaciones web

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

Page 9: arquitectura de las aplicaciones web

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.

Page 10: arquitectura de las aplicaciones web

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.

Page 11: arquitectura de las aplicaciones web

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.

Page 12: arquitectura de las aplicaciones web

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.

Page 13: arquitectura de las aplicaciones web

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

Page 14: arquitectura de las aplicaciones web

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