Title: Gestin de Sistemas en Internet
1Gestión de Sistemas en Internet
Curso 2003/04
- Tema 5b Arquitecturas Multicapa
http//www.nebrija.es
Vicente Orjales Padín. vorjales_at_denodo.com
Departamento de Ingeniería Informática Escuela
Politécnica Superior. Univ. Antonio de Nebrija
2Índice
- Introducción
- Aplicaciones corporativas
- Organización en capas (Layering)
- Distribución en capas
- Lógica de Negocio
- Presentación Arquitecturas multicanal
- Fuentes de información Integración de fuentes
heterogéneas
3Introducción
- ARQUITECTURA
- Partes principales de una arquitectura y cómo se
organizan entre ellas. - La organización más común es la basada en capas
(patrón arquitectónico Layering). - A su vez esas capas pueden organizarse en
componentes. - PATRÓN
- Cada patrón describe un problema que ocurre una
y otra vez en nuestro entorno, y, luego, describe
el núcleo de la solución a ese problema de forma
que podamos utilizar esa solución millones de
veces una y otra vez (Christopher Alexander) - No se inventan, se descubren
- Patrones Anásis, Diseño, Arquitectura.
4Introducción Aplicación corporativa
- Qué es? Gestión de pacientes, Registro
transportes, Análisis de costes, B2B,
e-commerce... - Qué no es? Procesador de textos, sistema de
inyección del automóvil, SO, compilador,
aplicación controladora de hub, ... - Características Aplicaciones Corporativas
- Información persistente y en gran volumen
- Distribuida
- Múltiples usuarios concurrentes
- Múltiples frontales de acceso
- Integración con otros sistemas
- Lógica de negocio compleja
- Seguras
5Organización en capas
- Una de las técnicas más utilizadas para dividir
en partes un sistema software complejo - Ejemplos de utilización de capas
- Networking FTP / TCP / IP / Ethernet
- OS OS calls / drivers / CPU ins.
- Cada capa utiliza los servicios de la capa sobre
la que se apoya
6Organización en capas
- Ventajas
- Independencia entre capas
- Fácil sustitución de servicios con
implementaciones alternativas - Fácil reutilización por capas superiores
- Limitaciones
- No se encapsula todo. Ejemplo Adición de campos
en BD - Se degrada el rendimiento
7Organización en capas Principales capas
- PRESENTACIÓN
- Trata interacción entre el usuario y el software
- Cliente pesado vs. Cliente web
- LÓGICA DEL DOMINIO
- Reglas del negocio trabajo que la AC necesita
realizar para nuestro dominio particular - FUENTE DE DATOS
- Comunicación con otros sistemas que realizan
tareas en la AC - Normalmente SGBD o legacy systems
8Organización en capas Principales capas
Presentación
Lógica del Dominio
Fuentes de Datos
9Cuándo segmentar en qué capas?
- Depende de cada solución particular
- Sistemas complejos
- Pueden incrementarse las capas.
- Construir arquitectura basada en componentes
- Sistemas simples Presentación Datos
- Lógica de negocio contenida en capa de
presentación - Ejemplo típico PHP MySQL / ASP Access / ...
- No recomendable
- En ocasiones Lógica Dominio Sistema Negocio
10Distribución de capas
- Capas lógicas
- Se reduce el acoplamiento entre las partes del
sistema - Útil independientemente de donde se ejecuten
- El modelo debe ser reusable con distintas vistas
- Despliegue dónde distribuir las capas
- Presentación Lógica en sistemas clientes ?
- Presentación en sistema cliente Lógica en
servidor ? - Solución completa en servidor ?
- Solución mixta ?
11 Distribución de capas 2 niveles
12Distribución de capas. 2 niveles
- Presentación y lógica de negocio se encuentran
en el cliente - Inconvenientes
- Consumo de ancho de banda elevado
- No reutiliza conexiones a la BD
- Difícil de mantener
- Cambios esquema
- Cambios drivers
- Cambios tipo de la BD
- ....
- Difícil de escalar
13Distribución de capas 3 niveles
14Distribución de capas 3 niveles con presentación
web
15Distribución de capas 3 niveles con presentación
web (escalado de servidores)
16Distribución de capas Solución híbrida
- Con replicación en las 3 capas ? máxima
escalabilidad - y tolerancia a fallos para aplicaciones Internet
e intranet
17Capa de Presentación Arquitecturas multicanal
- Utilizar aplicaciones basadas en ventanas
dificulta su actualización y mantenimiento - Frontales web
- Los clientes sólo necesitan un navegador
(filosofía thin client). - Interfaz desplegada en el servidor ? fácil
administración - Interfaces válidas en intranet e Internet
- Otros frontales
- Wireless, ITV, ...
- Similares al web en cuanto arquitectura
18Capa de presentación Arquitectura multicanal
...
WEB
WAP
ITV
Lógica del Dominio
Fuentes de Datos
19Lógica del Dominio
- Modelo del Dominio (Domain Model)
- Módulo Tabla (Table Module)
- Organización en componentes no es excluyente con
las dos anteriores.
20Fuente de Datos Heterogeneidad
- Bases de Datos
- Casi todas relacionales
- Documentos XML
- Sistemas legacy
- Fuentes no estructaras.
- El ejemplo más habitual páginas web
- Sistemas de directorio
- Ejemplo LDAP
- En general no tendremos una única fuente. Nuestro
sistema corporativo se nutrirá de múltiples
fuentes de información. Elevado grado de
heterogeneidad
21Integración de fuentes heterogéneas
PRESENTACIÓN
V
M
L
T
V
I
LÓGICA DEL DOMINIO
A
P
L
I
C
A
C
I
Ó
N
1
A
P
L
I
C
A
C
I
Ó
N
2
A
P
L
I
C
A
C
I
Ó
N
N
I
N
T
E
R
F
A
Z
D
E
C
O
N
S
U
L
T
A
CAPA LÓGICA (AGREGACIÓN)
W
R
A
P
P
E
R
1
CAPA FÍSICA (EXTRACCIÓN)
F
U
E
N
T
E
1