Documentos de Académico
Documentos de Profesional
Documentos de Cultura
IntroduccionSD EnricMartinez PDF
IntroduccionSD EnricMartinez PDF
Distribuidos
2
Presentacin
Este libro est dedicado al Diseo de Aplicaciones en Sistemas Distribuidos con los
dos entornos posibles, Sistemas Operativos convencionales e Internet. En los
sistemas informticos ambas soluciones coexisten, se complementan y refuerzan
mutuamente.
Otro objetivo fundamental de esa primera parte es definir una capa lgica que, sobre la
capa fsica que proporciona la plataforma distribuida, permita disear aplicaciones
trasparentes a las condiciones especficas de esa plataforma. Surgir el concepto de
servicio como pieza fundamental del diseo y a la arquitectura SOA (Arquitectura
orientada a Servicios) como paradigma de diseo
La tercera parte desarrolla un ejemplo completo con ampliaciones que se proponen como
trabajo adicional para el lector.
3
Sistemas Distribuidos
1. Nos situamos?
As pues, por encima de la nube estn los usuarios i clientes, tanto finales como los
profesionales que reutilizan los servicios, y por debajo, los constructores y
suministradores de esos servicios.
Esta doble visin, no excluyente ya que los constructores pueden ser a si mismo
clientes cuando reutilizan servicios, estar presente en todo el documento que tiene
entre manos.
Esta definicin no obliga a que los servicios sean internos ni fabricados por la
propia organizacin.
En l se integran.
Objetivos de la
Empresa
Conectividad
Cuadro de
Mandos
Datos
Gestin del
Plataforma de Sistema
proceso
Seguridad
Interfcies
Aplicaciones
Servicios
Software
Infraestructura.
} Plataforma.
} Comunicaciones.
Datos.
Software:
} Aplicaciones.
} Interfcies.
} Servicios.
Seguridad.
Pero no olvidemos que detrs del sistema operativo hay personas que lo usan y los
gestionan. El factor humano ser fundamental como nos cuidaremos de recordar a
lo largo del todo el diseo.
Los servicios permitirn usar todos los recursos tcnicos y el sistema distribuido
resultante no ser nada ms, ni nada menos, que un conjunto de servicios que
interoperan entre ellos colaborando para cumplir los objetivos que se han establecido
para el sistema.
Los sistemas distribuidos que se diseen y construyan deben estar alineados con los
objetivos de negocio de la empresa, aumentar la eficacia y eficiencia operacional de la
compaa y permitir el mayor rendimiento con el menor coste en las estructuras
informticas que dan soporte.
El sistema resultante debe ser adaptable, ofrecer el rendimiento necesario con el coste
ms barato que seamos capaces de conseguir.
Con este objetivo final, empezamos nuestro viaje para el cual le voy a pedir un
esfuerzo. Las tecnologas llegan, se consolidan o desaparecen, y al final mueren. Y
siempre con facilidad y rapidez.
Pero las estrategias, las tcticas y las tcnicas de diseo tienen un ciclo de vida
mucho ms lento y robusto. Y estn por encima de las tecnologas en que se
implementan. Intente poner en su mochila solo las primeras. Este es un viaje por el
mundo del diseo de sistemas distribuidos, no sus tcnicas de implementacin aunque
haremos las necesarias salidas a ese mundo cunado sea necesario.
As, en el mundo de los sistemas distribuidos donde conviven tantos factores y tan
diferentes, es lgico que el trmino se utilice profusamente en varios lugares. Veamos
la primera aparicin.
Es en este ltimo aspecto por el que nos conviene acercarnos a ella. Sus contenidos
son prerrequisitos que los sistemas distribuidos debern cumplir. Es de aqu donde se
origina el Plan Estratgico Distribuido de la Compaa, donde se registrarn todos
los prerrequisitos de desarrollo y gestin que los sistemas distribuidos de la compaa
debern seguir y cumplir. Veremos que este documento se utilizar en la segunda
parte dedicada al diseo, como base de muchas decisiones a tomar durante el
desarrollo del sistema distribuido.
Describe como trabaja la compaa. Incluye las relaciones con terceros y los
planes de evolucin desde el estado actual al objetivo deseado.
Entre otros, los elementos a gestionar dentro de un proceso BPM son, entre
otros:
Mapas de procesos.
Modelizacin de los procesos.
Reglas de negocio.
Modelo conceptual de datos.
Integracin de datos y procesos.
Descripcin de procesos dentro de un marco SOA.
Diseo de los procesos dentro de aplicaciones distribuidas SOA..
Mapa de eventos-respuestas.
Anlisis
de
afinidad
y Clientes Proveedores Colaboradores
integraci
n de
procesos
., etc..
Terceros
Sistema
Sistema
Distribuido
Distribuido
3. 2. La Perspectiva basado
basadoenen
Recursos
de Aplicacin Humanos servicios
servicios
(Aplication
Perspective).
Procesos
Define las Procedimientos
aplicaciones de Calidad Cuadro de mandos
la empresa.
Son
componentes Figura 3. Arquitectura para organizar los procesos de negocio.
clsicos de la perspectiva de aplicacin:
1. Introduccin.
Vamos a recordarlas.
2. Programa monoltico.
Este programa, que voy a llamar monoltico, no debe confundirse con el programa
que utiliza servicios estticamente al estar incorporados al programa en el momento
de linkarlo.
Una vez presentado, creo que podemos convenir que no hay nada ms que hablar
sobre l y olvidarlo.
3. Arquitectura Batch.
Gestor
RJE
Proceso 1
Parmetros de
filtro y
configuracin
Proceso
Iniciador
Proceso i Interactivo
Definicin del
flujo
Proceso i+1
Proceso
Iniciador
Parmetros
control de la Desacoplado
cadena
Proceso n
Resultados
Arquitectura Batch
Figura 5. Arquitectura Batch
Otra forma de encolar trabajos puede ser desacoplada a partir de otros procesos
del sistema distribuido. Por ejemplo, un proceso de aceptacin de albaranes en
almacenes dispara una cadena Batch de una aplicacin centralizada para
incorporar los datos a la aplicacin corporativa de administracin.
Cuando se activa el gestor de RJE, que acta como un agente (trmino que si no
conoce aprenderemos ms tarde) arrancado y vigilando la cola, los trabajos se van
lanzado y ejecutando a partir del inicio de la cadena.
Puede pensarse que esta arquitectura solo es til en Mainframe. Nada ms lejos de
la realidad. Bien al contrario es uno de los mecanismos tiles ms olvidados y
menospreciados en las aplicaciones distribuidas por diseadores que confunden
distribucin con interfcie grfica.
Aunque a lo largo de este texto deberemos volver a hablar sobre este tipo de
arquitectura conviene dejar ya de entrada constancia de la utilidad del proceso por
lotes que supone:
5. La arquitectura transaccional.
La idea pasa por separar en un programa los datos del proceso. Por cada instancia
del programa arrancada se guarda una copia de los datos, la pgina de datos en el
argot, y solo se asigna un componente de proceso cuando se necesita.
Datos
Procesador
Disco Datos
Componente
de
presentacin
Esta pregunta tan simple, tiene para nosotros los informticos una respuesta muy
compleja y en algunos casos casi imposible.
Las razones son muchas y variadas, pero quizs puedan centrarse en tres grupos:
La razn de fondo es nuestra gran suerte. Vd. y yo, amigo lector, estamos en una
rama de la ingeniera nueva, con escasos setenta aos de vida. Y que se desarrolla
a una velocidad vertiginosa. Los ingenieros de caminos ya hacan obras slidas en
la poca de los romanos. Si no acurdese de monumentos tan impresionantes
como el Acueducto de Segovia. Su terminologa y sus mtodos se han ampliado y
mejorado considerablemente, pero tienen la consolidacin que solo dan los aos.
Evidentemente este no es nuestro caso.
Sin embargo, para recordarle la magnitud del problema a que nos enfrentamos y
para centrar de entrada algunos conceptos, permtame que empiece con algunos
ejemplos de este monumental lo.
2. El lo terminolgico.
2. 1. El lo funcional.
Ofimtica
Como en el caso anterior, es Inteligente
un trmino ms organizativo
que informtico.
Figura 7. El lo funcional
2.1.3. Proceso cooperativo.
2.1.4. Reingeniera.
2.1.7. Downsizing.
La idea original del mensaje, todo nuevo, era inviable desde su origen ya
que si bien los ordenadores para C/S eran ms baratos que los HOST, el
coste de desarrollo y sustitucin organizativa de las aplicaciones antiguas
por las nuevas era inmensamente mayor que ahorro potencial.
2.1.8. Rightsizing.
2.1.9. Upsizing.
2.1.10. Outsourcing.
2.1.11. Offshore.
Ms de lo mismo.
Sin embargo, al final las cosas acaban ms o menos encajando porque los
responsables de sistema conocen su trabajo y los jefes de proyecto saben
elegir sus productos. Pero todos rezamos para que no nos cambien la versin
de alguna pieza antes de que nos hayamos recuperado del esfuerzo de hacer
funcionar bien la anterior.
Adems, supongo que entre que ha empezado a leer este captulo y acabe el
ltimo, van a pasar tantas cosas que si me atrevo a citar demasiados
productos actuales, cuando Vd. lea estas lneas pensar que este libro ya
est obsoleto.
Ofimtica
a Objetos Cliente/servidor
bsicamente: Orientacin
Internet
Orientacin a
objectos
Cliente/servidor Servicios
y Conectividad. Internet
y Orientacin a Objetos Conectividad Ofimtica
y Cliente/Servidor + Conectividad Servicios
Internet
y Ofimtica
y Servicios
interrelacionadas y se han
de apoyar entre ellas,
ofreciendo soluciones Figura 9. La visin profesional del diseo
globales en las que
participan y se ensamblan armnicamente ms de una de ellas.
Para salir del pozo solo hay una solucin: formacin. Y aprovechando esa
formacin, crear los nuevos sistemas y aplicaciones y ganar experiencia. Y
hacer reingeniera, no siempre substitucin, de los sistemas antiguos.
Solo as, y entendiendo que la informtica ya hace aos que es una rama
ms de la Ingeniera que obliga a trabajar en equipo reutilizando el trabajo
propio y el de los dems, podr alcanzar el xito en su trabajo.
Para aquellos de Uds. que no tengan todava alguna idea conceptual clara de que
es Cliente/Servidor voy a intentar contestar a tres preguntas bsicas:
No se asuste. No pienso taladrarl aqu con hojas y hojas sobre los orgenes,
evolucin y, por tanto, la historia de la Informtica.
Ni s lo suficiente ni creo que esta historia se pueda contar en unas pocas hojas. La
historia de nuestra profesin, aunque corta en tiempo, est llena de
acontecimientos. Y exigira un esfuerzo de investigacin y de sntesis que por si
slo ya justificara un libro de varios tomos.
APLICACIN
Programa
Cdigo APLICACIN
Programa Programa
Todas las funciones
estn agrupadas
Rutinas Rutinas
Cdigo Cdigo
Mainframe
Una sola gran unidad de proceso o
ms de una actuando como una. Sistemas operativos muy potentes Grandes Dpros. Informticos
Muchos elementos de dilogo. Software comunicaciones y teleproceso Usuarios sin formacin informtica
Libreras y programas de utilidad. Presiones de los usuarios para tener
Unidades de archivo en cinta y disco mejor servicio.
Comunicaciones y teleproceso. Cadenas batch. Monitores transaccionales Crisis del software
Necesidades
Asistencia
INFORMTICA
APLICACIN
CADENA OVERLAY
Programa Programa BATCH USUARIO
PROCESO PROCESO Interficie
de
Rutinas Rutinas usuario
FUNCIONES FUNCI
Cdigo Cdigo
Utilidades
Funciones sistema Funciones sistema
Funciones de sistema
Los Miniordenadores
Una sola unidad de proceso. Sistemas operativos intermedios. Siguen los grandes Dptos infomor.
Muchos elementos de dilogo. Libreras. Usuarios avanzados con alguna
Unidades de cinta y disco formacin informtica.
Primeros intentos de estandarizacin Aplicaciones Departamentales.
Comunicaciones telefnicacas No siempre se utiliza el batch Se acenta la crisis del software
Necesidades
Asintencia
APLICACIN INFORMTICA
A principios de los 80 se produce un otro hecho crucial: aparecen los primeros PCs
de IBM. Poca gente cree el ellos hasta el punto que la nica persona que apuesta
por desarrollar un sistema operativo estndar para la nueva generacin de
hardware es un desconocido Sr. Bill Gates.
Necesidades
Asistencia
INFORMTICA USUARIO
Ofimtica Interfcie
APLICACI CADENA OVERLAY de
Programes
usuario
Programa Programa Batch estandar PROCESO PROCESO
DOS DOS
Figura 14. Los Minis y los HOST en coexistencia. Aparecen los PC's.
Los usuarios necesitan colaborar entre ellos y acceder a otros ordenadores donde
hay aplicaciones y datos de inters. Surgen as las redes.
Y los entornos grficos, que hasta es momento solo usaba Apple, se introducen en
los productos de PCs.
Necesidades
Asistencia
HOST tecnica
APLICACIN PROCESO
Ofimtica
Programa Programa Programas
estandar DISEO Tarea
Rutinas Rutinas Ofimtica
Cdigo Cdigo
Utilidades Carpetas, Funciones Funciones Funciones
Portapapeles, Integridad Seguridad
Utilidades .. GUIs Aplicacin de red
Funciones de sistema + GUIs + XARXA
WINDOWS RED
Las aplicaciones de los PCs van cambiado de objetivos. Cada vez son ms
importantes y menos perifricas. Aparece un nuevo concepto de diseo basado en
aprovechar las ventajas del entorno grfico de Windows, los recursos de red y las
prestaciones ofimticas.
Y como consecuencia natural de todos ello, los datos corporativos que hasta ese
momento se haban relacionado con los PCs a travs replicaciones manuales y de
ficheros de interfase, pasan a ser necesarios en lnea, entidad a entidad y registro a
registro. No hay nada preparado para esa situacin, nueva en el panorama
informtico. La reaccin es la aparicin de las arquitecturas Cliente/Servidor.
Analicemos el
problema.
En el fondo, para
acceder a los
datos corporativos
desde un PC, hay Figura 16. Necesidad de acceso a los datos corporativos desde un
que establecer HOST.
una comunicacin entre dos programas, uno en el lado del PC y el otro en el lado
del HOST.
Para que los mensajes puedan viajar es necesaria una plataforma de sistema con
comunicaciones sobre el que un transportista pueda intercambiar los mensajes.
6. 1. Distribucin.
6. 2. Cooperacin.
6. 3. Especializacin.
6. 4. Presencia de ms de un ordenador.
6. 5. Presencia de un transportista.
7. Y la historia contina.
A finales de los 90, y para intentar acabar con ese dominio de los sistemas
operativos de Microsoft, una serie de compaas intentan buscar una va alternativa
y realizan una fuerte apuesta por Internet, una plataforma que ya exista desde
hacia mucho tiempo.
La aparicin de la WEBs
Las comunicaciones estndar hacen Aparecen los productos de diseo y Se introduce el concepto de diseo
posible acceder a datos externos de gestin de Webs estatcas. grfico y de marketing en las
forma rpida y a costes razonables. aplicaciones informticas
Se utiliza la plataforma Internet. Una empresa puede ofrecer a nivel
mundial sus servicios
Creacin de la
Internet
Internet oferta de
servicios
APLICACIN PROCESO
Webs Webs
DISEO Windows DISEO Web
Servicios
Rutinas Diseo Grfico Tcnicas Web
internos
Funciones de sistema + Comunicaciones
Red Interna Internet
Aparecen as los Servicios WEB que integran todo lo que se puede obtener de
Internet como un servicio ms para los desarrolladores convencionales.
Creacin de la
Internet
Internet oferta de
servicios
APLICACIN PROCESO
Webs Aplicaciones DISEO Windows e
DISEO Web
Internet Integrado
Uso de servicios
Servicio Servicio
Servicios Web
Rutinas Diseo Grfico Tcnicas Web
internos Services
Funciones de sistema + Comunicaciones
Red Interna Internet
figura. S1 S2 S2
S1
Imaginemos que un proceso
S11 S12 S13 S21 S22 S11 S12 S13 S2
S se disea, con anlisis
descendente, programacin
S121 S21 S22
estructurada o cualquier otro S121
mtodo, en el rbol de
subprocesos de la figura. Figura 19. Concepto de especializacin
El diseador decide que S2 ser un servidor. Toda la parte del rbol que cuelga de
S2 se sustituye por un servidor y se le incluye un modelo de comunicacin entre el
cliente y el servidor, por ejemplo RPC o Servicio WEB. Todo el subrbol que cuelga
de S2 pasa a ser un programa independiente que actuar como servidor y
proporcionar la funcionalidad de S2 como un servicio.
Peticin cliente
Clientes
Una vez realizado el
Cuenta Cliente
funcional, y cuando
realiza el diseo de la
arquitectura distribuida,
Figura 20. Registro de los datos de un cliente
el diseador tiene una
precondicin para el proceso de acceso a los datos del cliente motivada por la
situacin de la base de datos.
muestra la figura.
Servidor
Finalmente, el diseo del del lector
de tarjetas CuentaCliente
servidor de acceso a cliente Peticin cliente Datos cliente
Leer
Cliente
Observe que el cliente ha perdido la
Leer
visin fsica del servidor y lo nico que
Cuenta
Cliente
ve es el servicio. Por esa razn y con la
integracin de entornos de Sistema
Operativo e Internet se ha pasado a
Clientes Cuenta Cliente
hablar de servicio en lugar de servidor
como se hacia cuando las aplicaciones
Figura 22. Servidor de acceso a distribuidas se montaban en los
clientes. sistemas operativos y los programas
que hacan de servidores eran
tocables porque estaban diseados por los creadores de los propios programas
clientes.
La visin histrica que hemos hecho permite dar una primera respuesta a las tres
preguntas bsicas.
9. 2. Cual es su origen?
10. Servicios.
Antes del nacimiento del proceso distribuido y la irrupcin de los PCs e Internet, es
decir los tiempos anteriores a Cliente/Servidor y los sistemas abiertos basados
fundamentalmente en PCs, cuando los Mainframe dominaban, la vida del
informtico era fcil
Una vez le en un libro ingls la expresin The Good Old Days para referirse a ese
periodo, expresin que considero genial, y que me permito citar sin traducir.
La nica gran decisin sobre la plataforma y los sistemas informticos que se tena
que tomar por los directivos del Dpto. de Informtica era con que proveedor se
casaba. A partir de aqu, a confiar. Y la confianza nunca era defraudada, los
sistemas eran robustos y fiables. Caros, eso si. No haba posibilidad de compartir
entre proveedores nada ms que algunos elementos de la periferia.
El software era propietario y limitado, pero cubra sus funciones con solvencia y
robustez. Las conexiones de los usuarios locales y remotos eran resueltas por el
teleproceso y las trasacciones y la comunicacin entre aplicaciones se hacia por
traspaso de ficheros. Grandes aplicaciones de siempre cubran los procesos
corporativos y nadie se atreva a discutirlas.
Perdneme. No he podido evitar citar la imagen que todo el mundo dibuja de esta
situacin. Los gigantescos y pacficos Mainframedocus, dinosaurios herbvoros,
pacan y retozaban tranquilamente en la hierba mientras un asteroide de enormes
proporciones se acercaba a la Tierra para acabar con su idlica situacin.
Cuando veo en el metro anuncios del tipo: aprenda la profesin del futuro, domine
la informtica, CURSO DE VISUAL BASIC de 120 horas, me sulfuro. Me dan ganas
de coger un spray y dibujar un gigantesco graffiti encima. Mis alumnos de la UPC
son tontos para qu diablos estudian 5 o 6 aos si con 120 horas lo tienen
resuelto!
1. Introduccin.
Imaginemos una aplicacin que realice la atencin del cliente en una tienda de
venta de una cadena. La aplicacin debe acceder a la Central para confirmar los
datos del cliente y su riesgo. Si por cualquier causa la comunicacin no es posible,
deberemos disear la aplicacin informtica de forma que pueda seguir vendiendo.
Si no lo hacemos as, la competencia se frotar las manos ya que le enviaremos
nuestros clientes. Por su propia naturaleza, situaciones de este tipo son habituales
en aplicaciones distribuidas.
Por otra parte, dentro del mbito de administracin del sistema, tareas que los
sistemas centralizados tenan desde hacia ya tiempo perfectamente resueltas,
pasan a no estarlo. Por ejemplo:
Las copias de seguridad, que en un sistema nico se hacen con una simple utilidad,
pueden pasar a ser una tarea compleja por la necesidad de garantizar la
consistencia de datos distribuidos geogrficamente en lugares que incluso tienen
calendarios laborales y horarios diferentes.
La autentificacin nica de usuarios en una red mixta UNIX, AS-400, Windows e
Internet no es nada trivial.
La distribucin de versiones y el control de licencias, y un largo etc...
5. 2. Adaptabilidad a la organizacin.
5. 4. Reusabilidad.
6. Esquema de Niveles.
de sistema, donde se
Plataforma Plataforma
apoyan los programas
cliente y servidor.
Un nivel de proceso
donde se ejecutan Plataforma
Plataforma==Hardware
Hardware++Software
Softwarebsico
bsico++Red
Red++Comunicaciones
Comunicaciones
cliente y servidor y
donde se intercambian
peticiones y respuestas.
En los captulos anteriores hemos visto que hay cuatro componentes bsicos dentro de
una arquitectura distribuida: sistema, cliente, servidor y transportista.
Dentro de este captulo se va tratar la infraestructura como elemento que aporta los
componentes sistema y conectividad, su encapsulacin mediante el Middleware y el
aislamiento de los puntos conflictivos como puntos de heterogeneidad en el diseo.
2. Sistema.
La plataforma de sistema de una compaa con aos en el mercado es, en general, muy
variada y, excepto en contadas ocasiones, una herencia de la evolucin histrica de los
SI a lo largo del tiempo.
Es muy difcil realizar una clasificacin exhaustiva de los sistemas, clasificacin que
adems no aporta demasiado a un diseo que tiene como objetivo director que sus
productos sean transparentes a la plataforma.
Originada por el crecimiento de los entornos PC alrededor del HOST original. Suele
encontrarse en compaas grandes.
Fomentada por compaas aparecidas al principio del siglo XXI, trabajan con
PCs con fuerte autonoma en el puesto cliente y conexin permanente con
servicios de todo tipo.
3. 1. Hardware.
3. 2. Software
3. 3. Elementos de seguridad.
3. 4. Internet.
4. El transportista.
Una diferencia histrica que ha obligado a diferenciar entre WANs y LANs ha sido
el ratio de rendimiento. Sin embargo hoy da, y cada vez ms, hay menos
diferencias entre ellas; las posibilidades de las WANs estn aumentando
espectacularmente y derivndose hacia plataformas TCP/IP, fundamento de
Internet.
4. 3. Internet
4. 4. Cloud computing
AS/400
Esta imagen ideal del
sistema no debe confundir
al diseador. Pensar que ha
AS/400 vuelto a los orgenes de la
Informtica, y que su
aplicacin ya puede ser
tratada como si trabajase
SISTEMA sobre un nico ordenador
sera un gravsimo error.
Sigue existiendo la
AS/400
posibilidad que no llegue la
respuesta del servidor y por
tanto la necesidad de prever
Figura 24. Imagen ideal del Sistema un anlisis de consistencia.
Distribuido
Esta situacin idlica est
hoy da muy cercana a la realidad y permite mirar la plataforma de sistema y el
transportista como una gran red global interoperable.
Sin embargo, en la prctica continan existiendo puntos en los que existe alguna
diferencia que no cumple esta condicin de interoperatividad.
6. Middleware.
Proporcionando la
capacidad de pedir y recibir
Sistema
servicios de forma
transparente al sistema. Aplicacin SERVICIOS
Liberando a los diseadores
y a los administradores de
sistema de los problemas
creados por la complejidad
del sistema distribuido.
Figura 25. La visin del sistema a travs
La capa de Middleware est del Middleware
formada por un conjunto
heterogneo de software que puede ir desde servicios muy simples, como un
servidor de encriptacin, a programas completos como puede ser Word utilizado
como un servidor para imprimir facturas en una aplicacin distribuida, y servicios
Internet conseguidos a travs de Servicio WEB.
e
ar
la infraestructura: sistema y
lew
Client Servidor
transportista. As, en las aplicaciones
id d
modernas, puede trabajarse con un
M esquema de bloques con nicamente
tres componentes: Cliente, Servidor
y Middleware donde el sistema y el
Figura 26. Esquema de transportista se contemplan como
bloques de una aplicacin C/S.
servicios del Middleware.
La aplicacin llama al
Middleware a travs Cliente Servidor
de una rutina local, APLICACIN
linkada o no en el
programa. Esta rutina Aplicaciones con Servicio Sistema Servicio Sistema
(Middleware) (Middleware)
local localiza la servidores de sistema a
situacin del servicio travs de middleware. Plataforma Plataforma
Note que, en este esquema ampliado, no existe diferencia entre la plataforma C/S
basada en Sistemas Operativos e Internet.
8. Concepto de localizacin.
8. 1. Localizacin esttica.
Es una solucin muy rgida que siempre que se pueda debe ser evitada.
8. 2. Localizacin dinmica.
Obsrvese que esta gestin del diseo puede cubrir diferentes situaciones:
Se da en dispositivos mviles.
1. Introduccin.
Clientes y servidores son las estrellas de nuestro espectculo y por tanto sern
tratados ampliamente ms adelante.
Sin embargo, para poder tratar otros temas que se vern a continuacin, conviene
recordar y fijar las ideas bsicas sobre su naturaleza y comportamiento.
2. Servidores.
El servidor puede ser arrancado tambin de forma dinmica por el cliente que
primero necesite de l. El tema ser tratado ms adelante cuando hayamos
desarrollado otros conceptos. Citemos aqu, y solo a modo de ejemplo, dos casos
en que es habitual:
Los servidores forman parte del Middleware bsico o se apoyan de forma notable
en l. Unos servidores pueden llamar a otros, pero hay que evitar llamadas
anrquicas entre ellos. Este tema, que llamaremos arquitectura de servidores,
ser tratado en profundidad ms adelante dentro de la segunda parte dedicada al
diseo.
Reusabilidad.
Relocalizacin (re-alocability), o capacidad del servidor para localizarse en
cualquier punto de la plataforma de sistema.
3. Tipos de servidores.
Sera imposible, y adems un grave error, intentar clasificar los servidores. Hay
tantos tipos como servicios sea Vd. capaz de imaginar.
Sin embargo, hay algunos servidores que por historia, tradicin y reusabilidad se
encuentran muy frecuentemente en sistemas distribuidos.
Estos servidores han pasado de ser artesanales, en los primeros tiempos de C/S, a
estar estandarizados (la mayora de ellos) e integrados en el Middleware.
3. 1. Servidores de ficheros.
3. 2. Servidores de datos.
Veamos otro ejemplo. Imagine que Vd. tiene una entidad producto repartida
en dos bases de datos fsicas y quiere hacer un servidor que libere a los
clientes de tener que acceder y coordinar el acceso a las bases de datos
siempre que necesite algo de productos. Encapsular la gestin de la entidad
producto en un servidor de lgica de datos.
Otro ejemplo habitual es encapsular el acceso a una entidad que tenga sus
atributos en ms de una tabla.
3. 4. Servidores de Impresin.
3. 5. Servidores de Programas.
Por ejemplo, imagine que tiene una placa de encriptacin por hardware
localizada en una mquina de la red. Cree un servidor de recurso compartido
y localcelo en la misma mquina donde est el recurso.
Que todos los nodos del sistema distribuido tengan la misma fecha y, sobre
todo, la misma hora, decalajes horarios aparte, es en muchos casos crucial y
no puede dejarse al azar.
Por esa razn existen los servidores de fecha y hora donde todos los clientes
y servidores pueden sincronizarse con una fecha y hora de referencia.
3. 8. Servidores de impresos.
3. 9. Servidores ofimtica.
Hay gran cantidad de servicios que pueden ser proporcionados por los
paquetes de ofimtica: impresin de documentos con todas las facilidades de
un procesador de textos, grficos, las agendas como elemento de
planificacin, etc.
Cuando utilice uno de los programas del entorno ofimtico para cubrir estas
funciones estar utilizndolo como un servidor de alto nivel.
Hoy da, estos servidores son mayoritariamente productos del Sr. Gates.
Hay mucha costumbre de linkar las funciones multimedia con los programas y
pocas veces se encapsulan en servidores.
4. Clientes.
Realiza, entre otras funciones, el dilogo con los usuarios a travs de interfcies
grficas de usuario y la gestin y recuperacin de errores.
El cliente arranca, realiza su trabajo y acaba. Utiliza a los servidores y debe evitar
llamadas directas a otros clientes.
1. Introduccin.
En relacin con el segundo punto, quiero hacerle ver una idea fundamental. El
diseo de aplicaciones distribuidas es una especializacin donde algunas veces, la
decisin de un diseador delante de una situacin no es de software si no de
infraestructura o conectividad.
Imagnese que tiene una red de local de velocidad lenta y ha de disear una
aplicacin con un gran trfico de datos. Cuando realiza la adaptacin de la
aplicacin a la plataforma de que dispone (que como veremos ms adelante es un
paso del diseo distribuido) se da cuenta que no puede atacar los servidores de
datos directamente desde los programas por transacciones SQL porque los tiempos
de respuesta no seran vlidos. Tiene dos opciones: complicar el diseo o ver si el
mercado de la conectividad le permite aumenta a precio razonable la velocidad de
la red. Si la segunda opcin es vlida y sus costes son razonables, eljala siempre.
Con este objetivo, en este capitulo vamos a tratas diferentes temas en esa lnea.
Una advertencia previa. En cuanto empiece a leer este captulo se dar cuenta de
que este tema no es mi especialidad. El captulo est lleno de simplificaciones,
realizadas para presentar las ideas, que asustaran a un especialista. No pretendo
escribir de lo que no s. Slo pretendo presentar algunos puntos de estos temas
que creo importantes para un diseador distribuido. Si quiere informacin de mayor
calidad, por favor, busque documentacin especfica.
2. Redes.
No le voy a cansar con ms detalles de algo que seguro Vd. lector conoce
perfectamente. Este apartado est dedicado a remarcar aquello que, a mi
juicio, se ha de tener en cuenta en los diseos distribuidos.
Ordenador, normalmente un PC
normal, que acta como cliente de la
red y desde donde trabajan los
Estacin de trabajo
Servidor
usuarios. Es el lugar natural donde
normalmente se ejecutan los
programas cliente.
2. 4. Topologa de la red.
2. 5. Protocolos.
Son las reglas y procedimientos que utilizan las redes para establecer la
comunicacin en los nodos. Son el soporte del transportista. Sin importancia
en el diseo ya que estn embebidos en el Middleware.
2. 6. Interconexin de redes.
3. Clsteres.
3. 1. Qu es un Clster?
El software del clster reparte la carga por los nodos de forma transparente. As
el efecto exterior es de un nico ordenador que aporta una altsima fiabilidad de
funcionamiento.
Como los ordenadores integrados en el clster estn integrados entre ellos por
una red, la velocidad de esa conexin de red es fundamental en el rendimiento
del clster. No es lo mismo una conexin entre los ordenadores del clster por
cable Ethernet que por fibra ptica.
3.2.3. Escalabilidad.
Que hacer, pues, Clster o software de consistencia? Una vez ms, no hay
soluciones mgicas. Mandan la importancia de garantizar servicio versus los
costes de cada solucin, la importancia o no de introducir un punto de
heterogeneidad (el clster lo es) o la calidad de las soluciones clster de su
plataforma habitual
Segn Garther Group, las SAN suponen la gestin centralizada de recursos y datos
en un dominio de almacenamiento que proporciona servicios compartidos a un
grupo de servidores y a sus aplicaciones.
SAN puede definirse como una red de fibra ptica y dispositivos de conmutacin
dedicados a interconectar recursos de almacenamiento y servidores sin
interferencia de la red de trabajo.
Proporcionan:
El usuario o los programas trabajan con discos lgicos que el sistema SAN se
encarga de maperar en dispositivos fsicos de forma absolutamente transparente.
El usuario ignora con que disco fsico trabaja que incluso puede variar a lo largo del
ciclo de vida la situacin fsica. La unidad lgica puede contener ms de un recurso
fsico y compartirlo con otras unidades lgicas- La flexibilidad es total.
5. Aceleradores de comunicaciones.
Por ejemplo, si dispone de una conexin punto a punto entre dos edificios de su
empresa, si instala un acelerador mejorar sustancialmente el ancho de banda til.
Propusieron una nueva forma de ver la informtica desde el puesto usuario. Si:
La idea liga con el lenguaje actual de algunas grandes marcas, como IBM, centrado
en que lo importante es el servicio, no la plataforma.
NC versus PC, es, a mi juicio, un batalla que tiene poco campo comn donde poder
librarse.
Los NCs son ms baratos y por tanto ms rpidamente amortizables y muy fciles
de administrar ya que en el fondo su filosofa de trabajo en centralista: hay un
servidor de datos y un slo servidor de programas.
Sin embargo, no son autnomos cosa que les imposibilita para muchas
localizaciones (donde slo se necesita un PC) y aplicaciones que necesitan una
gran adaptabilidad. Sin contar el coste de comunicaciones si los servidores de
datos y programas son remotos, aunque este sea un punto actualmente a la baja.
Adems, si caen los servidores, se acab la posibilidad de seguir trabajando. Y esto
si que es importante.
Centralizada, no distribuida.
utilizar un componente de presentacin desde un servidor de
programas.
7. Telfonos mviles.
Los PDA (en ingls Personal Digital Assitant) son la evolucin de las agendas
electrnicas. La potencia actual de estos pequeos dispositivos ha dejado atrs
hace tiempo el concepto de agenda y han pasado a ser algo ms.
En cualquier caso, estos pequeos y potentes dispositivos, para los que existe
versin de Windows y Microsoft Office, puede integrarse como un soporte fsico
ms de un sistema distribuido.
Cul ser su futuro? Cada vez los PC's porttiles son ms pequeos y potentes.
Llegarn a tener un tamao y un precio equivalente a los PDA? Los Tablet PC van
por aqu. Slo el tiempo lo dir.
Ya le he comentado antes que los futurlogos que sobre 1990 asimilaron a los
Mainframe a dinosaurios condenados a la extincin se equivocaron de todas, todas.
Y los Mainframe llevaban ventaja. Eran y son estables, muy robustos, fciles de
administrar, soportan aplicaciones que ya funcionan desde aos con total solvencia
y con las que no se gana nada (excepto problemas) reprogramando, etc.
Y por tanto tambin los Mainframe tienen ya soluciones que cumplen la ecuacin
mgica:
Nuevos aires han soplado sobre los Mainframe tambin en Software con la llegada
de Internet. Las aplicaciones clsicas de Internet son por filosofa centralizadas. Y
que mejor housing que un Mainframe!
10. Comunicaciones.
Con la llegada del fin de siglo y el inicio del XXI el panorama cambi
radicalmente. Cuando conviene, la interconexin puede sustituirse por
interoperatividad. Recursos como el RAS (Remote Acces System) ADSL y
TELNET permiten conectar ordenadores y/o redes remotas con la misma
1. Introduccin.
Los servicios del NOS son utilizados tanto por los clientes como por los
servidores y son bsicos en los desarrollos distribuidos.
1. 1. Interaccesibilidad o interconexin.
Los sistemas son accesibles entre ellos pero no de forma transparente a los
programas.
1. 2. Interoperatividad.
Comprar Middleware.
Migrar a sistemas interoperables.
Encapsular las causas creando el Middleware en los puntos y funciones en
que se necesite interoperatividad.
Prime siempre que pueda las dos primeras alternativas. Aunque a priori parezca
ms cara, al final ahorrar. El Middleware que compre se adaptar
automticamente a los cambios evolutivos de su SI. El Middleware que usted
construya no. Vd. habr de gastar dinero y recursos para hacerlo.
Si Vd. lector esperaba encontrar aqu un curso de como conectar sistemas vaya a
devolver lo que est leyendo rpidamente. Espero que recupere su dinero.
Como obtener, pues, esta formacin? Haga un curso sobre las posibilidades de
interoperatividad de los sistemas actuales. Sin embargo el consejo no le ser fcil
de seguir ya que encontrar muchos cursos de administracin pero pocos de
funcionalidad.
Existe otra va. Sea curioso en su experiencia del da a da. E intente aprender de
esa experiencia. Asista a todos las sesiones comerciales de presentacin de
productos de conectividad que pueda. En ellos, debido a lo apurado del tiempo
disponible se habla slo de posibilidades y no de administracin.
Sin embargo no se crea de la misa la mitad....y filtre lo que oiga con la experiencia
de otros profesionales,
Por ejemplo, una arquitectura fsica de cuatro niveles puede estar compuesta por:
Un HOST.
Uno o varios servidores en al central que actan de Front-end conectado/os al
HOST.
Servidores departamentales conectados a los servidores de la central.
Redes de PCs conectados a cada servidor departamental.
La arquitectura lgica est determinada por los niveles o capas donde las
aplicaciones pueden localizar recursos (datos y procesos) gestionados de forma
interoperable a travs de Middleware. La arquitectura lgica resulta de la fsica
Se conoce como proceso distribuido aquel en que la funcionalidad y/o los datos
que lo conforman pueden residir de forma transparente en cualquier punto de la
plataforma de la arquitectura distribuida.
Se conoce como proceso distribuible aquel en el cual, si bien las funciones y/o los
datos pueden estar distribuidos por la plataforma, la distribucin no es transparente
y est ligado a puntos concretos de la plataforma.
Es evidente que los procesos distribuidos son preferidos a los distribuibles. Slo el
rendimiento (perfomance) o la existencia de un sistema heredado puede
recomendar hacer un proceso distribuible y no distribuido.
6. 1. La infraestructura.
1. Introduccin.
Y lleg Internet. Y despus del simple acceso a WEB, las aplicaciones activas
sobre Internet. Y la historia se repiti. Unos las tildaron de moda pasajera. Otros
pronosticaron solemnemente la muerte del C/S convencional. Los centralistas
confirmaron eufricos que tenan razn: C/S clsico slo haba sido un engorro
pasajero. Y sin observar que Internet es una arquitectura C/S por si misma.
Los centralistas afirmaron que como los programas de las aplicaciones Internet
estn almacenados en un servidor centralizado y presentan datos de esa misma
naturaleza, son, bsicamente, de diseo y administracin centralizados! De
presentacin grfica, pero diseo centralizado. El HOST ha vuelto! El crculo
parece haberse cerrado. O el pez se ha mordido la cola, como prefiera.
Calma. Creo que es el momento ideal en nuestro viaje para poner cada cosa en su
sitio.
2. Qu es Internet?
Igual que cuando hablamos en un captulo anterior de redes, no le voy a hacer una
presentacin exhaustiva de Internet. Vd. lector conoce, seguro, que es Internet.
Solo recordar, para empezar a hablar, que Internet es una red que enlaza todas las
mquinas que lo deseen. Es tambin conocido que Internet ya exista como tal
desde hacia mucho tiempo aunque su popularizacin fue posterior. No voy a
escribir el nmero gigantesco de nodos de la red que aparece siempre en prrafos
de este tipo para dar importancia a la red (siempre me ha intrigado que mtodo se
ha utilizado para contar y justificar ese nmero).
Sobre esta plataforma de transporte se han construido los protocolos que dan los
servicios de la red:
3. Qu es una WEB?
Aunque la palabra que triunf fue la de WEB, inicialmente se usaba WWW iniciales
de World Wide Web. Se haca difcil pronunciar tres Ws seguidas (letra que ni
siquiera existe en castellano) con lo que el trmino WEB se impuso.
El concepto de World Wide Web, que puede traducirse por algo as como telaraa
universal, fue creado en 1990 en Suiza por Tim Berners-Lee, en aquel momento un
joven estudiante del Laboratorio de Fsica de Partculas (CERN).
Observe que este modelo de aplicaciones Internet, que voy a denominar modelo
de aplicaciones Internet Pasivo, tiene una caracterstica bsica: no hay ninguna
interaccin con los datos y programas del nodo conectado. El navegador utilizado
en el nodo de conexin es un mero recurso de trabajo.
Evidentemente, este modelo es una alternativa vlida para las aplicaciones C/S
convencionales de consulta, basadas en sistemas operativos, ya que evitan la
siempre problemtica replicacin de datos de la que habremos de hablar
exhaustivamente ms adelante.
Para este tipo de aplicaciones de consulta el diseador podr elegir entre el modelo
distribuido basado en Internet o Sistemas Operativos en funcin de la aplicacin
concreta. Por ejemplo, si los datos de consulta son histricos y su acceso es muy
frecuente y variado, potenciar la replicacin siempre que la administracin no
condicione costes altos de explotacin. Si la informacin es voltil y los usuarios
son estables probablemente ser mejor Internet. Y en medio quedar la inevitable
zona gris que habr que decidir aplicacin por aplicacin segn las caractersticas,
Son las aplicaciones que denominar modelo Internet activo donde las
aplicaciones WEB interaccionan con el entornote datos y procesos locales.
A lo largo de este libro iremos comentados las cosas comunes y las caractersticas
diferenciales de cada una de las dos formas de implementacin.
Como es posible que despus de leer el apartado anterior tenga Vd. dudas sobre
las relaciones C/S e Internet, y como dejar desde aqu este tema claro es clave, le
propongo la siguiente reflexin.
Para seguir este camino conviene que repasemos, siempre desde el punto de vista
del diseador, el mecanismo de transferencia que aporta Internet.
si es necesario, solicita la
pgina o objeto deseado Figura 33. Mecanismo de transferencia Internet
recibiendo un componente de WEB.
presentacin.
5. Cuando el cliente enva la pgina cumplimentada al servidor WEB, el servidor
le asigna una lnea de proceso para atenderle, recuperando, si ha lugar su
pgina de datos. A partir de aqu, localiza la informacin o el proceso pedido y
los devuelve al cliente. En caso de no localizarlos le enva un cdigo de error.
El comportamiento del servidor WEB es, como queda muy claro, descaradamente
transaccional.
Sin embargo, lo que hace que una WEB sea visitada habitualmente no es la
final la forma sino el contenido y su permanente actualizacin. La forma,
importante, es de segundo nivel.
9. Componente de Integracin.
Arquitecturas como las que hemos presentado permiten que la aplicacin pueda
hacer varias tipos de proceso:
Los clientes WEB tienen dos partes, el componente de presentacin que se enva
al puesto cliente y se ejecuta bajo control del navegador y el componente que
queda en el housing de la WEB.
Por ltimo, no confunda esta arquitectura con un Servicio WEB en la cual le servicio
se pide directamente a la red.
Con lo expuesto hasta ahora en este captulo, la relacin entre Internet y proceso
centralizado es fcil de abordar.
Por otra parte, las empresas que haban mantenido sus aplicaciones de forma
numantina en el HOST han visto, al fin, una salida a sus necesidades con la
utilizacin de aplicaciones Internet.
Finalmente, los Servicios WEB, de los que hablaremos a continuacin, son una
forma de poder proporcionar al exterior servicios de aplicaciones Mainframe.
15. 1. Inalmbrica.
15. 2. Nmada.
15.2.2. Telefona.
Un servicio se dir que es pasivo si slo acta si es llamado por otro componente.
Observe que un servicio pasivo, ese servicio slo actuar si es llamado por otro
componente.
La implementacin de servicios activos se hace por agentes. Los agentes sern los
encargados de ejecutar servicios desacoplados, es decir servicios que se piden y
de los que no se espera respuesta: el agente los ejecutar cuando corresponda y el
programa que los ha pedido no se esperar.
Observe que el programa que los pide necesita seguridad absoluta de que se
ejecutaran sin problemas. Ms adelante hablaremos en profundidad de todo ello.
1. Introduccin.
Ntese que estas aplicaciones solo tienen de C/S el hecho de compartir un servidor
de datos en la red y los recursos de impresin. Slo en contadas ocasiones se
establecen servidores de ficheros entre el HOST y el entorno distribuido para el
traspaso automtico de la replicacin.
Surgen as los primeros servidores de datos corporativos, que dan origen a las
primeras aplicaciones de gestin realmente distribuidas. Y una necesidad nueva,
Integracin de los entornos HOST de cada fabricantes con los PCs. Adems
interconexin entre sus propios productos.
Servidores de datos, ficheros e impresin resueltos.
Soluciones de comunicaciones.
Especializacin de alto nivel, como por ejemplo, oficinas bancarias.
La transportabilidad ya que estaban muy ligados por APIs de bajo nivel a los
sistemas operativos propietarios.
La interconexin entre sistemas de diferentes fabricantes.
Al final de la primera generacin sobre los aos 91 y 92, aparecen nuevos factores,
y sobre todo el concepto de
Middleware, que aadidos a
la situacin resumida al final
Aparicin del del apartado anterior,
Middleware producen el cambio
generacional.
Intentos de
estandarizacin de El nacimiento del Middleware
servicios
se produce como evolucin
Programacin y inevitable de la necesidad de
administracin de
los sistemas con
estandarizacin que haba de
transparencia permitir programar y
administrar los sistemas con
Necesidad de transparencia mediante la
estandarizacin
normalizacin y
estandarizacin de los
servicios.
Figura 39. Aparicin del Middleware
La utilizacin del concepto de Middleware, el aumento espectacular de prestaciones
de los PCs, su bajada continuada de precios, el aumento de la potencia y
estandarizacin de las redes, el aumento acelerado de los estndares de facto y
las posibilidades de la ofimtica, provocaron una verdadera crisis de crecimiento de
los sistemas de informacin en las empresas.
El razonamiento para salir de la crisis pareca obvio, sobre todo para los
vendedores de elementos C/S. Haba que hacer ms muchas cosas en los PCs
distribuyndoles trabajos nuevos o no resueltos eficazmente o a satisfaccin de los
usuarios hasta ese momento.
6. La tercera generacin.
Pero las cosas iban a un ritmo acelerado. Entre la primera y segunda generacin
pasaron casi 10 aos. La segunda generacin dura menos de cinco aos. Y un
nuevo cambio ya se produce en el 98.
Sin embargo y una vez ms, personalmente opino que los informticos estamos de
suerte ya que ahora tenemos tres formas de diseo reconocidas agrupadas en dos
bloques: centralizada y distribuida C/S en sus dos formas: Cliente/Servidor
convencional basada en sistemas operativos y las nueva plataforma basada en
Internet. Y adems las aplicaciones Internet y las C/S basadas en Sistema
Operativo tienen muchas ms cosas en comn de lo que parece. Si se disean,
claro est, no si la visin se limita a la programacin. Pero esta es ya otra historia
de la que ya hemos empezado a hablar anteriormente.
En realidad, como ya hemos dicho, lo que ocurri fue una generalizacin del
modelo C/S disponiendo de dos formas de implementacin: C/S convencional e
Internet.
Y con los primeros aos del nuevo siglo ha llegado el inicio de la cuarta generacin
con la potenciacin de la utilizacin de modelos distribuidos Internet Activos y la
generalizacin de Servicios WEB: la integracin total de negocios.
Para conseguir esta integracin global es obvio que hay que asumir no solo la
integracin externa con terceros sino tambin la interna de todos los sistemas
de informacin propios.
Como ve la idea de utilizar Servicios WEB para interconectar el mundo de los TBI
parece, como mnimo, tentadora.
1. Introduccin.
Sin embargo, en la raz del trmino hay algo tan simple y tan potente como el
concepto de servicio que hemos manejado hasta ahora. Y adems basado en la
independencia y universalidad de la RED.
No hacer falta decir que los servicios que se publican y comparten son tanto de
datos como de proceso.
Define la Descripcin del Servicio que incluye, con un documento escrito con
Servicios WEB Description Language (WDSL):
Las prestaciones.
La utilizacin del servicio por terceros.
La localizacin
Publica la oferta del servicio en las pginas amarillas del Universal Description,
Discovrey and Integration (UDDI). El fabricante tambin puede encontrar aqu otros
servicios ya creados que le faciliten su trabajo. La Agenda UDDI fue creada en
septiembre de 2000 por IBM, Ariba y Microsoft y posteriormente se sumaron otros
actores como Compaq y SAP.
4. 1. Servicios de Catalogacin.
4. 2. Servicios de Localizacin.
Proveedor
4. 3. Servicios de Utilizacin
La publicacin en UDDI sigue los pasos siguientes puede hacerse por programa o
por WEB.
La arquitectura de los
servicios WEB es una Entorno Entorno Proveedor
Arquitectura Orientada a
Servicios (SOA - Service
Cliente Repositorio de Clases
Oriented Architecture de
Aplicacin
Nivel de Servicios
la que hablaremos al
inicio de la segunda parte)
formada por una
coleccin de servicios que
Componentes
se interconectan entre Servidor Datos
Nivel de
ellos para conseguir una Web
determinada actividad. Service
Los servicios de
localizacin y Otros Otros
comunicacin son uno Servicios Servicios
ms de la lista disponible.
Ntese que con esta arquitectura tecnolgica, y como se ha dicho antes, el cliente
dispone siempre de la ltima versin del servicio, tanto en depuracin de
errores como en nuevas prestaciones.
Autentificacin y seguridad.
Integracin en el Middleware.
Calidad de servicio.
Administracin.
Desde hace tiempo EDI (Electronic Data Interchange) se utiliza como plataforma de
comunicacin entre sistemas heterogneos, ya sea por plataforma o por
desconocimiento. Desde hace aos, clientes y proveedores se han comunicado
entre ellos usndolo a travs de un Centro Servidor EDI. Existe versin de EDI para
Internet.
Los defensores de los Servicios WEB los proclaman como alternativa al EDI. La
polmica est servida de nuevo. EDI es ms caro y pesado pero ms seguro que
los Servicios WEB que son justo lo contrario.
J2EE basada en Java y .NET no son ms que dos tecnologas para construir
servicios WEB.
Aporta tambin un Framework que marca una gua de cmo construir aplicaciones
distribuidas para dar servicios WEB.
J2EE es, ms que un producto, una propuesta de estndares a los que los
fabricantes deben adherirse. J2EE implica a diversas empresas proveedoras de
Middleware cooperando entre s, siempre con Java como lenguaje de desarrollo.
1. Introduccin.
Una vez probados todos los programas por el equipo de desarrollo se realiza la
Integracin sobre la plataforma definitiva. Los recursos distribuidos se localizan en
esa plataforma y hay que comprobar el buen funcionamiento integrado de los
componentes distribuidos. Esta etapa, que en una aplicacin no distribuida suele
ser un apndice de la etapa de Prueba, es en un sistema distribuido
fundamental. Y marcar el xito o el fracaso de la aplicacin. Hay que comprobar
rendimientos, tolerancia a fallos, procesos de recuperacin de servicios, vas
alternativas, etc. Dicho de otra forma, hay que verificar completamente el diseo de
consistencia. Es decir todos aquellos elementos que hacen los diseos
distribuidos diferentes y que hemos citado e iremos citando a lo largo del libro. En el
capitulo siguiente ya le dar una idea general de cuales son.
4. 1. Arquitectura Cliente/Servidor.
4. 2. Conectividad.
Obtener esta formacin bsica es difcil ya que hay muchos libros sobre como
administrar conectividad y pocos sobre explicaciones funcionales de los
servicios que da. Y prcticamente ninguno que compare ventajas e
inconvenientes de las diferentes soluciones.
4. 3. Internet.
En este tema este muy atento a la evolucin del mercado de Servicios WEB.
4. 5. Orientacin a Objetos.
Se puede hacer C/S e Internet sin saber OO. Sin embargo, conocer la
tecnologa ayuda muchsimo. Ms adelante plantearemos una reflexin sobre
las dos tecnologas.
5. Diseo i servicios.
Diseo
Tcnicas Tcnicas
GUI OOUI
Figura 45. rea temtica de diseo
5. 1. Modelos.
Las metodologas nos darn la pauta para resolver los problemas. Dentro de
este libro encontrar las metodologas que le propongo para disear las
aplicaciones distribuidas.
Existe una lgica de presentacin, de datos y de proceso que hay que repartir
entre clientes y servidores. La lgica de presentacin ir siempre en los
clientes pero las lgicas de datos y proceso se repartirn entre clientes y
servidores. Ms adelante tratar el tema en profundidad.
5. 4. Diseo de servicios.
5. 5. Datos.
Al hablar de datos tendremos que definir tambin modelos, hablar del acceso,
hoy unificado en ODBC-ADO-JDBC-SQL, hablar del problema de la
integracin de datos e introducir el diseo por transacciones distribuidas que,
en la prctica se usa en contadsimas ocasiones.
6. Implementacin e Integracin.
implementacin e IMPLEMENTACIN
integracin de las E INTEGRACIN
aplicaciones Integracin de Middleware Objetos Servicios
distribuidas en componentes Distribuidos
general y C/S en
Esttica Dinmica Desarrollo Administracin
particular conviene del Sistema
formarse en tres
apartados: Figura 46. rea de Implementacin e Integracin
6. 1. Integracin de componentes.
6.1.1. Esttica.
6. 2. Middleware.
6. 3. Objetos Distribuidos.
6. 4. Servicios.
7. Programacin.
A PROGRAMACIN
d
e Figura 47. rea de Programacin
p
En cuanto a la programacin, veremos que hay dos tipos bsicos de aplicaciones
distribuidas:
Sin embargo, es bien cierto que cada vez hay menos diferencias entre los
lenguajes actuales y que todos permiten montar todo. Elija el que prefiera. No es
una decisin crtica. Su nica restriccin debera ser trabajar con lenguajes que
permitan compartir componentes y/o rutinas independientemente de si se han
desarrollado en uno u otro lenguaje.
1. Introduccin.
Quiero hacer una consideracin previa que quizs escandalice a muchos expertos
en Orientacin a Objetos. Soy un firme convencido de que se puede disear
convencionalmente y programar OO para aprovechar as todas las ventajas que el
paradigma aporta para programar. En ese convencimiento escribo.
Encapsulamiento.
Polimorfismo.
Transparencia.
Reusabilidad.
Evidentemente se puede hacer C/S sin OO, e incluso programar en Java sin OO,
pero todo el entorno favorece que OO y C/S se combinen estupendamente bien.
Cada TAD define sus tipos de datos y las rutinas de gestin a travs de los
parmetros de la cabecera.
1. Introduccin.
Ofimtica.
Groupware.
Cuando hable de Componente de Alto Nivel me referir a programas que se usan por
si solos pero que las aplicaciones distribuidas pueden utilizar para cubrir parte de sus
funciones.
2. 1. Como servicio.
y Por interfase.
x El cliente o el servidor le pasan al componente un fichero con
los parmetros del servicio que le interesa.
y Por comunicacin asncrona desacoplada, de la que hablaremos
ms delante.
2. 2. Como estereotipo.
Por ejemplo, un ERP permite entrar o validar apuntes contables sobre una hoja
de clculo. Este recurso puede servir para validar las cifras de venta por toda la
red de agencias de una empresa. EXCEL ha asumido el estereotipo funcional
de validador.
3. Ofimtica.
Vd. es, seguro, un usuario habitual de las suites de ofimtica. Procesadores de texto,
hojas de clculo, presentaciones, bases de datos de usuario (tipo ACCESS),
paquetes de grficos, editores de imgenes, etc., son usados habitualmente por
informticos y no informticos.
Todas las funciones de estos paquetes puede ejecutarse y pedirse desde otros
programas y llamadas a travs de APIs.
Otro uso en el que Word facilita la vida es el diseo de impresos con formato
variable. Basta que los defina a travs de Word y que desde la llamada del programa
especifique que formulario necesita en cada caso.
Adems no menosprecie una cosa fundamental. Respetando las pocas reglas que
Vd. dar, los usuarios pueden mantener ellos mismos los formatos de sus impresos.
El sueo de nuestros usuarios y permite, adems, deshacernos de una de nuestras
pesadillas!
Realizar programas especficos para estos anlisis es caro en relacin con el poco
tiempo que se utilizarn. Y cuando se acaba la campaa ya no se necesitan ms. Si
existe la posibilidad de exportacin a Excel, nuestro usuario la utilizar y desde Excel
manipular y elaborar los datos segn sus necesidades.
Como buen informtico pensar que es mejor usar Access que Excel para cubrir
estas necesidades. Se olvida de que el usuario no suele ser un experto en Access.
En el mejor de los casos es un experto en Excel pero no conoce los mnimos de
lgica de programacin ni de diseo en entornos grficos para hacer algo en Access
ms halla de utilizar formularios predefinidos, que seguro, se le quedarn cortos.
Esta es la gran ventaja de Excel: todo el mundo sabe usarlo y se pueden sacar
resultados desde el primer momento. Si habita y forma su organizacin en el uso de
hojas de clculo, ese tipo de anlisis le sacar de encima una pila de problemas y
presiones.
Los ejemplos de utilizacin son tantos que podran construir un libro por si slo.
4. Groupware.
Solamente quiero, si Vd. no las conoce ya, hablar de los productos genricos y
explicarle los que, a mi juicio, pueden serle tiles en su diseo de aplicaciones
distribuidas.
4. 2. Sheduling y Calendaring.
4. 3. Conferencing.
4. 5. Workflow.
1. Introduccin.
Dentro de esa estructura, los puntos activos pueden ser ocupados por elementos
C/S, tanto en Sistemas Operativos como en Internet. De ah la fuerte interaccin
entre Workflow y aplicaciones distribuidas.
2. Qu es Workflow?
El trabajo original debe mezclarse con otros, transformarse y dirigirse hacia otro
punto del Workflow.
Workflow define las operaciones que deben de hacerse a lo largo del camino y
cuando ocurre una excepcin (evento) se ejecutan algunas de esas operaciones.
3. 1. Agentes.
Son los elementos activos que aportan valor aadido. Son bsicamente
personas y programas.
3. 2. Objetos.
Son los elementos pasivos sobre los que trabajan los agentes. Se incluyen
dentro de la definicin de objetos: documentos, formatos, eventos, mensajes,
etc.
3. 3. Rutas.
Definen los caminos (path) por los cuales los objetos han de viajar.
3. 4. Reglas.
Definen las condiciones bajo las cuales los objetos han de viajar y a que
agentes deben visitar. Por ejemplo, si en un proceso de venta el valor de la
compra es superior a 5.000 Euros, el pedido debe viajar al Dpto. de Crditos
para autorizacin.
3. 5. Rols.
Definen los lugares de trabajo y la gente que los ocupa. Por ejemplo, la
autorizacin de crdito lo cubre el rol de Aprobar Crdito y el rol lo ocupa Juan
y, si l no est, Luis.
3. 6. Usuarios.
Son las personas que asumen los rols. Pueden gestionarse, y de hecho se
gestionan, dinmicamente.
4. Modelos de Workflow.
Los elementos de Workflow se integran en modelos que son los que definen los
procesos de negocio.
Rutas, Regles y Rols se conoce con las tres Rs. Segn se agrupen se definen
dos modelos de Workflow:
Por ejemplo, hay que construir un documento multimedia que integra texto,
fotos y vdeo. Cada tarea se asigna a un especialista y existe un director
artstico responsable del documento.
4.2.1. Ad hoc.
4.2.2. Administrativo.
4.2.3. Produccin
Obviamente, la gestin de los correos solo debera incluir los que no son privados.
Vamos a entrat en polmica: los correos recibidos en direcciones de trabajo pueden
considerarse privados? Las empresas lo tienen muy claro: NO. La ley parece
definirse por el s.,
Supervisor
9. Gestin de Workflow.
Estaciones activas,
donde se realiza la Estacin Cliente
creacin y el Busqueda.
mantenimiento, la Consulta.
Recuperacin.
impresin y el
seguimiento.
Estaciones pasivas
donde se pueden realizar
consultas. Figura 54. Gestin de un Workflow
Y en un caso extremo, todos los agentes pueden llegar a ser servicios o agentes
desarrollados de forma especfica para el proceso de negocio resuelto por el
Workflow.
1. Introduccin.
2. 1. Lgica de presentacin.
2. 2. Lgica de datos.
3. 1. Modelo histrico.
En esta figura tiene Vd. un clsico. Nada menos que el primera propuesta (o
al menos la primera aceptada por todo el mundo) que puso orden en la
modelacin de los sistemas C/S.
Cliente
Presentacin Presentacin Procesos Base de datos Base dedatos
Distribuida Remota Distribuidos Remota Distribuida
SISTEMA
Base de
Procesos Procesos Procesos
Datos
Servidor
Definicin C/S GG: Todo sistema donde un nodo se auxilia de otro
Vista ahora le puede parecer simple y arcaica pero le aseguro que durante
aos la mayora de artculos sobre C/S la incluan como dogma de fe.
Para clasificar los modelos, la gente del Garther Group parti, muy
acertadamente como el tiempo confirm, de que en toda aplicacin,
distribuida o no, hay tres partes bien diferenciadas: presentacin, datos y
proceso. Que estn ms o menos diferenciadas depende slo de la calidad
del diseo.
3. 2. Modelo evolucionado.
Ello llev a que el modelo clsico inicial qued desfasado y a la propuesta por
parte de Garther de un nuevo modelo.
Se corresponde con el
modelo tradicional de Servidor/Host
proceso de datos. Un Gestin de SGBD
nico programa integra datos
todas las funciones de la
Datos
aplicacin y la
presentacin, tomando los
datos directamente de un Ordinador Programa de
Independiente Aplicacin y usuario en la
sistema gestor de bases lgica de
presentacin presentacin
de datos (SGBD). Capa de
software
independiente Flujo de datos de terminal
Los terminales son no
Terminal no
inteligentes. Middleware inteligente
De hecho, corresponde a
modelos de aplicaciones 2a. De paso de datos 2b. De paso de mensajes
de acceso a BD Servidor Servidor
compartidas en que todo SGBD con
se hace en el cliente. Es Gestin de SGBD Gestin de procedimentos
catalogados
datos datos y
decir, la mayora de las Middleware aplicacin Middleware
aplicaciones clsicas C/S
de consultas y/o Dades Mensajes
mantenimiento de datos,
pero siempre con diseo
Middleware Middleware
convencional.
Programa de Programa de
Aplicacin y usuario en la Aplicacin y usuario en la
lgica de lgica de
El nico servidor lgico presentacin
presentacin
presentacin
presentacin
real es el que proporciona
PC PC
el Middleware y que
encapsula el acceso a la
base de datos. Son Figura 58. Modelo C/S biestratificado del Garther
Group
habituales accesos a
travs del estndar ODBC-SQL.
La lgica de
presentacin se Servidor Servidor
encuentra en la SGBD SGBD
mquina cliente, los
Gestin de Datos Gestin de
procesos se reparten datos y datos y Datos
Programa
de usuario
entre la mquina aplicacin Programa de aplicacin
usuario Middleware
cliente y la servidora y
los datos estn en un Middleware
servidor de datos. Mensajes Mensajes
Middleware Middleware
Las funciones de
Programa de Programa de
proceso situadas en Aplicacin y usuario en la Aplicacin y usuario en la
lgica de lgica de
mquinas servidoras presentacin
presentaci
presentacin
presentacin
se encapsulan en
PC PC
servidores, programas
de usuario en el
modelo.
Figura 59. Modelo C/S triestratificado del Garther
Group
Existen tambin dos
submodelos:
x El de izquierda en el cual los datos se trabajan siempre
encapsulados en servidores.
Es un modelo basado
en que todos los
procesos y los datos se Gestin de datos Servidor
y aplicacin
encapsulan en objetos Datos SGBDR
distribuidos
programados con Aplicacin, gestin de SGBD
sucesos y presentacin
tcnicas de OO. Datos
Programa
Middleware
de usuario
Middleware
El componente de Datos
Middleware
SGBD
presentacin, un objeto Todos los objetos se
distribuido ms, utiliza Middleware OLE comunica por
el resto de objetos. mensajes y/o eventos
SGBD
Estos nuevos modelos del Garther Group estn mucho ms acorde con la situacin
real, pero a mi juicio presentan dos deficiencias:
Hemos visto anteriormente que con la aparicin del Middleware es posible reducir
los cuatro componentes bsicos del sistema a slo tres: cliente, Middleware (que
incluye sistema y transportista) y servidor.
4. 1. Usuarios Nmadas.
Client Servidor
(vendedores por ejemplo) y que utilizan
lew
idd
M
un porttil.
Veamos un ejemplo. Imagine que Vd. tiene una compaa con una red de
tiendas. Y que estas tiendas tienen volmenes muy diferentes. Podr disear
una sola aplicacin C/S para toda su red de ventas. En las grandes instalar
una red y distribuir en ella los clientes, servidores y el Middleware; en las
pequeas un slo PC instalar los tres componentes en un nico PC. Si la
tienda crece no tendr que cambiar aplicacin ni volver a formar a los
empleados ni cambiar los mtodos de trabajo. Bastar instalar una red y
distribuir los tres componentes.
4. 2. Red homognea.
dems componentes de
idd
M
la infraestructura.
4. 3. Red heterognea.
Ello no equivale
ar
lew
idd
necesariamente a
M
Client
Servidor
comunicaciones
remotas.
Servidor
Ya hemos visto
anteriormente que los
puntos de
heterogeneidad pueden
ser debidos a otras
Figura 63. Modelo C/S sobre topologa
de red heterognea causas.
4.3.1. Locales.
4.3.2. Remotas.
4. 4. Red global.
are
lew
idd
M
planeta a la misma velocidad (la
e
e
ar
de una red local por supuesto).
ar
le w
lew
Client Servidor
idd
idd
M
M
Todos los productos Middleware Servidor
are
lew
idd
M
Servidor
re
wa
Client Servidor
le
idd
M
hardware eran intercambiables...
Bienvenidos a la red global. Por Figura 64. Modelo C/S sobre una red global
cierto si Vd. llega a verla, la podr tratar como una red homognea a nivel
planetario.
Como es fcil observar, esta clasificacin de los sistemas C/S por topologas puede
tener cierto inters para administradores del sistema pero poco para diseadores.
Excepto en un caso, determinar puntos de heterogeneidad, asunto que como
sabemos es fundamental en el diseo C/S.
5. Modelos de aplicacin.
Modelos de aplicacin
Modelo 3 Modelo 4
Modelos 2 i 3 Modelos 2 i 3
Garther Group Garther Group
Garther Group Garther Group
Figura 65. Modelos de aplicacin
Puede existir o no una red local ya que los PCs Figura 66. C/S de
pueden estar conectados directamente a las maquillaje
antiguas lneas de los terminales. Aunque est situacin est prcticamente
desaparecida.
Caracterizado
bsicamente por la
existencia de una red local
muy homognea sobre la
cual se procesa una
aplicacin de diseo muy
convencional que utiliza la
red como servidor de
datos y de impresin.
y Consultas.
y Gestin de los datos: registro y modificacin.
5. 4. Modelo transaccional.
La conexin del entorno servidor se realiza habitualmente por red local pero
son frecuentes las consultas por red remota.
La aplicacin total es una mezcla de los otros modelos con fuerte presencia
de los modelos jerrquicos y de acceso directo a los datos.
y BD corporativas y distribuidas.
y BD locales en un servidor.
El modelo consistira en utilizar solo este tipo de servicios. Parece, a priori, tan
restrictivo que aplicarlo en una realidad tan compleja como un sistema distribuido
huele ms a teora que a modelo prctico.
7. Modelos de Diseo.
Personalmente creo que los modelos que hemos visto hasta ahora no me ayudan
en mi funcin de diseador de aplicaciones distribuidas. As que le propongo que
trabajemos con otra clasificacin.
Adems, esta clasificacin permite reflejar sin ningn problema una realidad de los
sistemas distribuidos: un mismo sistema puede compartir ms de un modelo.
7. 1. Modelo de presentacin.
7. 2. Modelo de Datos.
En la mayora de los casos el cliente slo utiliza del Middleware los servidores
de impresin y los servicios SQL del servidor de datos asociado al motor de la
base de datos.
A pesar de ser el modelo clsico, o quizs por que ello, sigue siendo el
modelo ms utilizado y el que presenta ms especializaciones. Y observe que
la llegada de Internet ha reforzado esta tendencia.
Hay servicios que realizan funciones de alto nivel lo que comporta que la
funcionalidad y la lgica de la aplicacin est distribuida entre clientes y
servicios. Coexisten servidores y agentes como proveedores de los servicios.
1. Introduccin.
Desde el punto de vista del modelo de anlisis y desarrollo existen dos tipos
bsicos de aplicaciones distribuidas. La decisin por uno u otro camino se basa en
las prestaciones que se esperan de la aplicacin.
Seguro que las aplicaciones de este tipo que Vd. lector realiza estn el bloque de
las pocas que se desarrollan correctamente y opina como yo que una metodologa
de anlisis debe ser empleada tambin aqu.
3. Aplicaciones avanzadas.
Donde:
y Localizacin de recursos.
y Parametrizacin.
y Autentificacin de usuarios y recursos.
Es frecuente que los equipos de trabajo en cada bloque sean diferentes ya que el
perfil, la formacin y experiencia de los profesionales necesarios es muy diferente.
Y tambin es frecuente que durante el desarrollo del bloque de arquitectura se
contrate soporte externo de expertos y especialistas.
Debe prever que hacer cuando falle una impresora en un puesto, debe tener
un sistema de autentificacin de nivel para los puestos de cobro (hay dinero
por en medio), debe consolidar la venta hecha mientras el servidor est sin
servicio, etc.
Y una aplicacin Internet puede permitir que cualquier cliente pueda conocer
desde su casa la situacin de su envo. Imagine el ahorro de coste de
personal atendiendo el telfono! Y la mejora del servicio!
4. 3. Gestin de almacenes.
La frontera entre las aplicaciones que hay que desarrollar RAD o avanzado no es,
como en todos los casos parecidos de la ingeniera, una lnea clara. Suele haber
una zona gris.
Crear servicios.
Definir agentes.
Modificar el modelo de datos.
Se pueden pasar estos procesos al equipo de aplicaciones avanzadas para que los
definan e implementes. Una vez realizado el trabajo, la aplicacin RAD podr
usarlos ya como un servicio ms.
La palabra rpido del concepto de RAD debera venir por la facilidad de integrar
aplicaciones rpidamente a partir de componentes ya creados y fiablemente
probados.
Aunque no sea de un modo unvoco, hay una relacin entre los modelos de Diseo
y los de Desarrollo.
Desarrollo Rpido:
} Aplicaciones de Presentacin.
} Aplicaciones de Gestin de Datos Centralizados.
} Parte de las aplicaciones de Gestin de Datos Replicados
Diseo Avanzado:
} Parte de las aplicaciones de Gestin de Datos Replicados.
} Aplicaciones de Gestin de Datos Distribuidos.
} Aplicaciones de Tratamientos Distribuidos.
} Aplicaciones de Funcionalidad Distribuida.
Centralizado Distribuido
1. Introduccin.
Sin embargo, una vez revisadas las caractersticas principales de las arquitecturas
distribuidas, ya sean basadas en Sistemas Operativos o Internet, es un buen
momento para hacer una reflexin de qu deber incluir el mtodo de diseo
tecnolgico para incluir los sistemas distribuidos.
4.1.1.B. Distribuir.
4.1.1.C. Integrar.
4. 2. Diseo de Consistencia.
Middleware estndar.
Middleware comprado a terceros.
De fabricacin propia:
} Generales a la instalacin.
} Reutilizadas de otras aplicaciones y que as pasan a ser genricas.
} Fabricadas especficamente para la aplicacin que se esta diseando.
Sin embargo recuerde que reutilizar es como el buen vino: en su justa medida es
una delicia, abusar pone enfermo. Habr de encontrar el equilibrio entre
prestaciones y costes. Hablaremos en la segunda parte de este ratio.
6. Diseo de clientes.
No hace falta decirle que si hay lgica de presentacin ser siempre grfica.
Si sigue estos consejos, y trabaja con metodologa puzzle, tendr mucho ganado y
su aplicacin ser mucho ms flexible.
Separa las tres lgicas le permitir un traspaso fcil de servicios entre servidores
y/o agentes y clientes. Imagine que ha tomado la decisin en el diseo de la
arquitectura del sistema de dejar un proceso de lgica de datos en un cliente. Y que
ms adelante necesita convertirlo en un servicio. Si ha trabajado bien, le bastar
coger la pieza que implementa esa lgica, crear un servidor y aadirle un modelo
de comunicacin. Sacando del cliente la pieza e incorporando una simple llamada
al servidor, conseguir que la comunicacin deje de ser esttica (en fase de link) y
pase a ser dinmica (en fase de ejecucin). Y el servidor ya estar disponible para
dar su servicio a otros clientes o servidores de su aplicacin. Habr de aadir, eso
si, al anlisis de consistencia correspondiente al nuevo servidor.
7. Diseo de servidores.
8. Diseo de agentes.
La Arquitectura de Datos
1. Introduccin.
Personalmente opino que es hasta tal punto importante disear bien la arquitectura
de datos en un entorno de este tipo, que ms adelante le recomendar que la
analice como primera etapa de su diseo de la arquitectura distribuida.
En este captulo le presento las nociones bsicas necesarias para poder seguir
introduciendo los temas de datos en esta primera parte del libro.
Desde el punto de vista del diseo, una solucin vlida es trabajar con el Modelo de
Objetos del paradigma OO que aporta la herencia como una va estndar de
generalizacin y especializacin. Y a la hora de implementar traspasar el modelo de
objetos al relacional con las conocidas reglas de equivalencia que encontrar ms
adelante.
{
de datos debe estructurarse
en tres niveles: Conceptual
squema layer
Conceptual Schema
1. El Esquema Externo.
{
Es la visin de la
Internal
aplicacin. Cada squema layer Internal Internal
aplicacin tiene su squema 1 squema M
propio esquema
conceptual que es una
abstraccin del Figura 74. Arquitectura ANSI/SPARC de tres esquemas
Esquema Conceptual
general. Permite aislar la aplicacin de los cambios evolutivos de la BD que
no la afectan.
2. El Esquema Conceptual. Define la informacin de forma genrica, desde la
perspectiva del inters general.
3. El Esquema Interno. Implementa el modelo conceptual segn las reglas del
DBMS escogido sobre cada mquina fsica traduciendo el esquema
conceptual sobre cada DBMS.
Mi propuesta es simple:
3. 1. Datos centralizados.
Los datos se organizan en una nica base de datos a la que accede todo el
sistema distribuido. Fue el modelo inicial ya que al aparecer la necesidad de
diseo Cliente/Servidor los datos en los HOST estaban organizados de esta
forma.
Hay que hacer un comentario ms. De hecho hay dos versiones del modelo
centralizado:
3. 2. Modelo particionado.
3. 3. Datos replicados.
Para participar de las dos ventajas, apareci pronto en la historia C/S una
solucin: copiar los datos estables de las bases de datos centralizadas y
montarlas sobre un modelo centralizado cerca de los clientes. Son los
modelos de datos replicados.
3.3.1. Copiar.
Los datos se copian tal cual. Hay una versin especial que es la copia
selectiva en la cual solo se copian parte de los registros. Una opcin
habitual es que la copia sea por algn criterio de particin horizontal. Por
ejemplo, en los PCs de un vendedor solo se copian sus clientes.
3.3.2. Sumarizar.
3.3.3. Reorganizar.
La clasificacin que hemos conocido hasta aqu, permite hacer una primera
modelizacin muy til. Pero la realidad demostr rpidamente ser mucho ms
compleja y desbord esta primera clasificacin clsica de los modelos de datos.
4. Integracin de datos.
4. 1. Inconsistencias.
4.1.1. Sintcticos.
Campos que en una de las bases de datos son de un tipo en la otra son
de otro. O siendo del mismo tipo, tienen formato diferente. Por ejemplo,
despus de un proceso de Upsizing de la aplicacin de fbrica y
aplicacin de administracin hay que hacer convivir dos ficheros de
productos. El cdigo de producto en fbrica es un string de 10 caracteres
pero en administracin es de 8. O la unidad de medida es la BD de la
fbrica un real y en la de administracin un entero.
4.1.2. Semnticos.
4.2.2. BD Distribuida.
4.2.3. BD Federadas.
Por ejemplo, las herramientas OLAP se utilizan para llevar a cabo anlisis de
tendencias sobre ventas e informacin financiera, permitiendo a los usuarios
profundizar dentro de grandes volmenes de estadsticas de venta para aislar
los productos ms voltiles.
En el 99,999% de los casos el acceso a los datos es va SQL. El SQL puede utilizarse
directamente sobre las herramientas propietarias de las BD y a travs de ODBC o
ADO.
La gran ventaja de utilizar SQL estndar sobre ODBC y en menor medida sobre
ADO es la transportabilidad. Los partidarios de utilizar la va directa que
proporcionan todos los motores le dirn que es mejor porque los estndares tienen
perdida de rendimiento. Este argumento, que poda ser cierto en las primeras
implementaciones del estndar ODBC, ya no es vlido actualmente. El nico
Observar en todo lo que sigue que no propongo ningn grupo que no sea sobre
una BD relacional.
Centralizado Distribuido
Un slo esquema lgico Ms de un Esquema Lgico
8. 1. Modelo Centralizado.
8.1.1. Unificado.
8.1.2. Repartido.
8. 2. Modelo Distribuido.
8.2.1.B. Horizontalmente.
8.2.2. Integrados.
8.2.2.A. Homogneos.
8.2.2.B. Heterogneos.
Ms de un esquema lgico.
8. 3. Modelo Replicado.
Vale tambin aqu recordar lo que hemos hablado anteriormente sobre datos
replicados.
y Copia.
y Sumarizacin.
y Reorganizacin.
9. Procedimientos Catalogados.
Si utiliza el sistema
Aplicacin habitual cada vez
Aplicacin
que realice un paso
SQL la peticin y los
Red Red datos viajarn a
travs de la red. Si
encapsula la lgica
Procedimiento de datos en un
catalogado SQL procedimiento
catalogado, por la
red solo viajar una
peticin y una
respuesta. Toda la
lgica da datos se
Figura 79. Procedimiento Catalogado versus SQL ejecutar localmente
en el servidor.
Imagine, por ejemplo, que quiere dar de baja un producto de venta. Deber
comprobar que no hay stock, que no est utilizado en ningn pedido vivo, que
no hay ninguna frmula de fabricacin ligada, etc. Compare el flujo SQL
necesario para las comprobaciones y las bajas y la ejecucin de un nico
procedimiento catalogado.
9. 3. Utilizacin.
1. Introduccin.
Existe una comparacin clsica que incluyo junto a otros puntos ms actuales en la
siguiente tabla. Le he subrayado los puntos que, a mi juicio, son de especial inters
y complejidad. Y algunos comentarios totalmente subjetivos.
Hardware.
Software de base, aplicaciones y servicios, aunque en la prctica el primero
que es generalista, suele diferenciar de los otros dos que necesitan una cierta
especializacin.
Conectividad.
Datos.
Hardware
Hardware Software
Software Conectividad
Conectividad Datos
Datos
z Placa base z Sistema z Sistema z Bases de datos
z Placa base z Sistema z Sistema z Bases de datos
z Memoria Operativo Operativo de red z Datos planos
z Memoria Operativo Operativo de red z Datos planos
z Targetas z Controladores (NOS) z Logins
z Targetas z Controladores (NOS) z Logins
aadidas z Utilidades z Administracin z Grupos y
aadidas z Utilidades z Administracin z Grupos y
z Unidades de z Interfces GUI distribuida (DSM) Usuarios
z Unidades de z Interfces GUI distribuida (DSM) Usuarios
disco z Ofimtica z Comunicaciones
disco z Ofimtica z Comunicaciones
z Pantalla y z Correo z Internet
z Pantalla y z Correo z Internet
teclado electrnico z Declaracin y
teclado electrnico z Declaracin y
z Elementos de z Internet accesibilidad a
z Elementos de z Internet accesibilidad a
conectividad z Antivirus los recursos
conectividad z Antivirus los recursos
z Impresoras z Aplicaciones compartatidos
z Impresoras z Aplicaciones compartatidos
Instalacin Instalacin y
Instalacin
| Instalacin y
Configuracin
|
Configuracin Distribucin Instalacin y Configuracin
|
Configuracin Distribucin Instalacin y
Configuracin |
| | Configuracin
| Seguridad
|
Inventario |
Instalacin y | Seguridad
|
Inventario
| Instalacin y
Configuracin Integracin |
Integridad y
| Configuracin Integracin
| Integridad y
Monitoritzacin | |
Monitorizacin Consistencia
Monitoritzacin |
Licencias Monitorizacin Consistencia
|
Licencias local y remota Back-up| y
local y remota Back-up y
Recuperacin
Recuperacin
4. 2. Situacin y localizacin.
4. 5. Back-up y recuperacin.
4. 6. Inventario de elementos.
Si alguna vez tiene que responder a una pregunta del tipo: qu costar subir
la versin del paquete de ofimtica? que Dios le ayude. Es la pregunta de
todas las pesadillas.
y La dispersin geogrfica.
y La dispersin de elementos.
4. 8. Configuracin.
y La dispersin de entornos.
y La dispersin geogrfica.
y Las acciones realizadas por el propio usuario.
y Disponibilidad de los servicios y/o elementos.
4. 9. Rendimiento.
Hablamos de cuando, donde, de que forma y con que coste pueden los
usuarios obtener ayuda delante de un problema de explotacin.
Factores:
Cuando tenga una alarma de virus en un punto, pare y revise todo el entorno
potencialmente contaminado.
El gran inconveniente es el precio. Tendr que tener un entorno muy amplio para
que se le justifique la inversin en un producto de este tipo.
Recuerde que las funciones a cubrir en un sistema distribuido son bsicamente las
mismas que en uno que no lo es. El diseador deber conocer cual es la
problemtica general de la administracin del sistema. De ella, cual afecta a su
aplicacin. De aqu, relacionar las necesidades de administracin y marcar las
propuestas, que deber concensuar con el Administrador del Sistema y, si
conviene, con los usuarios. Surgir as el Plan de Administracin donde se resumir
la poltica de administracin decidida para el sistema distribuido..
A partir de aqu, deber analizar cuales de estas necesidades quedan resueltas por
el DSM. Y finalmente, implementar como parte de su aplicacin las que falten. Y
siempre con la idea de que el que vaya detrs pueda reutilizar al mximo las
nuevas funciones.
Como ya hemos dicho, cuando el diseador aborde esta parte, deber tener muy
en cuenta los criterios de reutilizacin ya que las funciones de DSM que
implemente sern muy probablemente de inters para futuras aplicaciones.
Recuerde que a la hora de fabricar componentes reutilizables no hay que perder de
vista el ratio prestaciones/costes y caer en el extremo de generar un software tan
general que en su instalacin no se llegue a amortizar nunca.
1. Introduccin.
2. Los estndares.
En el mundo del NOS + DSM, la situacin es mucho menos clara pero parece
decantarse por las lneas Windows o Linux para el NOS y por las propuestas de
OSF o Microsoft para el DSM (recuerde el captulo anterior).
3. Estndares e implementacin.
Cada vendedor hace una implementacin del estndar. La parte bsica del
estndar suele ser respetada. Pero el fabricante, para diferenciarse en calidad de la
competencia, suele aadir prestaciones extendidas. Usarlas suele ser tentador,
pero muy peligroso. Si aade una nueva plataforma e incorpora un nuevo
proveedor del estndar, no tendr compatibilidad. Yo le recomiendo no hacerlo.
Recuerde sobre este punto la reflexin que sobre MS SQL Server hemos hecho
antes.
Y si no hay ms remedio que convivir con ello, la solucin pasa por encapsular.
4. Recomendaciones finales.
Est muy atento a la evolucin de los estndares. Para conseguirlo, lea revistas,
asista a congresos, vaya a presentaciones de productos de diversos fabricantes. Y
no se olvide de intercambiar experiencias con otros profesionales.
1. Introduccin.
Como parte del modelo distribuido habr que decidir como se comunican los
servidores con los clientes u otros servidores.
Sin embargo, en esta primera parte introductoria es fundamental sentar las bases y
que Vd., amigo lector, comience a familiarizarse con un tema tan bsico.
Para facilitar la lectura, voy a referirme como cliente al elemento que pide el
servicio, independientemente de si en esa posicin hay un verdadero cliente o un
servidor que temporalmente se convierte en cliente de otro.
No hay que olvidar en ningn momento que esta interaccin presenta las siguientes
caractersticas bsicas:
2. 1. Cooperativa.
2. 2. Transaccional.
2. 3. Sincronizado o no.
3. 1. Comunicacin sncrona.
3. 2. Asncrona.
3.2.1. Multipeticin.
Los clientes deben poder dejar peticiones para los servidores aunque
estos estn ocupados. Este mecanismo, aunque escondido, tambin
existe en la comunicacin sncrona.
3.2.2. Interrogacin.
3. 3. Desacoplada.
PROGRAMA INTERACCIN
INTERACCINCLIENTE/SERVIDOR
CLIENTE/SERVIDOR
Observe la figura. A la PROGRAMA
izquierda tiene un esquema del NICO
NICO Cliente Servidor Cliente Servidor
comportamiento Call-Return de
llamada a una rutina linkada en
un programa.
Llamada
En el centro tiene el esquema Rutina Peticin Peticin
de una comunicacin sncrona
en la cual un cliente llama a un
servidor y se espera a la
respuesta. Las dos situaciones
descritas parecen iguales. Pero Retorno Respuesta Respuesta
si se observa bien hay dos
diferencias notables: dos
programas comunicndose y la
posibilidad, ya comentada de Se llama a la rutina El Cliente espera El Cliente continua
que no llegue la respuesta. El y se espera respuesta respuesta trabajando
servidor est arrancado y a la Figura 82. Comunicacin C/S sncrona y asncrona.
espera de la peticin o atendiendo las de otros clientes. El cliente sigue activo y en
ejecucin pero esperndose a la respuesta. El tiempo de proceso del cliente
mientras espera se pierde.
En una comunicacin asncrona el cliente queda liberado para hacer otras cosas
mientras el servidor procesa su peticin.
La utilizacin de este tiempo puede marcar la diferencia entre un buen diseo y otro
mediocre. Djeme ponerle un ejemplo.
Imagine que tiene una aplicacin de captacin de pedidos distribuida y que la est
ejecutando en una delegacin de ventas de Girona. Por necesidades de control de
riesgo debe comprobar el crdito del comprador sobre una BD de Barcelona. Y la
comunicacin remota que tiene no es rpida, por amplitud de lnea o por
Pero si la comunicacin no
tuviera nada mas, el cliente Servidor
Cliente
debera saber en que momento
el servidor est libre para
comunicarse con l. Ya se ve
que trabajando as el conjunto Peticin Servidor libre
no sera operativo. Ha de existir
Primero
un mecanismo que permita al de la lista
cliente lanzar la peticin sin Lista de
saber el estado del servidor. espera
Este mecanismo es el que en la
figura se representa como la
Respuesta
lista de espera.
Independientemente de que el
mecanismo sea sncrono o Figura 83. Servicio de Multicliente.
asncrono, el cliente lanza la peticin que se anota en la lista. Cuando el servidor
queda libre se le suministra uno de las peticiones pendientes, normalmente la
primera o la ms prioritaria.
5. Modelos de comunicacin.
Para abrir boca, repasemos aqu alguno de los modelos incluyendo alguno de los
tradicionales. Y aprovechemos para explicar la situacin actual de estos ltimos
Los smbolos que encontrar ligado a cada modelo es el icono que usaremos en la
parte de desarrollo. Vaya familiarizndose con ellos.
5. 1. Modelos asncronos.
5.1.1. Conversacional.
5.1.2. Cola.
S
conocer su localizacin dentro de la plataforma.
La comparacin entre RPC y colas ha sido la forma de siempre para comparar las
ventajas e inconvenientes entre modelos de comunicacin sncronos y asncronos.
7. 1. RPC.
7.1.1. Ventajas.
y Facilidad de programacin.
y Independiente de la plataforma lo que permite conexin con
sistemas desconocidos. Esconde las incompatibilidades de datos
sobre plataformas y lenguajes.
y Aumento sin problemas de clientes.
7.1.2. Desventajas.
y Comunicacin asncrona.
y Hace ms difcil un rendimiento escalonado.
7. 2. Colas.
7.2.1. Ventajas.
7.2.2. Desventajas.
1. Introduccin.
Por esa razn el viaje va a ser rpido y slo nos pararemos en un modelo genrico
que como mnimo le aportar una idea de como trabajan los diferentes modelos. Y
si desea ganar tiempo, vaya directamente al modelo genrico.
El desarrollo.
} Obtener servicios de datos y de
Sistema
proceso de forma transparente.
} Obtener transparencia en el Aplicacin SERVICIOS
transportista
La administracin del sistema.
La localizacin de los elementos en la
plataforma.
Por favor, en esta visin idlica del sistema nico, no olvide que el sistema puede
fallar y que debe incluir el diseo de consistencia.
Los mecanismos bsicos del Middleware, que deber encontrar en todos los
modelos, son:
5. 1. Servicios de Desarrollo.
y RPC.
y Colas (MOM).
y Conversacional.
y Memoria compartida (casi no se usa ya).
Wire
Distribuited Applications
Applications and
and
Figura 87. Modelo de King Applications Applications
Applications Developent
Developent Tools
Tools
(1992).
de alto nivel (RPC, Distribuited Transaction-processing
Transaction-processing E-mail
DATABASE Access, MOM, Facilitis Model
Model E-mail
ORB) y las aplicaciones se
Communication Database
Database Message
Message
incluyen dos piezas llamadas model RPCs
RPCs ORB
ORB
Access
Access Queuing
Queuing
a tener en el futuro una
importancia bsica: un gestor Core
de transacciones y, sobre services Messaging
Messaging Middleware
Middleware
todo, el Mail, correo
independiente de la
heterogeneidad de la
Sistema
Sistema
plataforma. El transportista
queda definitivamente
escondido en el Middleware y Figura 88. Modelo de Dolgicer de 1994.
Dolgicer habla ya nicamente
de un Middleware que transporta mensajes de forma transparente a la plataforma.
Seguro que hay otros modelos anteriores que yo no conozco, pero por lo que s, es
ste el primer modelo de Middleware completo.
7. 1. Servicios.
ORB recibe una peticin de servicio, localiza el objeto que lo da, pasa los
parmetros y devuelve los resultados. Todo ello segn un modelo OO y de
forma transparente a la plataforma.
Servidor
Cliente Object Implementation
ORB Core
Interface dependiente del ORB
Interface identica para todas las implementaciones de ORB
Una para cada tipo de Objeto
Puede haber diversos adaptadores de Objetos
.
Figura 92. Estructura del ORB
Estoy tan enamorado del los Objetos Distribuidos que tengo que hacer un esfuerzo
para no seguir... Si desea ms informacin consulte bibliografa especializada.
Recurdelo aqu.
Por esa razn, lo que si es muy interesante desde el punto de vista de un diseador
es establecer un modelo general y estndar del Middleware independientemente
del modelo concreto con el que trabaje. Disear con esa idea. Con la relacin
clara de los servicios de que dispone, slo cuando implemente consultar la
sintaxis concreta de cada servicio. Y delegar en el Middleware el trabajo. Como se
lo monta el Middleware, es su problema, no el suyo.
Las aplicaciones
generadas a travs de
Figura 93. Modelo estndar de Middleware las herramientas de
desarrollo usan todos los servicios a travs de APIs de Middleware. De hecho, esa
es su nica interaccin con el Middleware.
Una capa de alto nivel: RPCs, Data Access, ORB, MOM, etc.
Las Distribuited Facilities proporcionadas por el DSM. En particular, son
fundamentales las de situacin de recursos (instanciacin, directorio,
localizacin, etc.).
Todo ello comporta que el modelo estndar del Middleware debe completarse con
estos elementos para completar el Middleware real tal como se muestra de la
figura.
Applications
Applications and
and
La evolucin de los estndar en Applications
continuada. Con ella el Applications Developent
Developent Tools
Tools
Middleware desarrollado como de APIs
APIs del
del Middleware
Middleware
usuario puede ser cubierto por un de
de usuario
usuario
Middleware
Middleware APIs
APIs
nuevo estndar. La pregunta
surge espontneamente: hay
que sustituir el Middleware de la Middleware
instalacin por el estndar? Situar
Situar Middleware
Recursos de
Recursos de Usuario
Usuario
Yo soy un convencido de que Messaging Middleware
s. Al hacerlo adaptaremos
automticamente muestro diseo APIs
APIs de
de Sistema
Sistema
al carro de la evolucin. Si no,
cada vez que se de un paso
adelante, el Middleware de Sistema
Sistema
usuario deber adaptarse.
Reconozco que muchas veces la
sustitucin tiene un componente Figura 95. Modelo de Middleware Real
personal y emotivo. Sustituimos un Middleware que nos ha costado un montn de
horas de trabajo y del que nos sentimos orgullosos. Es como matar un hijo. Pero, a
pesar de ello, hgalo.
1. Introduccin.
2. Implementacin.
3. Integracin.
3. 1. Desarrollo.
3.1.1. Estticamente.
3. 2. Explotacin.
3.2.1. Esttica.
3.2.2. Dinmica.
1. Introduccin.
Hemos visto a lo largo de la primera parte que, de hecho, hay dos tipos de
aplicaciones distribuidas: las de desarrollo rpido (RAD) y las avanzadas.
Si desea entrar con aplicaciones RAD el camino en sus primeros pasos es muy
corto ya que su organizacin slo debe tener en cuenta cuatro factores de todos los
que vamos a exponer a continuacin:
El concepto de Middleware.
Qu una aplicacin distribuida, cualquiera que sea su tipologa ha de prever
que pasa cuando no responden los servidores, lo que hemos llamado anlisis
de consistencia.
Qu el hecho de que la aplicacin sea RAD no le exime de trabajar con la
idea de componentes reutilizables.
La interaccin y la sinergia entre Cliente/Servidor e Internet.
Planificacin.
El factor humano.
El primer proyecto.
El ciclo introductorio.
3. Planificacin.
La organizacin deber decidir si desea ir todo el camino con sus propios recursos
o se va a apoyar en expertos contratados por Outsourcing.
Deber decidirse cual son los niveles lgicos que se establecern sobre los niveles
fsicos y cual ser la poltica general de administracin del sistema distribuido,
y, en particular, cual ser la poltica de soporte a usuarios.
4. El factor humano.
Esta decisin no siempre es fcil ya que como la gente interna conoce mejor los
procesos de toda la vida la calidad de servicio puede bajar. Controle que no sea por
debajo de lmites tolerables. Y recuerde que el futuro es lo nuevo y el pasado lo
antiguo. Su gente le interesa en el futuro no en el pasado. Adems de la motivacin
que conseguir actuando con esa mentalidad.
5. El primer proyecto.
Escoja un proyecto real pero sin plazo de entrega critico. Intente que no
tenga condicionamientos de plataforma importantes o bien lo que necesite de
ella ya est operativo.
El mbito del proyecto ha de estar bien definido y no ser muy ambicioso.
Escoja un equipo de gente preparada y motivada, dirigidos por un Jefe de
Proyecto competente e interesando en las nuevas tecnologas.
Consiga que el equipo se dedique exclusivamente al proyecto.
Dos usuarios lderes, a ser posible:
} Uno en un puesto alto del organigrama de la compaa.
} Otro que se juegue su prestigio en el proyecto.
Una vez cumplida esta primera etapa, escoja una aplicacin piloto. Los objetivos de
esta aplicacin piloto son:
Una definicin funcional muy clara y a ser posible con valor aadido
importante.
Que afecte a reas de la organizacin motivadas por el cambio.
El proyecto debe de estar impulsado, una vez ms, con un mecenas bien
situado en el organigrama de su compaa.
Debe estar perfectamente definida la evolucin necesaria en la plataforma
desde la situacin inicial a la que necesita el proyecto. Y el cambio no ha de
ser muy traumtico. Si lo es, debe atacarse como un proyecto previo e
6. El ciclo introductorio.
Formacin
150h inicial
6 meses
Proyecto
150h tutorizado
1,5 aos
1 ao
6 meses Primers Primeros 3 meses
projectes proyectos
Creacin de Creacin de
equipos equipos
6 meses - - 3 meses
Primeros Primeros
componentes componentes
7. Consideraciones subjetivas.
1. Introduccin.
Hacer una visita rpida a este tema, es interesante no slo para conocer este tipo
de productos, una clara posibilidad para distribuir, sino tambin porque son ejemplo
de sistemas distribuidos.
2. Qu es un ERP?
Todo ello, debidamente utilizado, permite generar una solucin especfica para
cada caso y abrir la accesibilidad a la informacin desde toda la organizacin con
muy poco esfuerzo tcnico.
3. 1. Etapa de reflexin.
3. 2. Etapa de pre-arquitectura.
3. 3. Etapa de seleccin.
3. 5. Criterios de funcionalidad.
3. 6. Criterios tcnicos.
3. 7. Criterios de consultara.
3. 8. Criterios de proveedor.
3. 9. Criterios de implantacin.
y Costes de:
x La personificacin.
x Licencias.
x Mantenimiento anual.
x Personal interno necesario.
x Directo (cursos) e indirecto (tiempo del personal interno) de la
formacin.
y Tiempo de necesario para la implantacin.
Necesitar consultora externa para atacar las subetapas en las que realizar
la implantacin:
No olvide que aqu la adaptacin es doble: del ERP al negocio y del negocio
al ERP.
Al final de esta etapa debe conseguir, como objetivo paralelo bsico, que
el know-how quede en personal interno y nunca nicamente en los
consultores externos.
4. Arquitectura de un ERP.
Servidor Internet
Web Server
Servicios de Aplicacin
Servicios de Aplicacin
Servidor de Procesos
5. La arquitectura de capas.
La realidad es tan compleja que es imposible, e intil, estratificar los servicios que
se utilizan excepto en aplicaciones muy pequeas o en productos, como los ERPs
en que la arquitectura de capas es casi un condicionamiento de diseo, ms por
razones histricas que por limitaciones tcnicas.
5. 1. Modelo de Programacin.
Los ERP's modernos estn diseados con el modelo avanzado orientado a objetos,
basado en una arquitectura de objetos distribuidos.
Las modificaciones han de hacerse, pues sobre objetos. Hay dos formas de
hacerlo:
En este ltimo mbito, los ejemplos son tantos como los cambios producidos. El
cambio del ITE al IVA en su momento, la superacin del efecto 2000 y la
adaptacin al EURO son ejemplos del pasado.
Ojo con este ltimo dilema. Una de las tericas ventajas de una solucin ERP es
que permite reducir la plantilla de informticos internos. Pero es siempre a costa de
pagar consultora. Y si al final los consultores externos son los nicos que conocen
el funcionamiento de los sistemas de informacin de la compaa,... est perdido!
Le darn siempre soluciones, pero a un coste y con una dependencia externa que
no sabr nunca si las soluciones que le proponen es la que ms le conviene a Vd. o
a ellos.
Como siempre habr que analizar cada caso para saber que es lo que ms
conviene.
Una solucin muy utilizada es usar el cuerpo del ERP parametrizando al mximo y
programando el ERP a medida lo mnimo posible y utilizar aplicaciones perifricas
para particularizar la solucin, asumiendo el ERP la funcin de armazn de la
arquitectura distribuida.
Y por favor, haga que su organizacin siga mi consejo: tenga personal interno
para dirigir tcnica y funcionalmente el proyecto y no se entregue en manos
de una consultora externa, a la que deber contratar, de eso no se escapa, pero
a la que no deber permitir dirigir ni conocer exclusivamente la arquitectura
informtica de la compaa.
10. ASP's.
Alquilar software a un ASP puede ser una buena solucin para compaas que
buscan ahorran tiempo y dinero (?) a la hora de implementar aplicaciones.
Los ASP's se han visto potenciados por la llegada de Internet ya que esta
plataforma a permitido un acceso ms rpido, general y econmico al software que
alquilan.
Aplicaciones.
Servicios de Infraestructura, comunicaciones en particular.
Housing.
Software bsico, etc..
En cualquier caso, es claro que este concepto es no es de diseo y que, por tanto,
podemos no volver a referirnos a l en el resto del nuestro viaje.
1. Introduccin.
El tema lo tratar en profundidad al final del libro aprovechando las experiencias del
viaje a travs del diseo.
Sin embargo, creo que no se puede acabar un ciclo de introduccin a los sistemas
distribuidos sin hablar dos palabras sobre este tema.
Host
El Escenario
PC Aislado Centralizado supone la
(Batch+OLTP)
Centralizado utilizacin de un HOST
como nico soporte de
Escritorio/
Host
C/S datos las aplicaciones de la
compaa. Si existen
Cliente/ PCs, solo estn como
Servidor/Host elementos aislados en
Jerrquico
funciones especificas.
Componentes
Personalmente creo que
Distribuibles es un escenario muy
poco frecuente
Entre Iguales actualmente.
+ Jerrquico Procesos
Organizativos
El siguiente escenario
aparece con la
interconexin del HOST y
Figura 98. Evolucin por Escenarios los PCs a travs de
redes y comunicaciones.
En este escenario, las aplicaciones son jerrquicas por lo que este escenario se
denomina genricamente Escenario Jerrquico.
El Sistema Integrado se
representa en el centro Paquetes
Aplicaciones
como el objetivo a Perifricas
conseguir. Host DownSizing
Por ltimo los sistemas aislados se integran dentro del sistema mediante una etapa
de Upsizing.
Recuerde, por favor, este apartado del captulo dedicado a los ERP's.
5. Un comentario final.
1. Introduccin.
Para acabar esta primera parte repasemos los tpicos clsicos que siempre se han
manejado dentro del mundo de las aplicaciones distribuidas.
2. 1. Ventajas.
2. 2. Desventajas.
3. Costes.
Tradicionalmente se ha dicho que los sistemas distribuidos son ms baratos que los
centralizados. No estoy de acuerdo. Aunque de hecho, si lo estoy. Djeme que le
justifique esta aparente contradiccin
La formacin de personal.
La administracin de sistema.
Sin embargo:
Todo ello puede ser esquematizado en una balanza de costes como la de la figura.