Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹[email protected]...

42
Track4Web: Uma plataforma inteligente de coleta e análise de dados e interações de usuários na Web Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹[email protected] ²[email protected] 17/11/2008 1

Transcript of Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹[email protected]...

Page 1: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

1

Track4Web: Uma plataforma inteligente de coleta e análise

de dados e interações de usuários na Web

Vítor Hugo de Paula Carvalho¹Ahmed Ali Abdalla Esmin²

¹[email protected]²[email protected]

17/11/2008

Page 2: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

2

Introdução e Motivação Objetivos Revisão Bibliográfica Materiais e Métodos Resultados e Discussão Conclusões Considerações Finais e Trabalhos Futuros

17/11/2008

Roteiro

Page 3: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

3

Aumento da utilização da Internet;

Poder do meio de comunicação;

Entender e providenciar melhorias.

17/11/2008

Introdução

Page 4: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

4

Serviços disponíveis;

Impossibilidade de acesso aos dados (dificuldade);

Projetos e estudos nas áreas de Mineração de Dados e Business Intelligence.

17/11/2008

Motivação

Page 5: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

5

Mecanismo de Coleta;

Ambiente de Consulta;

Disponibilidade de acesso aos dados de forma estruturada;

Plataforma integralizável.

17/11/2008

Objetivos

Page 6: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

6

World Wide Web;

Coleta de Dados na Web;

Tecnologias;

Arquitetura de Desenvolvimento MVC.

17/11/2008

Revisão Bibliográfica

Page 7: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

7

Sistema de documentos hipermídia interligados;Envolve textos, imagens, clipes, vídeos, sons, áudios, etc.

Navegador;

Hyperlink;Ligação entre os documentos hipermídia

Navegação.

17/11/2008

World Wide Web - Conceitos

Page 8: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

11

Almeida (2001) cita duas formas que podem ser utilizadas para a coleta de dados na Web;

Cada abordagem compreende suas vantagens e desvantagens;

As diferentes metodologias requerem diferentes arquiteturas e tecnologias.

17/11/2008

Coleta de Dados na Web

Page 9: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

12

Duas maneiras:

◦ Análise de LogArquitetura simplificadaReside no servidor

◦ Registro de AcessoArquitetura distribuídaCliente/servidor

17/11/2008

Coleta de Dados na Web

Page 10: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

13

Logs são arquivos gerados pelo servidor (web) que armazenam informações sobre os acessos aos arquivos;

Teoricamente seguem um padrão;

Poder oriundo da análise de logs (TAO & MURTAH);

Ferramentas disponíveis.Dados históricos, processados em lote

17/11/2008

Análise de Log

Page 11: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

14

Spiders, Crawlers, Mecanismos de Busca;

Transferência de Dados;

Relatórios de Erros.

17/11/2008

Análise de Log - Vantagens

Page 12: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

15

Cache de Navegador e Servidor;

Servidores Proxy;

Spiders, Crawlers, Mecanismos de Busca.

17/11/2008

Análise de Log - Desvantagens

Page 13: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

16

Utiliza a arquitetura cliente/servidor;

Processamento realizado no cliente;

Requer modificações no código do web site;

Controle centralizado.

17/11/2008

Registro de Acessos

Page 14: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

17

Portabilidade;

Dados Estratégicos;

Ausência de configurações no servidor.

17/11/2008

Registro de Acessos - Vantagens

Page 15: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

18

Esforço na modificação do web site;

Códigos de erro;

Download de arquivos;

Java Script desabilitado.

17/11/2008

Registro de Acessos - Desvantagens

Page 16: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

19

Abordagem de Registro de Acessos

◦ Cliente Java Script Cookies

◦ Servidor Linguagens server-side

ASP, PHP, ASP.Net, JSP, CGI, etc. Base de Dados

MySQL, PostgreeSQL, SQL Server, Interbase, etc.

17/11/2008

Tecnologias de Desenvolvimento

