16.05.2013 Views

PhD. Dissertation-Jose María Alvarez Rodríguez - moldeas

PhD. Dissertation-Jose María Alvarez Rodríguez - moldeas

PhD. Dissertation-Jose María Alvarez Rodríguez - moldeas

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

UNIVERSIDAD DE OVIEDO<br />

DEPARTAMENTO DE INFORMÁTICA<br />

TESIS DOCTORAL<br />

MÉTODOS SEMÁNTICOS DE REUTILIZACIÓN DE DATOS<br />

ABIERTOS ENLAZADOS EN LAS LICITACIONES PÚBLICAS<br />

Presentada por<br />

<strong>Jose</strong> <strong>María</strong> Álvarez <strong>Rodríguez</strong><br />

para obtención del título de Doctor por la Universidad de Oviedo<br />

Dirigida por el<br />

Profesor Doctor D. José Emilio Labra Gayo


Resumen<br />

Las arquitecturas orientadas a servicios (SOA) son un paradigma para el despliegue de una<br />

arquitectura de software basada en tres elementos: servicios, infraestructura de comunicaciones<br />

y una serie de políticas. Las ventajas de uso de este tipo de arquitectura residen un su flexibilidad<br />

tanto en tiempo de desarrollo, despliegue, y sobre todo en mantenimiento. La aparición de<br />

este paradigma surge para dar respuesta a las necesidades de integración e interoperabilidad<br />

entre aplicaciones, dentro de una misma empresa o bien para comunicarse con terceras partes,<br />

resolviendo así los graves problemas de heterogeneidad inherentes a los sistemas distribuidos.<br />

No obstante, el enfoque de SOA es tremendamente imperativo y requiere un gran esfuerzo<br />

de desarrollo en su implantación y, en algunos casos mantenimiento. En este sentido, el uso de<br />

la semántica basado en estándares y modelos de conocimiento compartido para los distintos<br />

dominios de negocio, irrumpe para mejorar los procesos de integración e interoperabilidad y<br />

añadir flexibilidad a este enfoque.<br />

En este trabajo de investigación, se realiza una propuesta para añadir semántica (siguiendo<br />

los estándares desarrollados bajo la iniciativa de Web Semántica) a las arquitecturas orientadas<br />

a servicios pero sin ser intrusivo con el modelo que proponen, reaprovechando el entorno de<br />

ejecución. La semántica actúa para dirigir y enriquecer los distintos procesos en los que se basa<br />

SOA dotando a este paradigma de una mayor flexibilidad, no sólo para los usuarios técnicos<br />

sino también para los usuarios de negocio. El desarrollo de este trabajo tiene los siguientes<br />

objetivos de alto nivel: 1) Estudiar el uso de semántica en arquitecturas orientadas a servicios.<br />

2) Proponer una solución para el uso de semántica en arquitecturas orientadas a servicios.<br />

El primero de los objetivos se cubre a través del repaso de las tecnologías asociadas a SOA<br />

y a semántica. El segundo de los objetivos se cubre con la realización de una propuesta para<br />

aplicar semántica sobre SOA con los siguientes puntos claves:<br />

Utilización de un modelo de conocimiento compartido formalizado a través de ontologías<br />

donde se definen los conceptos y relaciones de un dominio de negocio. Este modelo se<br />

utilizará para definir y describir los servicios de negocio (procesos) y los servicios técnicos<br />

(operaciones de los proveedores).<br />

Una infraestructura SOA basada en servicios web (WSDL+SOAP) y un bus de comunicaciones<br />

(ESB).<br />

Un generador de código BPEL, estándar para la definición de procesos de negocio, guiado<br />

por semántica.<br />

Palabras clave<br />

arquitecturas orientadas a servicios, servicios web, semántica, soa, bpel, esb<br />

I


Agradecimientos<br />

La elaboración de este trabajo de investigación no habría sido posible sin el apoyo incondicional<br />

de mis padres y de mi hermana, que han “aguantado” durante estos últimos años todos<br />

mis cambios de humor con una paciencia digna de mención.<br />

A todos mis compañeros de trabajo, que me han apoyado durante estos últimos años convirtiéndose<br />

en algo más que eso. Por los que están, “Luis” siempre cordial y conciliador, “Milín”<br />

un ejemplo a seguir elaborando documentación, “Cabo Miguel” (que la fuerza le acompaña),<br />

Diego un ejemplo por su forma de trabajar, Sergio (“Wikier”) socialmente accesible a través de<br />

una URI, Iván Minguez, Tejo, etc.<br />

