Documentos de Académico
Documentos de Profesional
Documentos de Cultura
13 WebSemantica
13 WebSemantica
Índice
• Los orígenes
– De los documentos hiperenlazados al comercio electrónico (B2C
y B2B)
• Servicios Web en la Actualidad:
– Framework de Servicios Web
– Arquitecturas Orientadas a Servicios
– Computación Orientada a Servicio
– Procesos de Negocio
– Web 2.0
• Servicios Web el Futuro
– Web 3.0. The Semantic Web Service Architecture.
– …
© José Angel Bañares
3
LOS ORÍGENES
© José Angel Bañares
4
© José Angel Bañares
5
La Web
Cliente Cliente
• La gestión de recursos trata con la
organización (almacenamiento,
indexación, y recuperación) de los Servidor Procesos de Negocio
datos necesarios para soportar la
lógica de la aplicación.
Base de Datos Persistencia
© José Angel Bañares
8
• Clientes remotos
– Rápidamente se vio el valor de mostrar la capa de presentación
como documentos HTML
• Apertura de los sistemas más allá de los limites de una
empresa
– El ideal de un banco sería instalar un cajero automático en cada hogar.
Bussines-to-consumer (B2C)
Aplicaciones Cliente/Servidor
Servidor
© José Angel Bañares
9
Clientes Web
cliente
Cliente
cliente Servidor Http HTTP
Progamas CGI
petición
servidor HTTP
cortafuegos
servidor navegador
Web navegador
Web
cliente
Una aplicación puede generar
el documento Web
Programa CGI
Common Gateway Interface
(CGI):
Servlets
Servidor Web
cortafuegos
Java server process peticiones
HTTP
Hilo Java navegador
cliente
• Servlets
Servidor
Y más…
Servidor Web
cortafuegos
AJAX:
peticiones
Datos XML
Motor Ajax
Datos HTML+CSS
navegador
Llamada Javascript
Interfaz de usuario
Asynchronous JavaScript + XML
12
© José Angel Bañares
13
theserverside.com
http://www.theserverside.com/cartoons/TalesFromTheServerSide.tss
Procesos de negocio: 14
© José Angel Bañares
AB
Partner 1 Partner 2
A C
E
B
F E’
© José Angel Bañares
15
Aprovisionamiento
de películas
Gestión de
clientes
Alojamiento
sitio web
Facturación
Reproducción
© José Angel Bañares
16
Integrando capas
cliente
lógica de aplicación
capa de capa de
present. 1 present. 2
servidor 2
servidor 1
aplicación aplicación
capa capa
gestión de recursos gestión de recursos
© José Angel Bañares
17
Middleware
• Un Middleware es simplemente
clientes un nivel de indirección entre los
clientes y el resto de capas del
Middleware o lógica de sistema.
aplicación global • El middleware es infraestructura
que:
Simplifica el diseño de los clientes
Lógica de reduciendo el número de interfaces,
aplicación local
Se ofrece acceso transparente a los
sistemas subyacentes,
Gestores El middleware actúa como la
plataforma para integrar la
de recursos funcionalidad de los sistemas y
locales soporta la lógica de aplicación de alto
nivel, y
Se preocupa de localizar los recursos,
acceder a estos, y recoger los
resultados.
middleware
Servidor A Servidor B
© José Angel Bañares
18
Middleware “Ideal” para
definir procesos de negocio
gestión gestión
transacciones objetos
gestión
procesos
gestión gestión
mensajes datos
INFRAESTRUCTURA COMÚN
© José Angel Bañares
19
• CORBA/Middleware tradicional
– El programador debe conocer el modelo computacional y el
diseño utilizado por los proveedores de servicios
– Uso para red de área local
Servidor
CORBA
CORBA
© José Angel Bañares
20
Middleware incompatibles
SERVICIOS WEB
© José Angel Bañares
22
• Abstracciones de programación
– Funcionalidad adicional introduciendo nuevas capas
– Middleware, que abstrae de aspectos de distribución,
prestaciones, ciclo de vida y la gestión de recursos, la
persistencia, etc.
© José Angel Bañares
23
framework = infraestructura
© José Angel Bañares
24
Today, the principal use of the World Wide Web is for interactive access
to documents and applications. In almost all cases, such access is by
human users, typically working through Web browsers, audio players,
or other interactive front-end systems. The Web can grow significantly
in power and scope if it is extended to support communication between
applications, from one program to another.”
IBM “Web Services Framework” for W3C Workshop on Web Services
11-12 April 2001
http://www.w3.org/2001/03/WSWS-popa/paper51
SOC:Comunicación en Servicios
Estilo
arquitectural
“SOA”
© José Angel Bañares
29
cliente
arquitectura
browser Web N-niveles
Servidores de
servidor Web capa Aplicaciones:
presentación
Middleware con capa
filtro XML/HTML presentación Web
capa
lógica aplicación middleware
capa
gestor recursos
Sistema de información
© José Angel Bañares
30
Gestión Cierre
ERP Lógica de negocio envíos
inventario mes
Middleware tradicional
Broker de Mesnajes
Productos/Especificaciones SOA
TIBCO: Enterprise Server Bus IBM: Enterprise Server Bus
Ofertado =falso
• Sistemas de Gestión
de Workflows comprueba si Ofertado=verdad
merece la pena
– Interacciones con servicios
– Soporte al ciclo de vida else Procede=verdad
– Soporte a fallos
obtener presupuesto
• BPEL4WS (Business Process sistema presupuestos
Execution Language for Web
Services) ExisteContrato=falso
obtener presupuesto
ExisteContrato = verdad
del suministrador
actualizar
sistema presupuestos
broker de mensajes
XML XML XML XML XML
SOAP SOAP SOAP SOAP SOAP
REST
• INTERFAZ UNIVERSAL:
– Los métodos son:
– GET (recupera documento), POST (adjunta información al
recurso), PUT (almacena información), DELETE (borra el
recurso indicado).
© José Angel Bañares
37
Invocación de un SW
http://webservices.amazon.com/onca/xml?
Service=AWSECommerceService&AWSAccessKeyId=1JF
WX63WKHTWX34G4KG2&Operation=ItemSearch&Ke
ywords=Tim%20Berners&SearchIndex=Books
© José Angel Bañares
38
Web 2.0
• <definición>Wikipedia</definición>
El término Web 2.0 fue acuñado por O'Neill Media en 2004 para referirse a
una segunda generación de Web basada en comunidades de usuarios y una
gama especial de servicios, como las redes sociales, los blogs, los wikis o
las folcsonomías, que fomentan la colaboración y el intercambio ágil de
información entre los usuarios
© José Angel Bañares
39
EL FUTURO
© José Angel Bañares
41
La Vision
Inteligencia Artificial
SemanticAgents
Artificial Intelligence IntelligentAgents Autonomic
Smart Ecosystems
Intellectual Markets
Personal Assistants Natural Property Semantic
Ontologies 3 SemanticWebiste
Language 4 Communities
Multi-user Community
Enterprise Portals Wiki
Mash-up Gaming Portals
SearchEngines
Marketplaces
Web sites Blogs
ContentPortals1 RSS 2 &auctions Social
Bookmarking
La Web PIMS La Web Social
Conecta Información Email Conecta Gente
Databases “Push
Social network
Publish& Subscribe Conferencing
File Servers ” P2P file sharing Instantmessages
Invocación
Objetos Aplicación Objetos Aplicación
(cliente) (servicio)
Búsqueda Publicación
Descripciones de Servicios
Registro de Servicios
© José Angel Bañares
47
CORBA
IDL del
proveedor
interface Purchasing {
float getQuote ( in long productId);
de servicios
float purchaseGoods (in long productId, in long quantity)
}
objeto de la objeto de la
aplicación aplicación
(cliente) (proveedor servicio)
stub skeleton
Objeto de la
Objeto de la aplicación
aplicación
(cliente)
(proveedor servicio)
stub skeleton
1
Crea/interpreta tus
Definiciones IDL
2
Precompilador
Skeletons
3
Añade Implementación Servidor
4
Compila
5
Client IDL Server IDL
Interface Stubs Implementación
Skeletons
Repository Objetos
Cliente
Servidor
© José Angel Bañares
50
© José Angel Bañares
51
La Interoperabilidad en el Futuro
Componente
Componente
Software
Software
© José Angel Bañares
53
La Interoperabilidad en el Futuro
Componente
Componente
Software
Software
© José Angel Bañares
54
La Interoperabilidad en el Futuro
Componente
Componente
Software
Software
© José Angel Bañares
55
Agentes
descripciones de servicio
(WSDL)
registro UDDI
© José Angel Bañares
60
Objetivo
Objetivo Servicio
del
del cliente Publicado
Proveedor
Proceso Proceso
Cliente Proveedor
Servicios
Descubrimiento
Seleccionado y
servicios Acoplamiento Ejecución
acuerdos
Candidatos
Interacción con
Monitorización
Servicios de
Negociación y ejecución del
registros
Caracterización con candidatos servicio
Protocolo de
abstracta del
servicio
búsqueda de y acuerdo Servicio de
servicio Servicio de Terminación y
candidato monitorizació
iniciación n
compensación
Grid Computing/WSRF
Grid Computing
62
© José Angel Bañares
63
Autonomic Computing
• En un sistema autogestionado, el
programador juega un nuevo papel; No
controla el sistema directamente. En su lugar
define políticas y reglas para que los
procesos se auto gestionen:
• Auto-configuración
• Auto-reparación
• Auto-optimización
• Auto-protección
© José Angel Bañares
64
XML
Función
Web SemanticArchitecture
Pila estándares
Servicios Web SOC
•Servidores SOA
•JBI Semantic Web
Aplicaciones Web Languages
•J2EE Semantica •RIF
•.NET •RDF •SPARQL
•OWL •GRIDDL
•MAS (FIPA)
2007 2008 …
Referencias