Page 17: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

24

Divide o processamento em três camadas:

◦ ModelRepresenta o domínio, dados

◦ ControllerInteligência, processamento

◦ ViewApresentação, interface com o usuário

17/11/2008

Arquitetura MVC

Page 18: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

25

Natureza da Pesquisa◦ Tecnológica

Objetivos◦ Caráter exploratório◦ Experimentações exploratórias levam a inovações tecnológicas

Meio◦ Procedimentos experimentais◦ Revisão bibliográfica

17/11/2008

Materiais e Métodos

Page 19: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

26

Desenvolvimento◦ Notebook Intel Centrino Duo◦ Core 2 Duo T7300 2GHz◦ 2GB de memória RAM

Servidor◦ Dell PowerEdge 2900◦ Máquina Virtual – Linux Ubuntu

17/11/2008

Materiais

Page 20: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

27

Ferramentas de Desenvolvimento◦ Zend Studio 5.5 Trial◦ Adobe Dreamweaver CS3 Trial◦ MySQL Administrator

Serviços do Servidor◦ Servidor Web Apache◦ PHP◦ MySQL

17/11/2008

Materiais

Page 21: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

28

Estudo da Web

Estudo da Coleta de Dados na Web

Estudo e Definição das Tecnologias

Definição da Plataforma

Desenvolvimento da Plataforma

Aplicação e Testes

17/11/2008

Métodos

Page 22: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

29

Plataforma Track4Web;

Validação da Plataforma;

17/11/2008

Resultados e Discussão

Page 23: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

30

Desenvolvimento sob arquitetura MVC

Plataforma concentra dois Mecanismos◦ Coleta◦ Análise (Consulta)

Não é necessário manter a localidade espacial

17/11/2008

Plataforma Track4Web

Page 24: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

31

Arquitetura

17/11/2008

Mecanismo de Coleta

Controller Cliente• Coleta de

Informações

Controller Servidor• Processamento dos Dados• Coleta de novas

informações

Model• Persistência dos Dados

na Base de Dados

Page 25: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

32

Existem dois eventos, denominados:◦ Evento de Log◦ Evento de Ação

Ambos eventos geram requisição no Controller do Cliente que segue a arquitetura até a persistência dos dados;

Tratamento no Controller do Servidor.

17/11/2008

Mecanismo de Coleta

Page 26: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

3317/11/2008

Mecanismo de Coleta

Page 27: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

34

Carregamento de Páginas

17/11/2008

Evento de Log

Dado Descrição

Código do Site Código do Site que informa à qual site aquele Log pertence. Todos os sites

estarão previamente cadastrados na plataforma.

Referer Página de origem, ou seja, a página que o usuário estava antes de acessar a

página que gerou o evento de log.

URL O endereço do navegador do usuário utilizado para acessar a página

geradora do evento de log.

Título O título da página que acaba de ser carregada.

Resolução de Tela Informa a resolução de tela do cliente.

Flash Informa se o usuário possui ou não o plugin do Flash instalado.

Java Informa se o usuário possui ou não o plugin Java instalado.

PDF Informa se o usuário possui ou não o plugin PDF instalado.

QuickTime Informa se o usuário possui ou não o plugin do QuickTime instalado.

RealPlayer Informa se o usuário possui ou não o plugin do RealPlayer instalado.

Windows Media

Player

Informa se o usuário possui ou não o plugin do Windows Media Player

instalado.

Page 28: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

35

Os dados coletados permitem identificar e gerar várias informações como:◦ Navegador do usuário;◦ Sistema operacional;◦ PDA;◦ País, estado e cidade de origem;◦ Identificação de computador, sessão e usuário;◦ Mecanismo de busca utilizado para chegar a página;◦ Palavra chave utilizada no mecanismo de busca.

17/11/2008

Evento de Log

Page 29: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

36

Os Identificadores de Computador, Sessão e Usuário são códigos que identificam cada Elemento;

