Vous êtes sur la page 1sur 61

DESARROLLO DE APLICACIONES Haga clic para modificar el estilo de subttulo del patrn PARA AMBIENTES DISTRIBUIDOS

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

PROFRA. MARISOL ALTAMIRANO CABRERA Sistemas y Computacin INSTITUTO TECNOLOGICO DE OAXACA

11

Tecnologas emergentes que conducen a la Ciencia 2.0 a la subttulo del patrn Haga clic para modificar elyestilo de Ciencia Web (Web 2.0, Web Semntica Web 3.0)

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

PROFRA. MARISOL ALTAMIRANO CABRERA Sistemas y Computacin INSTITUTO TECNOLOGICO DE OAXACA

22

INNOVACIONES TECNOLGICAS EN TIC


WEB 2.0 / 3.0 Web Semntica Inteligencia colectiva RSS Mashups Cloud Computing SaaS REDES SOCIALES
3Pgina 3

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

CONTENIDO
q

La Web Social (Web 3.0 = Web 2.0 + Web Semntica) Tecnologas Web 2.0
Lenguajes AJAX, JavaScript, Pyton Blogs, Fotologs, VideoBlogs, Podcast, RSS (Agregadores de contenidos) Sistemas de Recomendacin Etiquetado ( Tagging ) Nubes de etiquetas Sistemas operativos Web: Android, Chrome

(Google), Windows Azure,

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

4Pgina 4

CONTENIDO
q

Otras tendencias e innovaciones tecnolgicas


l l l l l l l l l l

Telefona cobre, cable , fibra ptica (ADSL), por satlite,. Redes celulares WiFi, Wimax, Xmax Protocolos 2G, 3G (UMTS, HSPA), LTE Almacenamiento (on-line y off-line) Virtualizacin Geolocalizacin y Geoposicionamiento (GPS , A-GPS) Software como un servicio (SaaS) Software libre, Cdigo Abierto. Software + Servicio (Solucin de Microsoft) Sistema operativo Web: Aplicaciones ejecutables directamente sin necesidad de instalacin Cloud Computing, La Computacin en Nube
5Pgina 5

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

CONTENIDO (3)
q

REDES SOCIALES: Definicin, Componentes, Clasificacin:


l l l l l l l

Profesionales Acadmicas Administracin Gobierno Ocio Contactos

MUNDOS VIRTUALES
Second Life (LinkedIn) l Lively (Google) l Proyectos de Migracin entre Redes (IBM)
l
MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

6Pgina 6

PRIMERAS CONSIDERACIONES
q q q

Ciudadana 2.0 El Ciudadano 2.0 versus Ciudadano Social La Nube (Cloud Computing). Acceso a la nube en cualquier lugar, con cualquier dispositivo y en cualquier momento. Avance de las Aplicaciones Web (Ejecutables directamente, no se requiere instalaciones,) Software como servicio universal (luz, agua, gas, telfono,) Impacto en e-democracia, e-Gobierno, e-Gobernanza, e-voto, e-Participacin

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

7Pgina 7

INNOVACIONES TECNOLGICAS EN TIC Y WEB 2.0 (Inteligencia colectiva, RSS, mashups, . Cloud Computing, SaaS, REDES SOCIALES,)
ALGUNAS NOTICIAS RELEVANTES QUE AFECTARAN A LA CIUDADANA DIGITAL

Guerra de los navegadores Explorer 8, Firefox 3.0, Chrome de

Google ( poca , Brasil, n 538,18 setembro 2008) Presentacin de Knol (Enciclopedia digital de Googe) Innovaciones continuas en smartphones, PDAs, La era del Petabyte (1PB=1.000.000GB) Los Data Center. Con decenas de miles de servidores SaaS, Cloud Computing,

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

8Pgina 8

LA ERA DEL PETABYTE


q
q q q

Wired , julio 2008 (www.wired.com)