No podía dejar de recordar y agradecer a todos mis amigos: “Ares”, “Lea”, Hugo, “Viñas”,<br />

Héctor, “Mele”, “Rake”, Carla, etc., por todos los buenos momentos que hemos pasado fuera<br />

de “Matrix”.<br />

También, me gustaría agradecer a la empresa E2000 Nuevas Tecnologías y en especial a<br />

Higinio Iglesias, Alejandro Martínez y David Buceta por brindarme la oportunidad de experimentar<br />

con un escenario real.<br />

Por último, quiero agradecer especialmente a mi tutor Antonio Campos por animarme a<br />

investigar, a pensar más allá de lo evidente y hacer las cosas “bien”.<br />

III


Historial de este documento<br />

Fecha Versión Comentarios<br />

Mayo/2011 0.1 Inicio del documento<br />

Junio/2011 0.2 FIXME<br />

Julio/2011 0.3 FIXME<br />

Septiembre/2011 0.3 Versión alfa del documento.<br />

Octubre/2011 0.4 Revisión del documento<br />

Noviembre/2011 0.5 Versión borrador final del documento.<br />

Noviembre/2011 0.6 Versión final del documento.<br />

V


Sobre este documento<br />

Este documento recoge el trabajo de investigación titulado como “Interoperabilidad e Integración<br />

en Arquitecturas Orientadas a Servicios basadas en Semántica” y realizado para la<br />

obtención de la suficiencia investigadora en el Departamento de Informática 1 de la Universidad<br />

de Oviedo 2 .<br />

Este documento se encuentra estructurado de la siguiente forma:<br />

“Introducción” (ver Capítulo 1): se repasan los conceptos básicos de SOA necesarios para<br />

seguir el documento.<br />

