Click here to load reader
View
0
Download
0
Embed Size (px)
UNIVERSIDADE FEDERAL DE CAMPINA GRANDE - UFCG CENTRO DE ENGENHARIA ELÉTRICA E INFORMÁTICA
COORDENAÇÃO DE PÓS-GRADUAÇÃO EM INFORMÁTICA - COPIN
DISSERTAÇÃO DE MESTRADO
WEBS COMPOSER: UMA FERRAMENTA BASEADA EM ONTOLOGIAS PARA A DESCOBERTA E
COMPOSIÇÃO DE SERVIÇOS NA WEB
Fabio Gomes de Andrade (Mestrando)
Ulrich Schiel (Orientador)
Cláudio de Souza Baptista (Orientador)
CAMPINA GRANDE, JULHO DE 2006
WEBS COMPOSER:UMA FERRAMENTA BASEADA EM ONTOLOGIAS PARA A DESCOBERTA E COMPOSIÇÃO DE SERVIÇOS NA WEB
Dissertação submetida à Coordenação do Curso de Pós-Graduação em Informática
do Centro de Engenharia Elétrica e Informática da Universidade Federal de
Campina Grande, como requisito parcial para a obtenção de grau de Mestre em
Informática.
Área de concentração: Ciência da Computação
Linha: Sistemas de Informação e Banco de Dados
Fabio Gomes de Andrade (Mestrando)
Ulrich Schiel (Orientador)
Cláudio de Souza Baptista (Orientador)
CAMPINA GRANDE, JULHO DE 2006
ii
FICHA CATALOGRÁFICA ELABORADA PELA BIBLIOTECA CENTRAL DA UFCG
A553w Andrade, Fábio Gomes de 2006 Webs composer: uma ferramenta baseada em ontologias para a descoberta e
composição de serviços na web / Fábio Gomes de Andrade. ─ Campina Grande, 2006.
115f.: il.
Referências. Dissertação (Mestrado em Informática) – Universidade Federal de Campina
Grande, Centro de Engenharia Elétrica e Informática. Orientador: Cláudio de Souza Baptista.
1─ Sistemas de Gerenciamento de Base de Dados 2─ Ontologia 3─ Web Services I─Título
CDU 004.65:111
iii
“Não é mérito o fato de nunca termos caído, mas o de
termos nos levantado todas as vezes em que caímos”
Provérbio Árabe
iv
Agradecimentos
Primeiramente a Deus, maior fonte de amor e misericórdia.
Ao meu pai José e à minha mãe Alzira, por todo o amor e carinho que me
dedicaram por toda a minha vida, e por nunca terem me deixado desistir, às minhas irmãs
Sheila e Fernanda por todo o carinho e apoio e ás minhas sobrinhas Gabriella e Lívia,
fontes de doçura que me fazem esquecer de todos os meus problemas.
À minha noiva Ranielly, por todo o incentivo e carinho recebidos nos momentos
mais difíceis.
Aos meus orientadores Ulrich e Cláudio, pela paciência, apoio, motivação,
dedicação, conhecimentos transmitidos, pelas caronas para a rodoviária e pelos excelentes
bate-papos.
Aos meus colegas de curso Elvis, Fábio Leite, Cláudio Campêlo e Damião, por todo
o apoio e pelos ótimos momentos no LSI.
A todos os meus colegas de trabalho, especialmente aos meus grandes amigos
Claudivan, Edemberg e Daladier, que sempre me incentivaram e permitiram a minha
liberação.
Aos meu cunhado Gean, pela companhia durante as viagens para Campina Grande,
e ao meu cunhado Camillo, pelo incentivo.
À Aninha, por sua simpatia e por resolver todos os meus problemas burocráticos.
À COPIN, pela oportunidade de cursar o mestrado.
A todas as pessoas que, de alguma forma, contribuíram para este trabalho.
v
Resumo
Atualmente, muitas empresas utilizam a plataforma de web services para oferecer os
seus serviços na web. Estes serviços podem ainda ser compostos para resolver tarefas mais
complexas. Isto fez surgir a necessidade do desenvolvimento de ferramentas de buscas
capazes de localizar estes serviços com precisão e descobrir automaticamente composições
de serviços que podem ser montadas para resolver uma requisição do usuário. Este trabalho
apresenta WebS Composer, uma ferramenta que usa ontologias para localizar serviços e
composições de serviços que atendem uma determinada solicitação. Além disso, ela usa
características especificas do provedor do serviço para selecionar, dentre os resultados
recuperados, aqueles que mais se adequam às necessidades e preferências do usuário.
vi
Abstract
Recently, there are many companies using service oriented architectures in order to
offer their services in the web. These services may still be composed in order to solve more
complex tasks. This service composition demands for developing searching tools which are
able to find those services with accuracy. This work presents WebS Composer, a tool that
uses ontologies in order to find services and service compositions which satisfy a specific
request. Furthermore, WebS Composer uses constraints based on the service provider’s
features to select, among the retrieved results, those that are more relevant to user request
vii
Índice
CAPÍTULO I - INTRODUÇÃO ........................................................................................ 1 CAPÍTULO II – TRABALHOS RELACIONADOS......................................................... 5 2.1 A composição de serviços ............................................................................................ 5 2.1.1 Uma solução baseada em contratos ........................................................................... 6 2.1.2 IRS-III........................................................................................................................ 9 2.2 A descoberta e seleção de composição de serviços.................................................... 13 2.2.1 Compat .................................................................................................................... 13 2.2.2 O trabalho de Kvaloy............................................................................................... 18 2.2.3 A proposta de Aversano para a descoberta de composições ................................... 20 2.2.4 Uma solução baseada em planos de contingência ................................................... 23 2.2.5 O trabalho de Gekas & Masli .................................................................................. 28 2.2.6 O trabalho de Medjahed et al................................................................................... 29 2.3 Considerações Finais .................................................................................................. 34 CAPÍTULO III – WEBS COMPOSER............................................................................ 36 3.1 Os requisitos funcionais ............................................................................................. 36 3.2 Os requisitos não funcionais....................................................................................... 37 3.3 Os atores do sistema ................................................................................................... 39 3.4 A arquitetura de WebS Composer .............................................................................. 39 3.5 A camada da lógica do negócio.................................................................................. 42 3.5.1 O módulo de registro ............................................................................................... 42 3.5.2 O módulo de consulta .............................................................................................. 46 3.5.2.1 A descoberta de serviços simples ......................................................................... 49 3.5.2.3 A descoberta de composições seqüenciais ........................................................... 58 3.5.2.4 A consulta a provedores de serviços..................................................................... 67 3.5.2.5 A busca combinada............................................................................................... 71 3.5.3 O módulo de execução ............................................................................................ 72 3.5.2.3 O módulo de administração do sistema................................................................ 74 3.6 A camada de dados ..................................................................................................... 75 3.7 Analisando o desempenho de WebS Composer ......................................................... 77 3.8 Considerações Finais .................................................................................................. 80 CAPÍTULO IV – UM ESTUDO DE CASO.................................................................... 82 4.1 Ontologias para viagens.............................................................................................. 82 4.2 Os serviços.................................................................................................................. 85 4.3 Inserindo um novo provedor de serviços.................................................................... 85 4.4 Realizando buscas em WebS Composer .................................................................... 87 4.4.1 Consultando por serviços.........................................................