Trabalho Final da Disciplina deSistemas de Informação DistribuídosMauricio AstiazaraInstituto de Informática – Universidad...
Como definido pelo W3C (2010), web services fornecem um meio padrão de interoperação entrediferentes aplicações de softwar...
Figura 2. Layout da tela de pesquisa.Perfil do Usuário: Conterá um formulário com os campos de dados necessários para oper...
Web Services REST são Web Services que não utilizam o protocolo Soap. Em vez disso, a chamadaé uma requisição HTTP e a res...
Wiki do Instituto de Informática da UFRGS. (2010) "ConfigRede:Serviço de web",https://wiki.inf.ufrgs.br/mediawiki/index.ph...
Upcoming SlideShare
Loading in …5
×

Sistema de Recomendação de Páginas sobre Saúde

190
-1

Published on

Este trabalho da disciplina de Sistemas de Informação Distribuídos visava criar um sistema de recomendação de páginas web sobre saúde de acordo com o perfil do usuário. O sistema seria resultado da integração de módulos desenvolvidos por diferentes grupos da turma. Infelizmente não foi completamente implementado, ficando funcional apenas a integração com web services de terceiros.

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
190
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Sistema de Recomendação de Páginas sobre Saúde

  1. 1. Trabalho Final da Disciplina deSistemas de Informação DistribuídosMauricio AstiazaraInstituto de Informática – Universidade Federal do Rio Grande do Sul (UFRGS)Caixa Postal 15.064 – 91.501-970 – Porto Alegre – RS – Brasil1. IntroduçãoO trabalho de pesquisa e implementação a ser realizado pelo grupo de alunos da disciplina deSistemas de Informação Distribuídos pretende definir um modelo de sistema de recomendação depáginas sobre saúde de acordo com o perfil do usuário.Neste sistema, o usuário tem acesso um mecanismo de busca que leva em consideração além dostermos de pesquisa digitados pelo usuário, critérios mínimos de qualidade e reputação da páginaweb, evitando assim a apresentação de resultados sem embasamento científico, o que na área dasaúde pode levar a enganos fatais.Outro diferencial em relação a sistemas de buscas tradicionais, seria o resultado da busca baseadotambém no perfil do usuário, visando oferecer material adequado ao usuário, de acordo com as suascapacidades, objetivos e até mesmo localização.2. OrganizaçãoPara alcançar este modelo de sistema, o grupo identificou três áreas de pesquisa distintas. As áreassão Perfil de Usuário, Reputação de Páginas e Recomendação de Páginas. Na área de Perfil deUsuário seria pesquisado técnicas de como perfilar usuários do sistema e quais as informaçõesnecessárias para isso, bem como qual a abordagem para obtenção destas informações. EmReputação de Páginas, foram vistas maneiras de identificar páginas com qualidade de conteúdo eautoria na área da saúde. Já em Recomendação de Páginas, seria definia a lógica para oferecerdeterminadas páginas para usuários com determinados perfis, visando a melhor adequação entreeles.Foi estipulado que cada uma destas áreas seria encapsulada em módulos independentes expondocada uma as suas funcionalidades através de web services. O sistema como um todo seria aintegração destes diversos web services. Com isso, foram definidas mais duas áreas com o objetivomais de apoio sendo elas Arquitetura de Sistema e Orquestração. A área de Arquitetura de Sistemaconsiste na definição da infra-estrutura do projeto. A Orquestração realiza a integração dos diversosweb services como um serviço único oferecido ao usuário, por isso possui também aresponsabilidade da interface com o usuário. O grupo foi então dividido em duplas sendo cada umaresponsável pela pesquisa e desenvolvimento de uma área.3. Orquestração e Interface com UsuárioSendo os módulos de Perfil de Usuário, Reputação e Recomendação web services independentes, opapel da Orquestração é utilizar estes serviços para fornecer ao usuário um serviço integrado debusca e recomendação baseada no seu perfil. O usuário terá a percepção de estar utilizando umúnico serviço, sem realmente ter conhecimento de que se trata da integração de diversos serviços.
  2. 2. Como definido pelo W3C (2010), web services fornecem um meio padrão de interoperação entrediferentes aplicações de software rodando em uma variedade de plataformas e frameworks. Os webservices são caracterizados por sua grande interoperabilidade e extensibilidade, bem como por suasdescrições processáveis por máquina graças ao uso de XML. Eles podem ser combinadoslivremente para obter operações complexas. Programas fornecendo serviços simples podeminteragir um com outros para fornecer sofisticados serviços de valor agregado.Este módulo, além de se comunicar com os web services dos demais módulos, deve possuir umainterface com o usuário. Esta interface com o usuário será um web site. A integração entre esteselementos é ilustrada na figura 1.Figura 1. Integração entre os elementos.A tela será dividida basicamente em três áreas como explicado a seguir.
  3. 3. Figura 2. Layout da tela de pesquisa.Perfil do Usuário: Conterá um formulário com os campos de dados necessários para operfilamento do usuário. O usuário deverá preencher esses campos para usufruir da recomendação.Alternativamente, o usuário previamente registrado pode realizar login, não sendo necessáriopreencher o formulário novamente.Pesquisa: Uma simples caixa de texto onde o usuário pode digitar livremente os termos da suapesquisa como, por exemplo, "alzheimer sintomas".Resultados: Lista de sites recomendados com base nos termos de pesquisa e no perfil do usuário. Alista está ordenada pela adequação do site ao usuário, logo, o primeiro site é o mais recomendadopara o usuário.Dentre as diversas linguagens de programação disponíveis atualmente para programação web, PHPfoi escolhida por ser Open Source e também por permitir o uso da infraestrutura de servidor web jádisponível aos alunos de pós-graduação do Instituto de Informática da UFRGS (Instituto deInformática da UFRGS 2010). A única restrição desta infraestrutura é não disponibilizar acesso abanco de dados (Wiki do Instituto de Informática da UFRGS 2010). A linguagem de programaçãoPHP possui uma extensão que pode ser usada para escrever servidores e clientes de SOAP. Elasuporta os subconjuntos SOAP 1.1, SOAP 1.2 e as especificações do WSDL 1.1 (PHP Group 2010).A classe SoapClient permite facilmente consumir web services através da indicação do endereço doarquivo WSDL que descreve o serviço.O grupo de Perfil de Usuário indicou que uma das informações necessárias seria a localizaçãogeográfica do usuário. Foram então incluídos campos de país, Estado e cidade. Estes campos sãolistas e seu conteúdo é fornecido pelo site Geonames.org. O Geonames.org é um banco de dadosgeográfico disponível para download gratuitamente sob a licença Creative Commons (CreativeCommons 2010). Ele contém mais de 7 milhões de características únicas. Os dados são nomes delugares em vários idiomas, elevação, população e outros de várias fontes. Os dados são tambémgratuitamente via Web Services REST. O site atende mais de 11 milhões de requisições de WebServices por dia (Geonames.org 2010).
  4. 4. Web Services REST são Web Services que não utilizam o protocolo Soap. Em vez disso, a chamadaé uma requisição HTTP e a resposta é XML ou outra forma simples, como texto no formato CSV(valores separados por vírgula) por exemplo (Wikipedia 2010). O objetivo é tornar a implementaçãomais simples e a execução mais leve e escalável, com menos overhead.Visando facilitar para o usuário o preenchimento dos campos de localização geográfica, foramestudados serviços de determinação geográfica através do endereço IP. O site IPInfoDB oferecevários serviços gratuitos baseados na geolocalização por endereço IP (IPInfoDB 2010). Odocumentação da API é bem rica, possuindo inclusive exemplos em PHP. Este serviço foi utilizadopara automaticamente preencher os campos de dados geográficos para o usuário quando possível. Oendereço IP do visitante é passado como parâmetro e são retornadas informações geográficas até onível de cidade para a maioria dos casos.O protótipo desenvolvido está disponível no endereço http://inf.ufrgs.br/~mvastiazara/sidist. Ocódigo-fonte do protótipo está hospedado no site GitHub no endereçohttp://github.com/astiazara/sidist e pode ser baixado livremente.ConclusãoA não implementação dos web services dos demais grupos impossibilitou a integração destesserviços no protótipo, ficando apenas a integração com os web services de terceiros relacionados àGeolocalização. Mesmo assim foi valoroso pela experiência da integração de mais de um serviçodistribuído na web para compor um serviço maior oferecido ao usuário. O trabalho foi importantetambém para o entendimento de que é factível um modelo de avaliação de qualidade de páginasweb sobre saúde segundo determinados critérios e técnicas, que posteriormente pode serimplementado por sistema.ReferênciasCreative Commons. (2010) "Creative Commons: Attribution 3.0 Unported",http://creativecommons.org/licenses/by/3.0, Junho.Geonames.org. (2010) "About Geonames", http://www.geonames.org/about.html, Junho.IPInfoDB. (2010) "IP Info DB: Free IP address geolocation tools", http://ipinfodb.com, Junho.Instituto de Informática da UFRGS. (2010) "Uso e Funcionamento da Rede",http://www.inf.ufrgs.br/admrede/index.php?item=rede&subitem=paginasweb, Maio.PHP Group. (2010) "PHP Manual: Introdução ao SOAP",http://br2.php.net/manual/pt_BR/intro.soap.php, Junho.W3C. (2010) "Web Services Activity Statement", http://www.w3.org/2002/ws/Activity, Maio.
  5. 5. Wiki do Instituto de Informática da UFRGS. (2010) "ConfigRede:Serviço de web",https://wiki.inf.ufrgs.br/mediawiki/index.php/ConfigRede:Serviço_de_web, Maio.Wikipedia. (2010) "REST", http://pt.wikipedia.org/wiki/REST, Junho.

×