“Motivación y Objetivos (ver Capítulo ??: se presenta un escenario real motivador de este<br />

trabajo así como las motivaciones y los objetivos del mismo.<br />

“El problema de la Interoperabilidad”(ver Capítulo ??): en este capítulo se pone de manifiesto<br />

los problemas de interoperabilidad actuales en las arquitecturas software así como<br />

las posibles soluciones. Estado del arte de la interoperabilidad entre aplicaciones.<br />

“El problema de la Integración”(ver Capítulo ??): en este capítulo se pone de manifiesto<br />

los problemas de integración actuales en las arquitecturas software así como las posibles<br />

soluciones. Estado del arte de la integración de las aplicaciones.<br />

“Arquitecturas Orientadas a Servicios”(ver Capítulo ??): en esta capítulo se detallan más<br />

profundamente este tipo de arquitecturas. La tecnología que contemplan y el estado actual<br />

de la misma.<br />

“Semántica aplicada a SOA”(ver Capítulo 3): en esta capítulo se detalla la aplicación de<br />

la semántica en las arquitecturas orientadas a servicios.<br />

“Definición de SOA usando Semántica”(ver Capítulo ??): en este capítulo se propone un<br />

SOA basado en semántica. Es el capítulo más relevante de este trabajo de investigación.<br />

“Experimentación y Validación” (ver Capítulo 8): se repasa la validación de la propuesta<br />

así como el grado de consecución de los objetivos.<br />

“Conclusiones y Trabajo Futuro”(ver Capítulo 10): se comentan las conclusiones obtenidas<br />

tras la realización de este trabajo de investigación. También se marcan las líneas de evolución<br />

futura.<br />

“Impacto”(ver Apéndice B): en este capítulo se comentan los resultados (publicaciones,<br />

entregables de proyectos, etc.) relacionados con este trabajo de investigación.<br />

“Metodología de Trabajo” (ver Apéndice C): en este capítulo se fijan las directrices y una<br />

metodología de trabajo para continuar con la realización de la tesis.<br />

1 http://www.di.uniovi.es<br />

2 http://www.uniovi.es<br />

VII


VIII<br />

“Web Semántica” (ver Apéndice ??): en este capítulo se comenta el concepto de web<br />

semántica y sus aplicaciones de forma genérica.


Sobre el autor<br />

<strong>Jose</strong> <strong>María</strong> <strong>Alvarez</strong> <strong>Rodríguez</strong> es Ingeniero en Informática (2007, Proyecto Ontospread: “Activación<br />

de Conceptos en Ontologías mediante el algoritmo de Spreading Activation”, premio<br />

del Colegio Oficial al mejor proyecto fin de carrera) e Ingeniero Técnico en Informática de Sistemas<br />

(2005) por la Universidad de Oviedo.<br />

Actualmente realiza el trabajo de investigación del programa de doctorado “Sistemas y<br />

Servicios Informáticos para Internet” en la Universidad de Oviedo titulado como “Interoperabilidad<br />

e Integración en Arquitecturas Orientadas a Servicios basadas en Semántica”.<br />

Desde el 2005 trabaja en la unidad de tecnologías semánticas del departamento de I+D+i de<br />

la Fundación CTIC 3 y, combina su actividad laboral con la docencia como profesor asociado en<br />

el Departamento de Informática de la Universidad de Oviedo desde el año 2008 .<br />

Tiene experiencia en el desarrollo e integración de aplicaciones empresariales J2EE, diseño<br />

de arquitecturas SOA o sistemas de búsqueda. Participa activamente en la investigación en<br />

Web Semántica, arquitecturas orientadas a servicios, sistemas basados en reglas y lenguajes de<br />

programación. Adicionalmente, es miembro del grupo de trabajo SEA: Service Engineering &<br />

(service-oriented) Architectures de la iniciativa INES 4 .<br />

3 http://www.fundacionctic.org<br />

4 http://www.ines.org.es/<br />

IX


Índice general<br />

1. Introducción 1<br />

2. Contratación Pública y e-Procurement 3<br />

3. Panorámica de uso de la Web Semántica y Linked Data 5<br />

3.1. Definición . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6<br />

3.1.1. No es Web Semántica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6<br />

3.2. Infraestructura para la Web Semántica . . . . . . . . . . . . . . . . . . . . . . . . . 7<br />

3.2.1. Ontologías en la Web Semántica . . . . . . . . . . . . . . . . . . . . . . . . 7<br />

3.2.2. Arquitectura para la Web Semántica . . . . . . . . . . . . . . . . . . . . . . 7<br />

3.2.3. Lenguajes para la Web Semántica: creando ontologías . . . . . . . . . . . . 16<br />

3.3. Ontologías . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39<br />

3.3.1. Antecedentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39<br />

3.3.2. Definición . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40<br />

3.3.3. Componentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41<br />

3.3.4. Clasificación de ontologías . . . . . . . . . . . . . . . . . . . . . . . . . . . 44<br />

3.3.5. Principios de diseño . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45<br />

3.3.6. Operaciones con ontologías . . . . . . . . . . . . . . . . . . . . . . . . . . . 46<br />

3.3.7. Aplicación de las ontologías . . . . . . . . . . . . . . . . . . . . . . . . . . . 47<br />

3.3.8. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48<br />

4. Panorámica de aplicación de Métodos Semánticos 49<br />

5. Descripción de funcionamiento individual de los Métodos Semánticos 51<br />

5.1. Spreading Activation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51<br />

5.1.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51<br />

5.1.2. Parametrización del Spreading Activation . . . . . . . . . . . . . . . . . . . 55<br />

5.1.3. Implementación de Spreading Activation . . . . . . . . . . . . . . . . . . . . 55<br />

5.1.4. Versión de Spreading Activation . . . . . . . . . . . . . . . . . . . . . . . . . 58<br />

5.1.5. Casos de uso y escenarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62<br />

XI


XII ÍNDICE GENERAL<br />

6. Descripción de funcionamiento colectivo de los Métodos Semánticos 67<br />

7. Sistema MOLDEAS 69<br />

8. Experimentación y Validación 71<br />

9. Evaluación 73<br />

10. Conclusiones y Trabajo Futuro 75<br />

A. Trabajos publicados 77<br />

B. Impacto 79<br />

C. Metodología de Trabajo y de la Investigación 81<br />

Referencias 83


Índice de figuras<br />

3.1. Arquitectura Web Semántica 2002. . . . . . . . . . . . . . . . . . . . . . . . . . . . 8<br />

3.2. XSL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10<br />

3.3. Arquitectura Web Semántica 2005. . . . . . . . . . . . . . . . . . . . . . . . . . . . 15<br />

3.4. Modelo de tripletas RDF. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17<br />

3.5. Concepto expresado en SKOS-Core. . . . . . . . . . . . . . . . . . . . . . . . . . . 20<br />

3.6. SIOC integración con otros vocabularios. . . . . . . . . . . . . . . . . . . . . . . . 22<br />

3.7. Niveles de expresividad OIL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25<br />

3.8. Algunos lenguajes para la Web Semántica. . . . . . . . . . . . . . . . . . . . . . . . 27<br />

3.9. Clasificación de una ontología. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34<br />

3.10. Capas de WSML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35<br />

3.11. Sistemas basados en conocimiento. . . . . . . . . . . . . . . . . . . . . . . . . . . . 43<br />

5.1. Modelo gráfico del Spreading Activation . . . . . . . . . . . . . . . . . . . . . . . . 53<br />

5.2. Activación de conceptos en Spreading Activation . . . . . . . . . . . . . . . . . . . . 54<br />

5.3. Premiando caminos Spreading Activation . . . . . . . . . . . . . . . . . . . . . . . . 60<br />

5.4. Proceso genérico de Spreading Activation . . . . . . . . . . . . . . . . . . . . . . . . 62<br />

5.5. Aplicando Spreading Activation en el Proyecto Bopa . . . . . . . . . . . . . . . . . 65<br />

XIII


XIV ÍNDICE DE FIGURAS


Índice de tablas<br />

3.1. Familia de lógicas SH. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43<br />

XV


XVI ÍNDICE DE TABLAS


Capítulo 1<br />

Introducción<br />

1


2 CAPÍTULO 1. INTRODUCCIÓN


Capítulo 2<br />

Contratación Pública y e-Procurement<br />

2.1 Introducción<br />

2.1.1 Contratación Pública<br />

2.1.2 Contratación Pública Electrónica: e-Procurement<br />

El término e-Procurement se utiliza para designar al uso de medios y tecnologías electrónicas<br />

para llevar a cabo las operaciones y comunicaciones relacionadas con la contratación pública<br />

y en general, para todos aquellos procesos en los que participen proveedores y consumidores<br />

de un cierto servicio o producto. En el caso particular de las administraciones públicas<br />

se utiliza esta terminología para definir las operaciones llevadas a cabo para adquirir bienes o<br />

servicios mediante distintos métodos: contratación directa, centrales de contratación, contratos<br />

de urgencia y emergencia, etc.<br />

La importancia del proceso de contratación pública electrónica va más allá de la simple<br />

transición del papel<br />

2.1.3 Necesidades de e-Procurement<br />

2.1.4 Desafíos europeos en e-Procurement<br />

2.1.5 Iniciativas y proyectos de e-Procurement<br />

2.1.6 Evaluación del estado actual del mundo de e-Procurement<br />

2.1.7 Conclusiones<br />

3


4 CAPÍTULO 2. CONTRATACIÓN PÚBLICA Y E-PROCUREMENT


Capítulo 3<br />

Panorámica de uso de la Web Semántica<br />

y Linked Data<br />

5


6 CAPÍTULO 3. PANORÁMICA DE USO DE LA WEB SEMÁNTICA Y LINKED DATA


Capítulo 4<br />

Panorámica de aplicación de Métodos<br />

Semánticos<br />

7


8 CAPÍTULO 4. PANORÁMICA DE APLICACIÓN DE MÉTODOS SEMÁNTICOS


Capítulo 5<br />

Descripción de funcionamiento individual<br />

de los Métodos Semánticos<br />

9


CAPÍTULO 5. DESCRIPCIÓN DE FUNCIONAMIENTO INDIVIDUAL DE LOS MÉTODOS<br />

10<br />

SEMÁNTICOS


Capítulo 6<br />

Descripción de funcionamiento colectivo<br />

de los Métodos Semánticos<br />

11


CAPÍTULO 6. DESCRIPCIÓN DE FUNCIONAMIENTO COLECTIVO DE LOS MÉTODOS<br />

12<br />

SEMÁNTICOS


Capítulo 7<br />

Sistema MOLDEAS<br />

13


14 CAPÍTULO 7. SISTEMA MOLDEAS


Capítulo 8<br />

Experimentación y Validación<br />

15


16 CAPÍTULO 8. EXPERIMENTACIÓN Y VALIDACIÓN


Capítulo 9<br />

Evaluación<br />

17


18 CAPÍTULO 9. EVALUACIÓN


Capítulo 10<br />

Conclusiones y Trabajo Futuro<br />

19


20 CAPÍTULO 10. CONCLUSIONES Y TRABAJO FUTURO


Apéndice A<br />

Trabajos publicados<br />

21


22 APÉNDICE A. TRABAJOS PUBLICADOS


Apéndice B<br />

Impacto<br />

23


24 APÉNDICE B. IMPACTO


Apéndice C<br />

Metodología de Trabajo y de la Investigación<br />

25


26 APÉNDICE C. METODOLOGÍA DE TRABAJO Y DE LA INVESTIGACIÓN


Referencias<br />

27

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!