Download - Cliente servidoryj
11
22
Justificación Cliente/ServidorJustificación Cliente/ServidorANTES AHORA
AVANCETECNOLÓGICO
Rigidez. No redistribución. Vinculación al sistema. Solapamiento,
duplicación yredundancia.
Múltiplesprocesadores
Portabilidad entreprocesadores.
Migrabilidad entreplataformas.
EXIGENCIASDE LAEMPRESA
Producción masiva. Tareas simples. Repetitivas. Desmotivación. Usuario operador.
Competencia. Renovación. Factor tiempo crítico. Autonomía. Usuario analista.
ENTORNOGENERAL
Adaptación a lacapacidad delordenador.
Ordenadores caros. Usuarios asustadizos.
Software a medida. Ordenadores
accesibles. Domesticación de la
informática.
33
Nuevas Tareas del Dpto. de Nuevas Tareas del Dpto. de Sistemas de InformaciónSistemas de Información
Soporte a la gestión empresarial. Apoyo a los objetivos.Soporte a la gestión empresarial. Apoyo a los objetivos. Selección de Estándares:Selección de Estándares:
Compatibiliza.Compatibiliza. Facilita al usuario.Facilita al usuario.
Infraestructura C/S:Infraestructura C/S: Plataforma operativa.Plataforma operativa. Entorno de desarrollo.Entorno de desarrollo. Gestión del SID.Gestión del SID. Arquitectura de la aplicación:Arquitectura de la aplicación:
• Portabilidad.Portabilidad.
• Interoperatividad.Interoperatividad.
• Distribuida.Distribuida.
Desarrollo corporativo (no departamental).Desarrollo corporativo (no departamental). Integración de aplicaciones propias con estándar.Integración de aplicaciones propias con estándar.
44
Implicaciones del modelo Implicaciones del modelo Cliente/ServidorCliente/Servidor
N u evo p roceso d e d esarro llo
N u evas h erram ien tas d e d esarro llo :P ro to tip os
N u evos ro les d e S is tem as d eIn fo rm ac ió n y d e los u su arios
In fraes tru c tu ra A b ie rtaC lien te /S ervid o r
N eces id ad es com erc ia les en con tin u a evo lu c ió n
55
¿Cuándo implantar C/S?¿Cuándo implantar C/S?
Cambios estructurales y organizativos.Cambios estructurales y organizativos. Cambios en organigramas.Cambios en organigramas. Respuesta dinámica de mercado.Respuesta dinámica de mercado. Cambio en procesos de negocio.Cambio en procesos de negocio.
66
¿Qué ayuda a la implantación?¿Qué ayuda a la implantación?
La demanda de sistemas fáciles.La demanda de sistemas fáciles. Precio/rendimiento de estaciones y Precio/rendimiento de estaciones y
servidores.servidores. Creciente acceso a la información para Creciente acceso a la información para
decisiones: Separación datos-programas. decisiones: Separación datos-programas. Programas flexibles.Programas flexibles.
Nuevas tecnologías de alta productividad.Nuevas tecnologías de alta productividad.
77
Cliente/ServidorCliente/Servidor
DefiniciónDefinición: Sistema distribuido entre : Sistema distribuido entre múltiples procesadores donde hay clientes múltiples procesadores donde hay clientes que solicitan servicios y servidores que los que solicitan servicios y servidores que los proporcionan.proporcionan.
Separa los servicios situando cada uno en Separa los servicios situando cada uno en su plataforma más adecuada.su plataforma más adecuada.
88
Objetivos de C/SObjetivos de C/S
Localización transparente.Localización transparente. Recursos compartidos.Recursos compartidos. EscalabilidadEscalabilidad
Horizontal: > nº estaciones.Horizontal: > nº estaciones. Vertical: migración a otras plataformas.Vertical: migración a otras plataformas.
Interoperatividad entre distintos Hw. y Sw.Interoperatividad entre distintos Hw. y Sw.
99
EvoluciónEvolución
1ª ÉPOCA:1ª ÉPOCA: LAN.LAN. LAN con MAINFRAMES.LAN con MAINFRAMES. Comunicaciones homogéneas (LU, SNA, APPC).Comunicaciones homogéneas (LU, SNA, APPC).
2ª ÉPOCA:2ª ÉPOCA: Herramientas de desarrollo C/S.Herramientas de desarrollo C/S. Proveedores DBMS con C/S.Proveedores DBMS con C/S. Downsizing: migración a PCs.Downsizing: migración a PCs. S.O. De red con servidores de servicios.S.O. De red con servidores de servicios.
1010
Evolución (II)Evolución (II)
3ª ÉPOCA: ACTUAL.3ª ÉPOCA: ACTUAL. PWS: Estaciones de trabajo programables gráficamente.PWS: Estaciones de trabajo programables gráficamente. GUI: Interfaz gráfico de usuario. Alta resolución.GUI: Interfaz gráfico de usuario. Alta resolución. Nuevas tecnologías: Ratón, lápiz óptico, scanner, multimedia.Nuevas tecnologías: Ratón, lápiz óptico, scanner, multimedia. Tecnología de componentes: DDE y OLE.Tecnología de componentes: DDE y OLE. Conectividad de BDs: ODBC, JDBCConectividad de BDs: ODBC, JDBC Objetos Distribuidos: CORBA, COM, COM+, DCOMObjetos Distribuidos: CORBA, COM, COM+, DCOM Internet: HTML, CGI, Applet, ActiveX, JAVA, JAVASCRIPTInternet: HTML, CGI, Applet, ActiveX, JAVA, JAVASCRIPT Arquitecturas C/S de 2 y 3 niveles.Arquitecturas C/S de 2 y 3 niveles. Middleware.Middleware.
1111
Tecnología de componentes: Tecnología de componentes: DDE y OLEDDE y OLE
DDEDDE: (Dynamic Data Exchange) (: (Dynamic Data Exchange) (MicrosoftMicrosoft).). Enlaces de datos dinámicos.Enlaces de datos dinámicos. Información automáticamente actualizada entre Información automáticamente actualizada entre
aplicaciones.aplicaciones.
OLEOLE: (Object Linking and Embeding) : (Object Linking and Embeding) ((MicrosoftMicrosoft).). Objetos enlazados y embebidos.Objetos enlazados y embebidos. Enlazado: Guardando una referencia.Enlazado: Guardando una referencia. Embebido: Insertando un documento.Embebido: Insertando un documento.
1212
Conectividad de BDsConectividad de BDs
ODBCODBC: (Open DataBase Conectivity) : (Open DataBase Conectivity) ((MicrosoftMicrosoft).). Conectividad abierta entre BDs.Conectividad abierta entre BDs. Interfaz de conexión entre BDs (especialmente Interfaz de conexión entre BDs (especialmente
Microsoft)Microsoft)
JDBCJDBC: (Java DataBase Conectivity) (: (Java DataBase Conectivity) (JavaJava).). Conectividad abierta entre BDs versión Java.Conectividad abierta entre BDs versión Java. Abierto.Abierto.
1313
Objetos DistribuidosObjetos Distribuidos
CORBA CORBA ((Common Object Request Broker Architecture)Common Object Request Broker Architecture) ((Object Management GroupObject Management Group): Estándar de programación ): Estándar de programación distribuida basada en objetos.distribuida basada en objetos.
COMCOM ((MicrosoftMicrosoft):): Interface estándar para objetos (no importa Interface estándar para objetos (no importa cómo están programados).cómo están programados).
COM+COM+ ((MicrosoftMicrosoft): Extensión de COM en el que se añade un ): Extensión de COM en el que se añade un modelo para la programación de objetos.modelo para la programación de objetos.
DCOMDCOM ((MicrosoftMicrosoft): Extensión de COM que permiten crear ): Extensión de COM que permiten crear objetos clientes y servidores utilizando COM aunque creando objetos clientes y servidores utilizando COM aunque creando transparencia sobre la localización física del objeto (es decir transparencia sobre la localización física del objeto (es decir que puede encontrarse en otra máquina). La gestión de la que puede encontrarse en otra máquina). La gestión de la comunicación está embebida.comunicación está embebida.
1414
INTERNETINTERNET HTMLHTML (HyperText Markup Language (HyperText Markup Language)):: Lenguaje basado en el Lenguaje basado en el
estándar SGML de etiquetado para la creación de páginas web en el estándar SGML de etiquetado para la creación de páginas web en el servidor visibles desde un cliente remoto con su propio visor.servidor visibles desde un cliente remoto con su propio visor.
CGICGI (Common Gateway Interface): (Common Gateway Interface): Interface para el tratamiento de Interface para el tratamiento de ejecutables en el servidor (remoto) a petición de clientes. Rápido y ejecutables en el servidor (remoto) a petición de clientes. Rápido y muy modular.muy modular.
ActiveX (ActiveX (MicrosoftMicrosoft)):: Objetos visuales de control (desde botones Objetos visuales de control (desde botones hasta mini-aplicaciones) embebidos en un documento (o página hasta mini-aplicaciones) embebidos en un documento (o página web) que se descargan y se ejecutan en el visor del cliente. web) que se descargan y se ejecutan en el visor del cliente.
JAVA (JAVA (Sun MicrosystemsSun Microsystems)):: Lenguaje de programación específico Lenguaje de programación específico para C/S en internet. Lento, con aplicaciones mayores.para C/S en internet. Lento, con aplicaciones mayores.
APPLETAPPLET:: Objetos visuales embebidos en una página web (versión Objetos visuales embebidos en una página web (versión abierta de ActiveX). abierta de ActiveX).
JAVABEANS (JAVABEANS (Sun MicrosystemsSun Microsystems)): Especificación para objetos en : Especificación para objetos en Java.Java.
JAVASCRIPT (JAVASCRIPT (NetscapeNetscape)):: Lenguaje de utilidades para HTML.Lenguaje de utilidades para HTML.
1515
Evolución (III)Evolución (III)
EL FUTURO.EL FUTURO. Facilidad de uso de las aplicaciones.Facilidad de uso de las aplicaciones. Accesos a datos distribuidos en cualquier lugar del Accesos a datos distribuidos en cualquier lugar del
mundo (y del espacio).mundo (y del espacio).
1616
MIDDLEWAREMIDDLEWARE
Conecta procesos para constituir aplicación.Conecta procesos para constituir aplicación. Conjunto de funciones + servicios.Conjunto de funciones + servicios. Actúa en el bajo nivel del SID:Actúa en el bajo nivel del SID:
Comunicación.Comunicación. Directorios.Directorios. Integridad.Integridad.
Define la plataforma de transparencia de Define la plataforma de transparencia de localización.localización.
1717
Características C/S.Características C/S.
Flexibilidad:Flexibilidad: Middleware.Middleware. Separación de funciones:Separación de funciones:
• Lógica de presentación.Lógica de presentación.• Lógica de negocio.Lógica de negocio.• Lógica de datos.Lógica de datos.
Encapsulación de servicios.Encapsulación de servicios. Portabilidad - reubicación.Portabilidad - reubicación. Operación sincrono - asíncrono.Operación sincrono - asíncrono.
1818
Características C/S (II).Características C/S (II).
Entorno de aplicaciones incremental.Entorno de aplicaciones incremental. Añadir un nuevo servidor.Añadir un nuevo servidor. Añadir un nuevo cliente.Añadir un nuevo cliente. Modificar un cliente para usar un nuevo Modificar un cliente para usar un nuevo
servidor.servidor.
Integración: por la GUI.Integración: por la GUI.
1919
Modelos C/SModelos C/S
Presentación distribuidaPresentación distribuida Proporciona un API que separa la Proporciona un API que separa la
programación de ventanas del resto.programación de ventanas del resto. Ejemplo: X-Windows System en UNIX o Ejemplo: X-Windows System en UNIX o
Windows95 y NT.Windows95 y NT.
Presentación Negocio Datos
C S
2020
Modelos C/S (II)Modelos C/S (II)
Función distribuidaFunción distribuida Máxima flexibilidad.Máxima flexibilidad. Lógicas de negocio separadas.Lógicas de negocio separadas.
Presentación Negocio DatosNegocio
C S
2121
Modelos C/S (III)Modelos C/S (III)
Datos distribuidosDatos distribuidos Ficheros distribuidos. Ficheros distribuidos. Bases de datos distribuidas.Bases de datos distribuidas.
Presentación Negocio Datos
C S
2222
Aplicaciones de 2 y 3 nivelesAplicaciones de 2 y 3 niveles
2 niveles:2 niveles: Generalmente usa los modelos de función Generalmente usa los modelos de función
distribuida o datos distribuidos.distribuida o datos distribuidos. Muy productivo.Muy productivo. Distribución no flexible.Distribución no flexible. Dependiente del suministrador.Dependiente del suministrador.
2323
Aplicaciones de 2 y 3 niveles Aplicaciones de 2 y 3 niveles (II)(II)
3 niveles:3 niveles: Modelo presentación-negocio-datosModelo presentación-negocio-datos Distribución flexible.Distribución flexible. Sistema abierto. No dependiente.Sistema abierto. No dependiente.
C
C
C
Negocio
2424
Sistemas abiertosSistemas abiertos
Definición según IEEE:Definición según IEEE: ““Un conjunto completo y consistente de estándares internacionales de Un conjunto completo y consistente de estándares internacionales de
tecnología de información y de estándares funcionales, que tecnología de información y de estándares funcionales, que especifica interfaces, servicios y formatos de soporte para especifica interfaces, servicios y formatos de soporte para conseguir la interoperatividad y portabilidad de aplicaciones, datos y conseguir la interoperatividad y portabilidad de aplicaciones, datos y personas”.personas”.
Definición según ISO:Definición según ISO:““Todo el conjunto de interfaces, servicios y formatos de soporte, Todo el conjunto de interfaces, servicios y formatos de soporte,
además de otros aspectos de usuarios, para la interoperativilidad o además de otros aspectos de usuarios, para la interoperativilidad o la portabilidad de aplicaciones, datos o personas, según se la portabilidad de aplicaciones, datos o personas, según se especifica en los estándares y perfiles de tecnología informática”especifica en los estándares y perfiles de tecnología informática”
2525
Sistemas Abiertos: Sistemas Abiertos: Características.Características.
Elección libre de plataforma gracias a la Elección libre de plataforma gracias a la portabilidad e interoperatividad.portabilidad e interoperatividad.
Protección de la inversión empresarial.Protección de la inversión empresarial. Libertad de elección del modelo de distribución: Libertad de elección del modelo de distribución:
presentación, función o datos distribuidos.presentación, función o datos distribuidos. Explotación de aplicaciones estándar.Explotación de aplicaciones estándar.
2626
EstándaresEstándares
Definición: Definición: “Conjunto de reglas, definiciones y propiedades “Conjunto de reglas, definiciones y propiedades mutuamente aceptadas que permite la cooperación de objetos mutuamente aceptadas que permite la cooperación de objetos heterogéneos y su utilización”heterogéneos y su utilización”
Clasificación:Clasificación: Por su lugar de publicación:Por su lugar de publicación:
• InternacionalInternacional• Regional (CEE).Regional (CEE).• Nacional.Nacional.
Por autor:Por autor:• De Iure: por comitéDe Iure: por comité• De facto: por fabricante.De facto: por fabricante.
2727
Sistemas abiertos vs Sistemas abiertos vs propietariospropietarios
Tiempo de implantación mayor en abiertos:Tiempo de implantación mayor en abiertos: Estándar Estándar 10 años. 10 años. Alianzas y consorcios (no oficial): medio plazo.Alianzas y consorcios (no oficial): medio plazo. Tecnologías propietarias portables: corto plazo.Tecnologías propietarias portables: corto plazo. Tecnologías propietarias: Rápidas. No abiertas.Tecnologías propietarias: Rápidas. No abiertas.
Diferenciador de producto:Diferenciador de producto: Estándar industrial + algo propio.Estándar industrial + algo propio. Ejemplo: un DBMS con SQL estándar + 4GL propio.Ejemplo: un DBMS con SQL estándar + 4GL propio.
Arquitecturas de proveedores importantes.Arquitecturas de proveedores importantes.
2828
Sistemas Abiertos:Sistemas Abiertos: Factores de éxito.Factores de éxito.
Independencia del suministrador.Independencia del suministrador. Elección de herramientas:Elección de herramientas:
Interoperativas: Estándares.Interoperativas: Estándares. Portables: Estándar o propietario.Portables: Estándar o propietario.
Arquitectura de la aplicación:Arquitectura de la aplicación: Buen diseño C/S.Buen diseño C/S.
2929
Plataformas operativas: Plataformas operativas: Gestores de recursosGestores de recursos
Definición: Definición: ”Programas software que acceden ”Programas software que acceden a recursos (dispositivos, ficheros, bases de a recursos (dispositivos, ficheros, bases de datos, programas, objetos, etc.) y proporcionan datos, programas, objetos, etc.) y proporcionan un API”.un API”.
Tipos:Tipos: Local: servicio en s.o. local.Local: servicio en s.o. local. Remoto: con C/S.Remoto: con C/S. Distribuido: en varios lugares.Distribuido: en varios lugares.
3030
Plataformas operativas: Plataformas operativas: MiddlewareMiddleware
Función de intermediario entre clientes y Función de intermediario entre clientes y servidores. servidores.
Otros servicios:Otros servicios: Directorio de recursos: info. sobre ellos.Directorio de recursos: info. sobre ellos. Nominación de recursos.Nominación de recursos. Comunicaciones:Comunicaciones:
• Conversacional (SINC)Conversacional (SINC)• RPC: (SINC)RPC: (SINC)• Cola de mensajes: (ASINC)Cola de mensajes: (ASINC)
Seguridad: Login único.Seguridad: Login único. Gestión de transacciones: única para todos los recursos.Gestión de transacciones: única para todos los recursos.
3131
Selección de sw C/SSelección de sw C/S
Sistema operativo.Sistema operativo. Múltiples modelos de distribución C/S.Múltiples modelos de distribución C/S. Nuevas tecnologías (POO).Nuevas tecnologías (POO). Apertura.Apertura. Integración con sw estándar.Integración con sw estándar. Operación C/S (síncrona y asíncrona).Operación C/S (síncrona y asíncrona). Herramientas de desarrollo potentes.Herramientas de desarrollo potentes.