1. SECRETARÍA DE
EDUCACIÓN PÚBLICA
INSTITUTO TECNOLÓGICO DE
COMITANCILLO
MATERIA:
DESARROLLO DE APLICACIONES PARA AMBIENTES DISTRIBUIDOS.
TRABAJO:
INVESTIGACIÓN DE LA 1 UNIDAD.
CARRERA:
INGENIERÍA INFORMÁTICA.
CATEDRATICO:
LIC. ISIDRO LÓPEZ RUÍZ.
2. OBJETIVO DE LA MATERIA:
Desarrollará aplicaciones utilizando métodos, herramientas y
técnicas para el desarrollo de aplicaciones distribuidas,
observando estándares y arquitecturas abiertas.
¿Qué es una arquitectura?
Es un nivel de diseño que hace foco en aspectos
más allá de los algoritmos y estructuras de datos de
la computación, el diseño y especificaciones de la
estructura global del sistema es un nuevo tipo de
problema, la forma que se considera para formar
algo.
3. ¿Qué es una aplicación
distribuida?
Es una aplicación con distintos
componentes que se ejecutan separados,
normalmente en diferentes plataformas
conectadas.
¿A qué se refiere la distribución?
La distribución se refiere a la construcción
de software por partes, a las cuales le son
asignadas un conjunto específico de
responsabilidades dentro de un sistema.
4. ¿Qué es una arquitectura en
ambiente distribuido?
Describe la estructura y la organización
de los componentes del software, sus
propiedades y la conexión entre ellos
para formar el sistema; la cantidad y la
granularidad de comunicación que se
necesita para la interacción y los
protocolos de interfaz usada por la
comunicación.
5. 1.1 Capa de interfaz de usuario.
La capa de presentación o interfaz de
usuario se refiere al mecanismo de
interacción del usuario con el sistema.
6.
7. Es la que ve el usuario (también se la denomina
"capa de usuario"), presenta el sistema al usuario, le
comunica la información y captura la información del
usuario en un mínimo de proceso (realiza un filtrado
previo para comprobar que no hay errores de
formato). También es conocida como interfaz gráfica
y debe tener la característica de ser "amigable"
(entendible y fácil de usar) para el usuario. Esta capa
se comunica únicamente con la capa de negocio.
8.
9. 1.2 Capa de manejo de datos.
La capa de negocios o de manejo de datos,
es donde residen los programas que se
ejecutan, se reciben las peticiones del
usuario y se envían las respuestas tras el
proceso. Se denomina también capa de
negocio (e incluso de lógica del negocio)
porque es aquí donde se establecen todas
las reglas que deben cumplirse.
10. Esta capa se comunica
con la capa de
presentación, para recibir
las solicitudes y presentar
los resultados, y con la
capa de datos, para
solicitar al gestor de base
de datos almacenar o
recuperar datos de él.
También se consideran
aquí los programas de
aplicación.
El objetivo de la creación de esta capa “intermedia” es
aislar la capa de presentación de la capa de servidor, de
forma que las estructuras de datos subyacentes y la lógica
que las utilizan sean independientes de la capa de
presentación.
11. por lo general la capa de negocios suele dividirse en
dos tipos de elementos, atendiendo a la función que
desempeñan en la capa.
* Lógica de negocios
Cuando las aplicaciones adquieren cierto volumen o las
entidades implicadas tienen cierta complejidad, la lógica de
acceso a datos por sí sola no es suficiente para encapsular
convenientemente el acceso a las entidades de datos.
* Lógica de acceso a datos
La lógica de acceso a datos incluye los
elementos necesarios para que la aplicación
se conecte a orígenes de datos y recupere
estructuras de datos que serán utilizadas por
el resto de la aplicación.
12. 1.3 Capa de procesamiento de
datos.
Es donde residen los datos y es la encargada
de acceder a los mismos. Está formada por
uno o más gestores de bases de datos que
realizan todo el almacenamiento de datos,
reciben solicitudes de almacenamiento o
recuperación de información desde la capa de
negocio.
13. El acceso a datos se refiere al medio a través del
cual podemos acceder y manipular los datos
persistentes de un sistema.
El almacenamiento de datos se refiere a la forma en
que se encuentran guardados dichos datos, por
ejemplo, en archivos o bases de datos.
* Servicios
En esta capa encontraremos los procesos de la aplicación
que se encargan recibir las peticiones de las capas superiores
y, si es necesario, devolver los datos solicitados. Esta función
será desempeñada por un servicio.
Los servicios son procesos que se ejecutan en los equipos
servidores y que se mantienen a la escucha esperando que
los procesos cliente les soliciten funcionalidad o datos.
14. * Servicios de base de datos
Los servicios de base de datos son los más
frecuentes en las aplicaciones distribuidas. Los
SGBD como SQL Server u Oracle disponen de toda
la infraestructura de servicios necesarios para que
los equipos cliente les realicen peticiones y para
responder a ellas.
Al trabajar con datos debe determinar:
* El almacén de datos que utiliza.
* El diseño de los componentes utilizados para
obtener acceso al almacén de datos.
* El formato de los datos pasados entre
componentes y el modelo de programación
necesario para ello.
15.
16.
17.
18. 1. 4 ¿Qué es la integración de sistemas1. 4 ¿Qué es la integración de sistemas
heredados?heredados?
La integración de sistemas heredados puede
definirse como la reutilización de sistemas
y aplicaciones heredadas existentes, que
se logra mediante la integración con
aplicaciones corporativas desarrolladas
recientemente.
19. Integración de sistemas heredados.
Un sistema heredado (o sistema legacy) es un
sistema informático (equipos informáticos o
aplicaciones) que ha quedado anticuado pero
continúa siendo utilizado por el usuario (típicamente
una organización o empresa) y no se quiere o no se
puede reemplazar o actualizar de forma sencilla.
20. Los sistemas heredados no son sólo sistemas de
software de aplicación. Son sistemas socio-técnicos,
por lo que incluyen procesos de negocio, software
de aplicación, software de apoyo y sistema
hardware.
21. Muchos sistemas heredados todavía se utilizan porque
solucionan bien el problema y reemplazarlos sería
demasiado costoso.
Las compañías gastan mucho dinero en sistemas
informáticos y, para obtener un beneficio de esa
inversión, el software o el hardware debe utilizarse
varios años. El tiempo de vida de los sistemas
informáticos es muy variable, pero muchos sistemas
grandes se pueden llegar a utilizar hasta más de 20
años.
22. El enfoque del problema de las aplicaciones
heredadas es el de evitar cualquier modificación en
los sistemas heredados que pueda poner en peligro
la entrega de servicios; este enfoque también elimina
la formación de los usuarios del sistema heredado al
nuevo sistema, con el beneficio evidente del ahorros
de costes y tiempos en la adquisición de nuevo
equipamiento y el período de adaptación requerido
para utilizarlo.
23. • Riesgos de la migración de un
sistema heredado.
Los sistemas heredados son considerados
potencialmente problemáticos por
numerosos ingenieros de software por
diversos motivos. Dichos sistemas a
menudo operan en ordenadores obsoletos
y lentos, cuyo mantenimiento tiene
elevados costes y son difíciles de actualizar
por falta de componentes adecuados o de
mantenimiento.
24. • Costes de mantenimiento de un sistemaCostes de mantenimiento de un sistema
heredado.heredado.
Seguir utilizando los sistemas heredados evita
los mencionados riesgos del reemplazo,
pero hacer cambios al sistema existente
en vez de cambiarlo por uno más moderno
puede ser más costoso puesto que éste es
cada vez más viejo
25. * Alternativas* Alternativas
Los negocios que tienen sistemas informáticos
anticuados se enfrentan a un dilema fundamental.
Si continúan utilizando los sistemas heredados y
realizan los cambios requeridos, sus costos se
incrementarán de forma inevitable. Si deciden
reemplazar sus sistemas heredados con nuevos
sistemas, esto tendrá un coste y puede ocurrir que
los nuevos sistemas no provean apoyo efectivo al
negocio como lo hacen los sistemas heredados.
26. * Mantener el sistema heredado
Muchos negocios están buscando técnicas de
ingeniería de software que prolonguen el tiempo de
vida de los sistemas heredados y que reduzcan los
costos de seguir utilizando estos sistemas.
Los sistemas heredados son considerados por las
organizaciones de TI como elementos destacados
dentro del nuevo concepto de empresa.
27. 1.5 Distribución de elementos de una
aplicación.
Se refiere a la construcción de software por partes, a
las cuales les son asignadas un conjunto específico
de responsabilidades dentro de un sistema.
También se refiere a la necesidad de distribuir los
elementos de un sistema dependiendo de las
características y necesidades del lugar.
28. Una aplicación distribuida es una aplicación
con distintos componentes que se ejecutan en
entornos separados, normalmente en
diferentes plataformas conectadas a través de
una red.
La distribución habla de que las partes o
componentes se encuentran en entornos
separados, entonces para realizar la
separación física, primero se debe de tener
clara la separación lógica de las partes de una
aplicación.
29. Hay componentes de diferentes tipos:
Ejecutables páginas web, librerías, controles,
Procedimientos almacenados servicios web…
Ejemplo: Paquetería de office, Corel,
Reproductor Windows etc.
Los ejecutables se refieren a programas o
aplicaciones de escritorio que corren sobre un
sistema operativo
30. 1.6 Integración de tecnologías heterogéneas y
homogéneas.
Existen diferentes motivos para la heterogeneidad y
homogeneidad. Una razón son los cambios tecnológicos
que siempre se dan en un periodo de tiempo corto. En
este contexto, dichos cambios se refieren a mejor calidad,
mejor desempeño, costos más económicos, seguridad,
entre otras características que se toman en cuenta.
31. HOMOGENEO
En los sistemas homogéneos, todos los sitios
emplean idéntico software de gestión de base de
datos, son conscientes de la existencia de los
demás sitios y acuerdan cooperar en el
procesamiento de las solicitudes de los usuarios.
Un sistema distribuido homogéneo tiene múltiples
conexiones de datos; integra múltiples recursos de
datos. Los sistemas homogéneos se parecen a un
sistema centralizado, pero en lugar de almacenar
todos los datos en un solo lugar los datos se
distribuyen en varios sitios comunicados.
32. HETEROGENEO
Las tecnologías Heterogéneas son aquellas
donde Sitios diferentes utilizan diferentes DBMS,
siendo cada uno esencialmente autónomo. Es
posible que algunos sitios no sean conscientes de
la existencia de los demás y quizás proporcionen
facilidades limitadas para la cooperación en el
procesamiento de transacciones. La
heterogeneidad se debe a que los datos de cada
BD son de diferentes tipos o formatos. El enfoque
heterogéneo es más complejo que el enfoque
homogéneo.
33.
34. SERVICIO WEB
Es un conjunto de protocolos y estándares que
sirven para intercambiar datos entre aplicaciones. Distintas
aplicaciones de software desarrolladas en lenguajes de
programación diferente y ejecutada sobre cualquier
plataforma pueden utilizar los servicios web para intercambiar
datos en redes de ordenadores como internet.
Protocolos utilizados:
* XML: Es el formato estándar para los datos que se vayan a
intercambiar.
* SOAP o XML-RPC: Protocolos sobre los que se establece el
intercambio.
* HTTP, FTP, o SMTP: los datos en XML también pueden enviarse de
una aplicación a otra mediante protocolos normales ya bien conocidos.
* WSDL: Es el lenguaje de la interfaz pública para los servicios Web.
* UDDI: Protocolo para publicar la información de los servicios Web.
* WS-Security: Protocolo de seguridad aceptado como estándar por
OASIS.
35. SERVICIO EMAIL
Servicio de red que permite a los usuarios enviar y
recibir mensajes rápidamente a los usuarios enviar y
recibir mensajes rápidamente también denominados
mensajes electrónicos o cartas electrónicas
mediante sistemas de comunicación electrónicos.
Los mensajes de email son intercambiados entre hosts que
emplean el protocolo SMTP, con programas llamados
agentes de transferencia de emails.
36. BASE DE DATOS
Conjunto de datos pertenecientes a un mismo
contexto y almacenados sistemáticamente para su
posterior uso. Un servidor de base de datos es un
programa que provee servicios de base de datos a
otros programas u otras computadoras, como es
definido por el modelo cliente-servidor. También
puede hacer referencia a aquellas computadoras
(servidores) dedicadas a ejecutar esos programas,
prestando el servicio.
37. APLICACIONES
Programa informáticos que permiten a un
usuario utilizar una computadora con un fin
específico. Son parte del software de una
computadora y suelen ejecutarse sobre el
sistema operativo.
38. TRANSACCIONES
Una transacción es una interacción con una
estructura de datos compleja compuesta por
varios procesos que se han de aplicar uno
después del otro.
FIREWALL
Es una parte de un sistema o una red que está
diseñada para bloquear el acceso no
autorizado permitiendo a los mismos tiempos
comunicaciones autorizadas cortafuegos,
mecanismo de seguridad en internet frente a
acceso no autorizados.