1TB (250.000 canciones 20 TB (fotos uploaded a Facebook cada mes) 120 TB (todos los datos e imgenes recogidos por el telescopio espacial Hubble) 460 TB (todos los datos del tiempo climtico en EEU compilados por el National Climatic Data Center) 530 TB (Todos los vdeos de YouTube) 730 TB (base de datos de genealoga, incluye todos los censos de EEUU 1790-2010) 1 PB (datos procesados por los servidores de Google cada 75 minutos)
MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

q q

9Pgina 9

Tendencias emergentes en TIC


q q q

q q

Web 2.0, Web Semntica y la futura Wndeceb 3.0 Cloud Computing (Informtica/Computacin en nube) SaaS, Software como un servicio (Software as an Service) Software Libre (Open Source) Almacenamiento y Cloud Storage (Almacenamiento en nube) Green IT (TI Verdes) Virtualizacin

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

10Pgina

Tendencias emergentes en TIC (2)


q

q q

Bases de datos , DataWarehouse, DataMining, WebMining,. en MySQL (SUN Microsystems, Salesforce, IBM,) Centros de Datos y Servidores de Volumen Sistemas Operativos Solaris, Vista,.. (extensiones a escritorio, telefona mvil-celular, GPS,..) y Celulares: Symbian, Windows Mobile, Blackberry, Android (Google) , Windows Azure,.. Procesadores multincleo (UltraSparc T1, T2 de Sun, 6 ncleos de Intel, AMD, )

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

11Pgina

Infraestructura IT (TIC): Software


q

TENDENCIAS DE SOFTWARE
l l l l l l l l

El Software como Servicio Open Source Software Cloud Computing Mashups Widgets Grid Computing Pervasive Computing Utility Computing

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

12Pgina

Infraestructura IT (TIC): Software


q

OPEN SOURCE SOFTWARE


l l l l l l l l

Linux Apache, servidor Web Herramientas de Software Abierto (OpenOffice, Pentajo de BI,) Navegadores Web (Firefox 3.0, Explorer 8, Chrome,, Opera,) Mensajera instantnea Edicin de grficos Software de colaboracin Google Apps: Google Docs, . , Google Maps, Gmail, Microsoft Live , Enciclopedias digitales (Wikipedia, Knol)

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

13Pgina

Infraestructura IT (TIC): Software


q

CLOUD COMPUTING (Computacin en nubes, Computacin en Red)


Aplicaciones basadas en Web que se almacenen y acceden va la nube de Internet l El software y los datos que utilizan se alojan en potentes servidores en centros de datos masivos y se puede acceder por cualquiera con una conexin a Internet cualquier dispositivo PC, PDA, telfono inteligente, consola de videojuegos,-y un navegador Web estndar l Google e IBM se han asociado para promover la cloud computing l Google Apps, Windows Live y suite Office Live
l
MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

14Pgina

Infraestructura IT (TIC): Software


q

Web 2.0: Mashups y Widgets


l l

Fusionadores de aplicaciones (las antiguas EAI) rea de gran innovacin es el mashup de software para mapas e imgenes digitales con contenido local Google Maps, Yahoo, Microsoft ofrecen herramientas para permitir que que se extraigan informacin de mapas e imgenes de satlites con relativa poca parogamacin En Facebook, abundan los mashup cuando se personaliza un perfil o su blogs con una capacidad para visualizar vdeo o mostrar Slides (transparencias)

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

15Pgina

Infraestructura IT (TIC): Software


q

Web 2.0: Widgets


Pequeas piezas de cdigo de software que facilita a los usuarios incrustar contenido de un sitio de una pgina Web a otro sitio Web l Son pequeos programas de software que se pueden aadir a pginas Web o situarlas en el escritorio para proporcionar funcionalidad adicional l P.e. Flixter en los perfiles de Facebook transportar a los usuarios a un lugar donde se pueden listar las pelculas que se han visto junto con valoraciones y revisiones
l

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

16Pgina

Infraestructura IT (TIC): Software


q

Widgets: Se ejecutan dentro de una pgina web o de un blog. Los widgets de escritorio integran contenidos de una fuente externa en el escritorio del usuario para proporcionar servicios tales como un calculador, un diccionario o una presentacin de condiciones actuales del tiempo
Apple Dashboard, Microsoft Windows Sidebar (en Vista), Google Desktop Gadgets, l Randon House (editorial), Amazon. Wal-Mart tienen widgets de barra de herramientas que facilitan la navegacin en su pgina web mientras permanecen en una red social o en otra pgina personal
l

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

17Pgina

Infraestructura IT (TIC): SoftwareL Libre o similar


q q

PROVEEDORES DE SERVICIOS DE TECNOLOGAS On-Demand Computing (utility computing)


Servicios como la electricidad, el telfono l SALESFORCE l Nicholas Carr en su artculo famoso de Las TI no importan
l

SaaS (Software as an Service)


Servicios para entregar y proporcionar acceso a software remotamente como un servicio basado en Web l Lider Salesforce.com l Rentar software de otra firma y evitar el coste y dificultad de instalar, operar y mantener el hardware y s el software
l
MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

18Pgina

Entornos de computacin emergentes


q

SaaS

( on-demand computing, utility computing, hosted services, software as an services) En lugar de comprar e instalar aplicaciones de empresa empaquetadas, los usuarios pueden acceder a aplicaciones en una red, con un navegador de Internet (nico requerimiento) No existe hardware ni software qu comprar ya que las aplicaciones se utilizan en Internet y se pagan mediante una subscripcin fija o se paga por el uso
l l

Utilitycomputing.itworld.com Oracle.com/ondemand

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

19Pgina

Entornos de computacin emergentes


q

GRID COMPUTING. Los ciclos de procesos inactivos o no utilizados de las computadoras de redes de computadoras en grid se utilizan para crear ms capacidad de proceso en otras computadoras (oracle.com/grid) GC coordina el uso de un gran nmero de servidores y almacenamiento, actuando como un nico computador
Proyecto SETI (Search for Extraterrestrial Intelligence)

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

20Pgina

Entornos de computacin emergentes


q

Computacin mvil (celular)


l

Paradigma de empelados mviles

q q q

M-commerce Wireless environment Wireless computing


Redes 3G, 3.5G, 3.75G. 4G,.. l WiFi, WiMax l LTE
l

q q

Smarth Phones Una tecnologa mvil emergente: computacin penetrante / rompedora (pervasive)
MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

21Pgina

Cloud Computing (Computacin en nube)


q

Tendencia en computacin, donde cada una de las potencialidades de las TIC se proporcionan como un servicio permitiendo a los usuarios acceder a servicios tecnolgicos facilitadores en la nube sin conocimiento, experiencia y control de la infraestructura que la soporta Incorpora el software como un servicio y se apoya esencialmente en las tecnologas y servicios de la Web 2.0

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

22Pgina

Cloud Computing (Computacin en nube)


q

Los programas que actualmente funcionan y estn instalados en el computador deben estar instalados en los servidores y la ejecucin debe ser online y se puede acceder a la aplicacin y a la informacin desde cualquier terminal con acceso a Internet La Cloud Computing parte de la premisa que la informacin debe estar en los servidores.
MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

23Pgina

Cloud Computing (Computacin en nube)


q

PIONEROS DEL CLOUD COMPUTING


Google (GOOG)

Google Apps Documentos basados en

web, hojas de clculo, Google Maps Google Docs Gmail

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

24Pgina

Cloud Computing (Computacin en nube)


MICROSOFT!!
AZURE, Sistema Operativo basado en Web, con lneas de negocio soportadas en la Suscripcin, no licencia de software y Publicidad l La nueva iniciativa permite a los desarrolladores de software crear aplicaciones que puedan ser ejecutadas y almacenadas en servidores de Microsoft y MARISOL ALTAMIRANO CABRERA en remotos CENTROS INSTITUTO TECNOLOGICO DE OAXACA DE SISTEMAS Y COMPUTACION DATOS
l

25Pgina

Cloud Computing (Computacin en nube)


q

SUN MICROSYSTEMS (JAVA) Proyecto Caroline como plataforma hosting para proveedores SaaS Proyecto incluye soporte de diferentes aplicaciones en diferentes lenguajes , incluyendo, Java, Perl, Python, Ruby y PHP Centros de Datos Virtualizacin
MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

26Pgina

Cloud Computing (Computacin en nube)


q

IBM
Blue Cloud, incorporar Centros de

Datos masivos en EEUU y en China (Wuxi) Proporcionar recursos de computacin virtualizados En el ltimo Octubre anunci un acuerdo con Goolge para proporcionar pasarelas ( gateways ) de Cloud Computing a Universidades .
3 Centros en Almaden. Washington en Seattle, y uno en un
MARISOL ALTAMIRANO CABRERA Wuxi en el Sur de INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

centro de datos de Google China

27Pgina

Cloud Computing (Computacin en nube)


q

ORACLE (ORCL) l Construccin de nuevos Centros de Datos, en Utah una inversin inicial de $285 millones l Potenciacin de la oferta SaaS l Arquitectura pod para sus centros de datos bajo demanda

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

28Pgina

Cloud Computing (Computacin en nube)


q

Salesforce (CRM,) Plataforma de aplicaciones Web: Force.com (incluye una base de datos relacional, opciones de interfaz de usuario, lgica de negocios y entorno de desarrollo integrado llamado Apex) Capacidad de acceso futuro a Google Apps
MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

29Pgina

Herramientas para el Spy Strade


q q q

q q

Cmaras de visin nocturna, diurna, Sensores biomtricos Otros gadgets proporcionan medios para acceder a datos privados Redes bluetooth Sensores Zigbee

El Internet de las cosas


Estn llegando ya sensores de todo tipo con caracteristicas RFID Se embeben en las cosas
MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

q q

30Pgina

El fin de la privacidad
q

Los sitios Web de Redes Sociales pueden estar realineando radicalmente los conceptos de pblico y privado HECHOS: Cada da se suben ms de 65.000 vdeos a YouTube En 2006, MySpace sobrepas los 100 millones de perfiles Desde 1999 el nmero de blogs ha crecido desde 50 a 50 millones Ms del 50 por ciento de blogs estn escritos por jvenes menores de 19 aos
MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

31Pgina

UNIDAD 1. Panorama general de las aplicaciones distribuidas. 1.1 Evolucin de las aplicaciones informticas.
La evolucin de las aplicaciones informticas se dio debido a los siguientes factores: 1.Trabajo a distancia. 2.Compartir informacin. 3.Accesibilidad. 4.Seguridad en la proteccin de la informacin (tener la base de datos particionada en dos o ms nodos). 5.Independencia con respecto a la ubicacin.
En la actualidad cualquier aplicacin cuenta generalmente con tres partes diferenciadas: Una interfaz de usuario: Elemento con el que interacciona el usuario de la aplicacin, ejecutando acciones, introduciendo u obteniendo informacin. 2.Lgica Reglas de negocio: Son las que procesan la informacin para generar los resultados que persiguen, siendo el elemento fundamental que diferencia unas aplicaciones de otras. 3.Gestin de datos: Se ocupa del almacenamiento y recuperacin de la informacin
1.

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

32Pgina

1.1.1 Aplicaciones Monolticas.


Son aquellas en las que el software se estructura en grupos funcionales muy acoplados, involucrando los aspectos referidos a la presentacin, procesamiento y almacenamiento de la informacin. En este rubro estn considerados las distintas aplicaciones para escritorio:

sistemas operativos, ofimtica, juegos monousuario, etc.

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

33Pgina

1.1.2 Aplicaciones Cliente/Servidor.


Esta arquitectura consiste bsicamente en un cliente que realiza peticiones a otro programa (el servidor) que le da respuesta. Aunque esta idea se puede aplicar a programas que se ejecutan sobre una sola computadora es ms ventajosa en un sistema operativo multiusuario distribuido a travs de una red de computadoras. En esta arquitectura la capacidad de proceso est repartida entre los clientes y los servidores, aunque son ms importantes las ventajas de tipo organizativo debidas a la centralizacin de la gestin de la informacin y la separacin de responsabilidades, lo que facilita y clarifica el diseo del sistema. La separacin entre cliente y servidor es una separacin de tipo lgico, donde el servidor no se ejecuta necesariamente sobre una sola mquina ni es necesariamente un slo programa. Los tipos especficos de servidores incluyen los servidores web, los servidores de archivo, los servidores del correo, etc. Mientras que sus propsitos varan de unos servicios a otros, la arquitectura bsica seguir siendo la misma.

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

34Pgina

Aplicaciones Cliente/Servidor

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

35Pgina

1.1.2 Aplicaciones de 2, 3 y n Capas.


APLICACIONES DE 2 CAPAS. La arquitectura de dos capas en la actualidad es muy utilizada, aunque con muchas fallas, todava no se ha podido dejar de usar. Estas arquitecturas fueron las primeras en aprovecharse de la estructura cliente-servidor.
Las capas que esta arquitectura presenta son las siguientes: Nivel de aplicacin Este nivel es en el que se encuentra toda la interfaz del sistema y es la que el usuario puede disponer para realizar su actividad con el sistema. Nivel de la base de datos. Este nivel de la Base de Datos tambin llamado el Repositorio de Datos, es la capa en donde se almacena toda la informacin ingresada en el sistema y que se deposita en forma permanente.

Existen herramientas para el desarrollo en dos capas por ejemplo Visual Basic, Access y SQL.
MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

36Pgina

APLICACIONES DE TRES CAPAS


La arquitectura de tres capas las cuales son: Nivel de Aplicacin La diferencia de este nivel aplicado ahora en una arquitectura de tres capas es que solo tiene que trabajar con la semntica propia de aplicacin, sin tener que preocuparse de cmo esta implementado este ni de su estructura fsica. Nivel de Dominio de la aplicacin. En cambio este nivel se encarga de toda la estructura fsica y el dominio de aplicacin. Algo muy importante y que es la mayor ventaja de esta arquitectura es que ahora nicamente se cambia la regla en el servidor de aplicacin y esta actuar en todos los clientes, cosa que ni suceda con la arquitectura en dos capas que si alguna regla se la cambia, se tena que ir a cada cliente a realizar el cambio. Nivel de Repositorio. Sigue siendo la capa en donde se almacenan los datos y Las herramientas para el desarrollo de tres capas toda la informacin.
Crear el componente de servidor. Se trata de un archivo DLL ActiveX escrito en Visual Basic. Crear la aplicacin de cliente. Es un archivo EXE estndar escrito en Visual Basic. Instalar los componentes de servidor en un paquete MTS. Configurar, si es necesario, los equipos cliente.

son: Visual Basic en lo que se refiere a la capa de Aplicacin SQL Server en lo que se refiere al repositorio de datos. MARISOL ALTAMIRANO CABRERA M TS en lo que se refiere al nivel del dominio de INSTITUTO TECNOLOGICO DE OAXACA Aplicacin SISTEMAS Y COMPUTACION 37Pgina (Microsoft Transaction Server)

Panorama general de las aplicaciones distribuidas


De Interfaz de Usuario.
Aqu es donde su aplicacin presenta informacin a los usuarios y acepta entradas o respuestas del usuario para usar por su programa. Idealmente, la IU no desarrolla ningn procesamiento de negocios o reglas de validacin de negocios. Por el contrario, la IU debera relegar sobre la capa de negocios para manipular estos asuntos. Esto es importante, especialmente hoy en da, debido a que es muy comn para una aplicacin tener mltiples IU, o para sus clientes o usuarios, que le solicitan que elimine una IU y la remplace con otra.

Algunas tecnologas de interfaz de usuario son: API Win 32. HTMAL. Dell HTML. Lenguajes de scrips. MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

38Pgina

Panorama general de las aplicaciones distribuidas


De Aplicacin
La adopcin de un diseo distribuido de aplicaciones empresariales, aumenta la reusabilidad, reduce la cantidad de recursos, y los costes necesarios de desarrollo y mantenimiento. Este nuevo enfoque de diseo pone en manos de los desarrolladores no solo la funcionalidad que demandan las aplicaciones, sino tambin la seguridad, rapidez y flexibilidad.

Algunas tecnologas de aplicacin son: CORBA. DNA. EJB. XML.

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

39Pgina

Panorama general de las aplicaciones distribuidas


La evolucin de las bases de datos distribuidas se debe por una parte a razones organizacionales las cuales han demandado que mayores capacidades sean incorporadas a las bases de datos, tales como la integracin de informacin desde distintos sitios donde se encuentre la empresa distribuida hacia algn sitio por ejemplo, para una consulta. Por otra parte, el desarrollo de las tecnologas de comunicacin han permitido enlazar datos con aplicaciones que se encuentran en sitios distintos y remotos, por ejemplo las transacciones bancarias realizadas en mquinas-cajeros automticos (ATM) que se encuentran ubicados en centros comerciales, empresas y escuelas, no seran posibles si no tuviramos sistemas de comunicacin para enlazarnos a bases de datos localizadas en diferentes sitios financieros. Algunas tecnologas de base de datos son:

De Base de Datos

OLEB ADO. XML. SQL. Herramientas para modelado (UML).

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

40Pgina

Panorama general de las aplicaciones distribuidas


De Comunicacin De Datos
La construccin de aplicaciones distribuidas ha emergido como la arquitectura predominante para la construccin de aplicaciones multiplataforma en la mayor parte de las empresas. Este cambio radical en los modelos de computacin, desde los sistemas monolticos basados en mainframe y los tradicionales sistemas clienteservidor, hacia sistemas distribuidos multiplataforma altamente modularles, representa el desarrollo rpido y avance de la investigacin en el mundo del desarrollo de aplicaciones, tal y como se pone de manifiesto en las ltimas tendencias de las grandes empresas de tecnologa, como Sun con su estrategia Sun One, o Microsoft con DotNET (.Net).

Algunas tecnologas de comunicacin de datos son: Intranet. Internet.

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

41Pgina

Panorama general de las aplicaciones distribuidas


De Conexin Entre Capas
Como tecnologa, las arquitecturas de capas proporcionan una gran cantidad de beneficios para las empresas que necesitan soluciones flexibles y fiables para resolver complejos problemas inmersos en cambios constantes. Todas las aplicaciones basadas en capas permitirn trabajar con clientes ligeros, tal como navegadores de Internet, WebTV, Telfonos Inteligentes, PDAs (Asistentes Personales Digitales) y muchos otros dispositivos preparados para conectarse a Internet. De este modo, las arquitecturas de capas se estn posicionando rpidamente mediante los desarrollos de aplicaciones empresariales que proporcionan desafos y oportunidades como nunca antes haba se haban producido. Una tecnologa de conexin de capas es: Arquitectura DAO. Ruby On Rails -> Spring Framework Hibernate = gestin de datos se denominan CRUD (create, read, update, delete).
MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

42Pgina

Escenarios de utilizacin de las aplicaciones distribuidas


Algunas de las aplicaciones distribuidas ms conocidas son: Remote login (Inicios de sesiones remotas) Correo electrnico Navegacin Web Algunos escenarios que utilizan aplicaciones Streaming distribuidas son: Telefona IP PHP Comparticin de ficheros (P2P). Educacin a distancia - moddle. Creacin de blogs - Wordpress. Creador de wikis - MediaWiki. Administrar BD en web - PHPMyAdmin. ASP software E-commerce - eCAM. E-commerce ProdMentorcatalogo de productos en linea
MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

43Pgina

Problemas comunes en el desarrollo y uso de aplicaciones distribuidas.


Hay una serie de problemas comunes en el diseo de las aplicaciones distribuidas:
1.

2.

3.

4.

La compatibilidad de los Tipos de Datos: Distintos sistemas operativos tienen diferentes tipos de datos que no son siempre compatibles entre s. Fallas del Servidor: Debido a que los componentes pueden ser remotos, una falla de cualquiera de ellos puede hacer que toda la aplicacin falle. Fallas del Cliente: El servidor debe saber cmo responder a las fallas del cliente. Reintento de llamadas: Si por ejemplo, se hace una llamada a un mtodo en un servidor para generar una orden de compra muy grande, y el servidor responde pero se pierde la respuesta por fallas de red, no es muy eficiente volver a enviar la orden de compra.

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

44Pgina

Problemas comunes en el desarrollo y uso de aplicaciones distribuidas .


5.-Seguridad: En aplicaciones distribuidas los problemas de seguridad se multiplican. Por ejemplo, se debe considerar como: Autenticar a los usuarios Autorizarlos a acceder a los recursos, encriptar la informacin que viaja por la red, evitar ataques de denegacin de servicio. 6.-Sincronizacin de la hora: Hay operaciones que dependen de la fecha y la hora. Por ejemplo, no es lgico en una aplicacin procesar un envo de mercadera antes de haber recibido la orden de compra. Si el cliente y el servidor tienen fechas distintas, se debe generar un mecanismo de sincronizacin de hora para evitar este problema. 7.-La arquitectura basada en RPC y Transparencia de localizacin: El desarrollador utiliza los componentes sin necesidad de saber su ubicacin fsica. Con RPC tanto en el cliente como en la mquina donde reside el componente hay subsistemas que se ocupan de la comunicacin y el intercambio de datos.

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

45Pgina

2. Unidad
Haga clic para modificar el estilo de subttulo del patrn

ARQUITECTURA DE APLICACIONES DISTRIBUIDAS

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

PROFRA. MARISOL ALTAMIRANO CABRERA Sistemas y Computacin INSTITUTO TECNOLOGICO DE OAXACA

4646

1.- Capa de interfaz de usuario


Constituye el software con el que el usuario interacta para operar con la aplicacin. Es probablemente la parte ms trabajosa de la misma, ya que es muy frecuente que aplicaciones cuyas reglas de negocio sean relativamente sencillas tengan en cambio una interfaz de usuario complejo y vistoso que le proporcione al usuario una experiencia de manejo fcil y agradable. Adems, mientras que en la creacin de reglas de negocio normalmente slo interviene un tipo de programacin, preferentemente basada en lenguajes, en la preparacin del interfaz de usuario suelen mezclarse varias disciplinas, como el diseo o la usabilidad. Un error frecuente en la creacin de las interfaces de usuario consiste en olvidar que las reglas de negocio no se hallan en la interfaz, sino en los objetos subyacentes que residen en las capas inferiores de la solucin. La capa de presentacin no es ms que un sistema de presentacin y manejo de datos que se obtienen y se actualizan con los objetos de negocio comunes para todas las aplicaciones que los usan.
MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

47Pgina

Capa de interfaz de usuario


Si se olvida este aspecto se puede caer en la tentacin de colocar reglas de negocio en el interfaz de usuario, imposibilitando la reutilizacin de las mismas y complicando la distribucin y despliegue de la aplicacin. Por lo tanto, una regla de oro a observar en toda aplicacin distribuida es que la capa de presentacin ha de ser completamente independiente de las reglas de negocio, y su funcin se limitar a la presentacin y manejo de los datos de la aplicacin, que obtendr mediante el uso de los objetos de la capa de negocios comentados en la seccin anterior. Esto convierte a la capa de interfaz de usuario en una mera fachada de los procesos que son gestionados por la capa de negocios. Las capas de presentacin suelen ser delgadas, es decir, contienen pocas lneas de cdigo, ya que su funcin principal est cubierta por las caractersticas de los elementos visuales que las componen.
MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

Una tendencia creciente es la separacin entre diseo y cdigo, ya existente, por ejemplo, en las aplicaciones web dinmicas.

48Pgina

2.- Capa de Manejo de Datos


La capa de manejo de datos representa el grueso de la lgica de funcionamiento de la aplicacin distribuida. En esta capa se sitan: Las normas de acceso a datos, la lgica de tratamiento de los mismos, y en general cualquier elemento de la aplicacin que pueda reutilizarse. El objetivo de esta capa intermedia es aislar la capa de presentacin de la capa de servidor. A pesar de que se suele utilizar el nombre de capa de manejo de datos para referenciar a todos los elementos que componen esta capa intermedia de software, por lo general la capa de negocios suele dividirse en dos tipos de elementos, atendiendo a la funcin que desempean en la capa.
MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

49Pgina

3.- Capa de Procesamiento de Datos


En la capa de procesamiento de datos encontraremos los procesos de la aplicacin que se encargan recibir las peticiones de las capas superiores y, si es necesario, devolver los datos solicitados mediante 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. Por lo general los servicios residen en equipos dedicados cuya configuracin y caractersticas fsicas estn especialmente diseadas para realizar esta funcin.
MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

50Pgina

3.- Capa de Procesamiento de Datos


Los servicios de base de datos son los ms frecuentes en las aplicaciones distribuidas. Los SGBD como SQL Server u Oracle disponen de toda la infraestructura de servicios necesaria para que los equipos cliente les realicen peticiones y para responder a ellas. Se ejecutan como un servicio de forma totalmente desatendida, se enlazan al protocolo de red para escuchar peticiones de otros equipos, gestionan la concurrencia de las llamadas e incorporan mecanismos de seguridad propios o integrables con el directorio activo.
MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

51Pgina

3.- Capa de Procesamiento de Datos

Una de las caractersticas ms importantes de los SGBD es que nos permiten crear reglas de negocio. Estas reglas pueden invocarse remotamente desde los clientes y se escriben en lenguajes propios del SGBD (Transact-SQL en el caso de SQL Server, por ejemplo). Los SGBD compilan y ejecutan de la forma ms ptima posible estas reglas, de modo que su ejecucin siempre es de alto rendimiento.

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

52Pgina

4.- Integracin de Sistemas Heredados


Uno de los mayores problemas que deben resolver los administradores de Intranets es que muchos de los sistemas empresariales y las bases de datos denominados sistemas heredados fueron creados sin considerar el protocolo TCP/IP. Estos sistemas y bases de datos pueden estar basados en mainframes, minicomputadoras o en redes de computadoras, y se los puede incorporar a una Intranets de diversas maneras. En la actualidad, al pensar en una base de datos Cliente/Servidor es necesario analizar cules son las funcionalidades con las que cuenta este sistema para posibilitar la exhibicin, negociacin e integracin de datos en la Web. La mayora de los lenguajes y de los sistemas que actualmente funcionan en una red local basada en DOS o Windows no cuenta con integracin y no puede ser transportada al entorno de Internet; cuando esto sucede es necesario volver a programar y crear una aplicacin idntica a la que se tena para DOS o Windows para que se ejecute en la Web.

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

53Pgina

4.- Integracin de Sistemas Heredados


Cuando se produce este tipo de situacin, toda modificacin en el sistema tiene que modificar ambas aplicaciones, la de DOS/Windows y la de la Web, algo que convierte el mantenimiento del sistema en costoso y poco viable. Oracle es uno de los sistemas que, incorporado a un servidor Web, posibilita la integracin con varios lenguajes que pueden tratar datos y exhibirlos en una Intranets a travs de una aplicacin. Lo interesante es que en este caso no es necesario generar dos aplicaciones, una para el entorno de red de computadoras local (DOS/Windows) y otra para la Web, debido a que actualmente existen recursos que ya se encuentran incorporados en Oracle y que permiten escribir slo una vez una nica aplicacin para ms de un entorno.

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

54Pgina

5.-Distribucin de Elementos de una Aplicacin


Por lo que respecta a los elementos que forman una aplicacin distribuida, tales como: los procesos, hilos de control, objetos y agentes. En este sentido, una aplicacin distribuida requiere de dos niveles o capas que le servirn de base para su ejecucin. En el nivel ms bajo se ubican los protocolos de red que permiten el envo y comunicacin de datos. El nivel alto, le corresponde al directorio de servicios junto con protocolos de seguridad. En el momento de ejecutar una aplicacin de esta naturaleza, se hace uso de servicios de nivel medio, protocolos de red y sistemas operativos con la capacidad para desempear tareas coordinadas a travs de la red.

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

55Pgina

5.-Distribucin de Elementos de una Aplicacin


Los procesos (Processes). pueden realizarse para una aplicacin en particular o muchas aplicaciones pueden hacer uso de los procesos para el desarrollo de sus tareas. Se trata de una secuencia de pasos en determinado lenguaje de programacin en su forma ejecutable ejecutndose en el sistema operativo. Hilos de control (Threads). Cada proceso tiene por lo menos un hilo de control. Si el SO soporta la creacin de mas de un hilo de control por proceso, se hace necesaria la sincronizacin. Objetos (Objects). Un objeto es un conjunto de datos relacionados, con mtodos disponibles para la consulta y modificacin de esos datos, o bien, para realizar alguna accin basada en los datos. Los procesos pueden hacer uso de uno o mas objetos y los objetos pueden ser accesados por uno o mas hilos de control por proceso. Los objetos pueden estar dispersos a travs de mltiples procesos, o bien, de mltiples computadoras. Agentes (Agents). Es un elemento funcional en una aplicacin distribuida. Es un componente de alto nivel con una funcin particular o utilidad o rol en todo el sistema.

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

56Pgina

6.- Integracin de tecnologas heterogneas y homogneas


Existen diferentes motivos para la heterogeneidad. Una razn son los cambios tecnolgicos que siempre se dan en un periodo de tiempo corto que refieren a mejor calidad, mejor desempeo, costos ms econmicos, seguridad, entre otras caractersticas que se toman en cuenta. Otra razn es que la diversidad en una red de computadoras puede hacerla ms resistente que cualquier problema dado en algn tipo de mquina, sistema operativo o aplicacin son poco probables que afecten a otros sistemas corriendo en diferentes sistemas operativos y aplicaciones. El desarrollar aplicaciones distribuidas implican el anlisis de protocolos adems de un sin nmero de detalles y el uso de diferentes herramientas y libreras. De esta forma podemos definir la interoperabilidad como la habilidad de un sistema capaz de comunicarse con otro sistema sin esfuerzo alguno

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

57Pgina

6.-Integracin de tecnologas heterogneas y homogneas


La interoperabilidad est incrementando su importancia en los productos de tecnologas de informacin. Para poder alcanzar y lograr esto, dos o ms sistemas que estn por comunicarse deben seguir los estndares de interfaces abiertos que existen; otras de las formas en que podemos lograr la interoperabilidad es a travs de un intermedio que pueda transformar la interfaz de comunicacin de un sistema en la otra interfaz de comunicacin de la otra aplicacin en tiempo de ejecucin. Algunos ejemplos de interoperabilidad siguen estndares abiertos son: TCP/IP, HTTP y HTML.
MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

que

58Pgina

7.-Servicios de la arquitectura (email, web, base de datos, aplicaciones, transacciones,sistemas operativos,firewall)


A medida que crece Internet y las tecnologas relacionadas, ha evolucionado un enfoque de generacin de soluciones basado en servicios. Desde el punto de vista del consumidor, los servicios son conceptualmente similares a los componentes tradicionales, salvo que los servicios encapsulan sus propios datos y no forman parte, de la aplicacin sino que son utilizados por sta. Aplicaciones y servicios que necesitan integrarse se pueden generar en distintas plataformas, por distintos equipos, en diferentes programas y se pueden mantener y actualizar de forma independiente. Por tanto, es esencial que implemente la comunicacin entre ellos con el mnimo acoplamiento.

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

59Pgina

7.-Servicios de la arquitectura (email, web, base de datos, aplicaciones, transacciones, sistemas operativos,firewall)
Para comunicarse se pueden utilizar componentes de infraestructuras que administran la comunicacin de forma implcita (por ejemplo, con un servidor proxy de servicios Web generado por Microsoft Visual Studio .NET). Los servicios exponen una interfaz de servicios a la que se envan todos los mensajes entrantes. La definicin del conjunto de mensajes que se deben intercambiar con un servicio para que ste realice una tarea empresarial especfica constituye un contrato. Puede imaginarse una interfaz de servicios como una fachada que expone la lgica empresarial implementada en el servicio para consumidores potenciales.

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

60Pgina

MARISOL ALTAMIRANO CABRERA INSTITUTO TECNOLOGICO DE OAXACA SISTEMAS Y COMPUTACION

61Pgina

Vous aimerez peut-être aussi