Possuem validade determinada (exceto o de computador):◦ Sessão – 5 minutos◦ Usuário – 30 dias

Valores configuráveis.

17/11/2008

Evento de Log

Page 30: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

37

Clique em Objetos

Objetos podem ser:◦ Produtos (em e-commerce)◦ Banners (marketing)

17/11/2008

Evento de Ação (Action)

Dado Descrição

URL O endereço do navegador do usuário utilizado para acessar a página

geradora do evento de log.

Link Qual o objeto sendo clicado, com uma referência a este.

Destino Se for um link, informa qual o destino do mesmo.

X Posição do elemento clicado no eixo X.

Y Posição do elemento clicado no eixo Y.

Page 31: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

38

Utilização

17/11/2008

Mecanismo de Coleta

<!-- Script Track4Web - Site: ESL -->

<script language="javascript" type="text/javascript“src="http://tm-licesa.dcc.ufla.br/~vitor/Track4Web/Tracker.js"></script>

<script language="javascript" type="text/javascript">

var TrackId = 3;CollectData();

</script>

Page 32: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

39

Resgate e disponibilização dos dados;

Dashboard interativo;

Tratamento dos dados.

17/11/2008

Mecanismo de Análise

Page 33: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

4017/11/2008

Mecanismo de Análise

Page 34: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

41

Informações◦ Visitação Recente;◦ Horário;◦ Novos Visitantes;◦ Taxa de Rejeição;◦ Objetos mais acessados;◦ Páginas de origem e destino;◦ Mecanismos de busca e palavras chave.

17/11/2008

Mecanismo de Análise

Page 35: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

4217/11/2008

Dashboard Interativo

Page 36: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

43

Utilização nos seguintes sites:

◦ Administração de Sistemas de InformaçãoDisponível em http://www.nte.ufla.br/asi

◦ Engenharia de Software com Ênfase em Software LivreDisponível em http://www.nte.ufla.br/esl

◦ Informática em EducaçãoDisponível em http://www.nte.ufla.br/ied

◦ Tecnologia de Redes de ComputadoresDisponível em http://www.nte.ufla.br/rde

17/11/2008

Validação da Plataforma

Page 37: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

44

Mais de 15.000 registros de eventos de log;

Mais de 12.000 registros de eventos de ação;

Usuários de 17 países;

Mais de 190 cidades distintas;

Mais de 4,5 milhões de “segundos” em navegação.

17/11/2008

Validação da Plataforma

Page 38: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

45

Objetivo alcançado – Desenvolvimento e Validação da Plataforma;

Fraco acoplamento do mecanismo de coleta;

Possibilidade de integração com diversos sites e serviços como Moodle, Blogs, Gerenciadores de Conteúdo, e-commerce, etc.

17/11/2008

Conclusões

Page 39: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

46

Esforço no desenvolvimento é uma tarefa muito ampla;

Possibilidades a partir da plataforma;

Falta de Padrão.

17/11/2008

Considerações Finais

Page 40: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

47

Implementar a plataforma como forma de obter dados estruturados para aplicação de Mineração de Dados;

Ferramentas de Business Intelligence para diversas áreas das quais pode-se citar:◦ Educação à Distância;◦ Vendas Online;◦ Utilização de ferramentas internas.

17/11/2008

Trabalhos Futuros

Page 41: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

48

Validar e melhorar os web sites utilizados como plataformas de teste, mediante resultados obtidos e dificuldades encontradas;

17/11/2008

Trabalhos Futuros

Page 42: Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin² ¹vitorhugo@comp.ufla.br ²ahmed@dcc.ufla.br Vítor Hugo de Paula Carvalho¹ Ahmed Ali Abdalla Esmin².

49

Agradecimentos◦ Público;◦ Banca;◦ Orientador;◦ Coordenador de Curso.

Dúvidas◦ Perguntas e Respostas

17/11/2008

Encerramento