91
FELIPE DE SOUSA FERREIRA FELIPE HENRIQUE ZILIOTTI INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS Trabalho de Curso apresentado como exigência parcial, para obtenção de grau no curso de Ciência da Computação, da Universidade de Franca. Orientadora: Profa. Esp. Claudia Vicci Amadeu FRANCA 2014

INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

Embed Size (px)

DESCRIPTION

As redes sociais online fazem parte do cotidiano de milhões de pessoas do mundo inteiro, possibilitando interagir, expressar opinião e compartilhar conteúdos sobre os mais diversos assuntos. Geralmente, os usuários realizam postagens sobre a vida pessoal como, por exemplo: o que estão fazendo; o que vão fazer; o que aconteceu; o que desejam e entre outros, porém muitos acontecimentos são tardiamente percebidos e divulgados pelos meios de comunicação tradicionais, mas podem ser percebidos em tempo real nas redes sociais ficando suscetíveis aos mecanismos de busca. O objetivo desta monografia é utilizar o conteúdo disponível nas redes sociais para extrair informações relevantes para os mais variados seguimentos. Para realizar essa tarefa, foi proposta uma metodologia que compreende desde a coleta das posts em redes sociais até a interação automática com os usuários. A aplicação contêm filtros de buscas avançados, e é capaz de exibir estatísticas sobre os resultados. A metodologia proposta foi aplicada a dois cases, sendo utilizado para SAC 2.0 em uma empresa de telecomunicação e para monitorização da eleição presidencial 2014 no Brasil. No caso da empresa de telecomunicações, os resultados obtidos demonstram que cerca de 30% dos clientes utilizam as redes sociais para salientar o grau de insatisfação ou satisfação dos serviços prestados, e a partir da busca realizada pelo aplicativo desenvolvido, possibilitou aos funcionários da empresa executar um atendimento diferenciado aos usuários das redes sociais. No segundo caso, foi feito um levantamento prevendo as intenções de votos em diversas regiões do país, sendo possível identificar em qual delas o atual eleito tem mais apoio, e traçar um perfil dos eleitores. Isso demonstra a aplicabilidade dessa proposta como complemento a mecanismos de buscas tradicionais, muitas vezes permitindo que ações sejam realizadas mais rapidamente no caso do SAC 2.0, e através das amostragens obtidas nas redes sociais sobre as eleições, foi possível prever com exatidão o resultado das eleições presidenciais.

Citation preview

Page 1: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

FELIPE DE SOUSA FERREIRA FELIPE HENRIQUE ZILIOTTI

INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

Trabalho de Curso apresentado como exigência parcial, para obtenção de grau no curso de Ciência da Computação, da Universidade de Franca. Orientadora: Profa. Esp. Claudia Vicci Amadeu

FRANCA 2014

Page 2: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

FELIPE DE SOUSA FERREIRA FELIPE HENRIQUE ZILIOTTI

INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS Orientadora: _____________________________________________

Nome: Profa. Esp. Claudia Vicci Amadeu Instituição: Universidade de Franca

Examinador(a): _____________________________________________ Nome: Profa. Claudia Vicci Amadeu

Instituição: Universidade de Freanca Examinador(a): _____________________________________________ Nome: Profa. Claudia Vicci Amadeu

Instituição: Universidade de Freanca

Franca, ___/___/______

Page 3: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

DEDICAMOS este estudo nossos pais, pela educação e ensinamentos

que muito nos auxiliaram dando-nos base necessária para vencer esta

e todas as etapas que estão por vir; e também, aos nossos amigos,

namoradas e professores, pelo carinho, atenção e incentivo.

Page 4: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

AGRADECEMOS a Deus, fonte de amor, justiça e sabedoria; à

nossa orientadora e amiga, Profa. Claudia Vicci Amadeu, que muito

nos apoiou e auxiliou através de seu profundo conhecimento; a todos

que direta ou indiretamente contribuíram para a realização deste

trabalho.

Page 5: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

A ciência nunca resolve um problema sem criar pelo menos outros

dez.

George Bernard Shaw

Page 6: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

RESUMO

FERREIRA, Felipe de Sousa; ZILIOTTI, Felipe Henrique. Interação em redes sociais através da mineração de dados. 2014. ???? f. Trabalho de Curso (Ciência da Computação) – Universidade de Franca, Franca.

As redes sociais online fazem parte do cotidiano de milhões de pessoas do mundo inteiro, possibilitando interagir, expressar opinião e compartilhar conteúdos sobre os mais diversos assuntos. Geralmente, os usuários realizam postagens sobre a vida pessoal como, por exemplo: o que estão fazendo; o que vão fazer; o que aconteceu; o que desejam e entre outros, porém muitos acontecimentos são tardiamente percebidos e divulgados pelos meios de comunicação tradicionais, mas podem ser percebidos em tempo real nas redes sociais ficando suscetíveis aos mecanismos de busca. O objetivo desta monografia é utilizar o conteúdo disponível nas redes sociais para extrair informações relevantes para os mais variados seguimentos. Para realizar essa tarefa, foi proposta uma metodologia que compreende desde a coleta das posts em redes sociais até a interação automática com os usuários. A aplicação contêm filtros de buscas avançados, e é capaz de exibir estatísticas sobre os resultados. A metodologia proposta foi aplicada a dois cases, sendo utilizado para SAC 2.0 em uma empresa de telecomunicação e para monitorização da eleição presidencial 2014 no Brasil. No caso da empresa de telecomunicações, os resultados obtidos demonstram que cerca de 30% dos clientes utilizam as redes sociais para salientar o grau de insatisfação ou satisfação dos serviços prestados, e a partir da busca realizada pelo aplicativo desenvolvido, possibilitou aos funcionários da empresa executar um atendimento diferenciado aos usuários das redes sociais. No segundo caso, foi feito um levantamento prevendo as intenções de votos em diversas regiões do país, sendo possível identificar em qual delas o atual eleito tem mais apoio, e traçar um perfil dos eleitores. Isso demonstra a aplicabilidade dessa proposta como complemento a mecanismos de buscas tradicionais, muitas vezes permitindo que ações sejam realizadas mais rapidamente no caso do SAC 2.0, e através das amostragens obtidas nas redes sociais sobre as eleições, foi possível prever com exatidão o resultado das eleições presidenciais.

Palavras-chave: redes sociais; motores de buscas; interação; monitorização; busca social;

Page 7: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

ABSTRACT

FERREIRA, Felipe de Sousa; ZILIOTTI, Felipe Henrique. Interação em redes sociais através da mineração de dados. 2014. xxx f. Trabalho de Curso (Ciência da Computação) – Universidade de Franca, Franca.

Online social networks are part of everyday life for millions of people worldwide, making it possible to interact, express opinions and share content on various subjects. Generally, users do posts about the personal life such as: what they are doing; what they will do; what happened ; you want and among others, but many events are later perceived and reported by the traditional media, but can be seen in real time on social networks susceptible to getting search engines. The purpose of this monograph is to use the available content on social networks to extract information relevant to the various segments. To accomplish this task, a methodology was proposed comprising from collection of posts in social networks to automatically interact with users. The application contains advanced search filters, and is able to display statistics about the results. The proposed methodology was applied to two cases, being used for CS 2.0 in a telecommunications company and monitoring the presidential election 2014 in Brazil. In the case of the telecommunications company, the results show that about 30 % of customers use social networks to emphasize the degree of satisfaction or dissatisfaction of services, and from the search performed by the application developed, allowed their officers to run a differentiated services to users of social networks. In the second case, a survey was done predicting the intentions of votes in several regions of the country, it is possible to identify which of them elected the current has more support, and draw a profile of voters. This demonstrates the applicability of this proposal as a complement to traditional search engines, often allowing actions to be performed faster in case of SAC 2.0, and samples were obtained through the social networks on the elections, it was possible to accurately predict the outcome of elections presidential.

Key-words: social networks; search engines; interaction; monitoring; social search;

Page 8: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

LISTA DE ABREVIATURAS

API Application Programming Interface (Interface de Programação de Aplicativos)

ARPANET Advanced Research Projects Agency Network (Agência de Pesquisas em Projetos Avançados)

CERN European Organization for Nuclear Research (Organização Europeia para Pesquisa Nuclear)

CGI Common Gateway Interface (Interface de Entrada Comum) CRM Customer Relationship Management Social (Gestão de Relacionamento

com o Cliente) DNS Domain Name System (Sistema de Nomes de Domínio) FBML Facebook Marckup Language (Linguagem de Marcação do Facebook) FQL Facebook Query Language (Linguagem de Consulta do Facebook) GNU General Public Licence (Licença Pública Geral) HTML Hyper Text Markup Language (Linguagem de Marcação de Hipertexto) HTTP Hyper Text Transfer Protocol (Protocolo de Transferência de

Hipertexto) HTTPS Hyper Text Transfer Protocol Secure (Protocolo de Transferência de

Hipertexto Seguro) ID Identity (Identidade) IDE Integrated Development Environment (Ambiente Integrado de

Desenvolvimento) iOS Iphone Operating System (Sistema Operacional da Aple) JSON Javascript Object Notation (Notação de Objetos Javascript) JUDE Java and UML Developers Environment (Ambiente para

Desenvolvedores UML e JAVA) JVM Java Virtual Machine (Máquina Virtual Java) KDD Knowledge Discovery in Databases (Descoberta de Conhecimento nas

Bases de Dados) OAuth Open Authorization (Autorização Aberta). OGP Open Graph Protocol (Protocolo Gráfico Aberto) ONG Non-Governmental Organization (Organização Não Gorvenamental) PHP PHP: Hypertext Preprocessor (Linguagem Interpretada Livre) REST Representational State Transfer (Transferência de Estado

Representativo) RSS Rich Site Summary (Rico Sumário Local) ou Really Simple Syndication

(Realmente Simples Sindicação) ou Resource Description Framework (Recurso de Descrição do Quadro)

SAML Security Assertion Markup Language (Linguagem de Marcação de Afirmação de Segurança)

SDK Software Development Kit (Kit de Desenvolvimento de Software) SGBD Database Management System (Sistema de Gerenciamento de Banco de

Dados)

Page 9: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

9

SQL Structured Query Language (Linguagem de Consulta Estruturada) TCP/IP Transmission Control Protocol / Internet Protocol (Protocolo de

Controle de Transmissão / Protocolo de Internet) UML Unified Modeling Language (Linguagem Unificada de Modelagem) URI Uniform Resource Indentifier (Identificador de Endereços na Internet) URL Uniform Resource Locator (Localizador Padrão de Recursos) W3C World Wide Web Consortium (Consórcio Teia Mundial (WWW)) WEB (Teia) WWW World Wide Web (Teia Mundial) XML Extensible Markup Language (Linguagem Extensível de Marcação

Genérica)

Page 10: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

LISTA DE FIGURAS

Figura 1 – Evolução da Web de 1.0 a 3.0. 00

Figura 2 – Esquema do funcionamento de um motor de busca. 00

Figura 3 – Propagação da informação nas redes sociais. 00

Figura 4 – Gráfico informativo dos acessos aos sites mais visitados na

Web no período de 2009/2010. 00

Figura 5 – Representação do processo de KDD. 00

Figura 6 – Fluxo do servidor Web utilizando o protocolo OAuth. 00

Figura 7 – Compilação de um programa desenvolvido em Java. 00

Figura 8 – Logotipo do Java. 00

Figura 9 – Logotipo da biblioteca Twitter4J. 00

Figura 10 – Logotipo da biblioteca Facebook4J. 00

Figura 11 – Logotipo do PHP. 00

Figura 12 – Logotipo do MySQL. 00

Figura 13 – Logotipo do NetBeans. 00

Figura 14 – Logotipo do Astah. 00

Figura 15 – Diagrama de casos de uso. 00

Figura 16 – Diagrama de classes. 00

Figura 17 – Diagrama de sequência: Cadastrar Usuário. 00

Figura 18 – Diagrama de sequência: Realizar Login. 00

Figura 19 – Diagrama de sequência: Cadastrar Mensagem. 00

Figura 20 – Diagrama de sequência: Realizar Busca. 00

Figura 21 – Diagrama de sequência: Interação Automática. 00

Figura 22 – 00

Figura 23 – 00

Figura 24 – 00

Page 11: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

LISTA DE QUADROS

Quadro 1 – Top 10 sites de redes sociais do Brasil e do mundo. 00

Quadro 2 – Estatisticas das redes sociais no Brasil. 00

Quadro 3 – Exemplo de consulta FQL simples. 00

Quadro 4 – Exemplo de consulta multipla FQL. 00

Quadro 5 – Requisitos funcionais. 00

Quadro 6 – Requisitos não funcionais. 00

Page 12: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

LISTA DE TABELAS

Tabela 1 – Lista de casos de uso do projeto. 00

Tabela 2 – Tabela de referências cruzadas. 00

Page 13: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

SUMÁRIO

1 MOTORES DE BUSCA E REDES SOCIAIS ................................................................... 17

1.1 CONSIDERAÇÕES INICIAIS .............................................................................. 17

1.2 HISTÓRIA E EVOLUÇÃO DOS MOTORES DE BUSCA ................................... 17

1.2.1 Como funcionam os motores de busca ................................................................... 22

1.2.2 Aplicações de busca social ..................................................................................... 23

1.2.2.1 Aplicações nacionais .............................................................................................. 24

1.2.2.2 Aplicações estrangeiras .......................................................................................... 26

1.3 REDES SOCIAIS .................................................................................................. 26

1.3.1 Vertentes das Redes Sociais ................................................................................... 29

1.3.2 Principais Redes Sociais ........................................................................................ 30

1.3.3 Cenário das Redes Sociais no Brasil ...................................................................... 33

1.3.4 Redes sociais: Facebook e Twitter ......................................................................... 34

1.3.5 Mercado nas redes sociais ...................................................................................... 36

1.3.6 Exemplo do uso das redes sociais nas empresas ..................................................... 38

1.4 CONSIDERAÇÕES FINAIS ................................................................................. 39

2 MINERAÇÃO DE DADOS ................................................................................................. 41

2.1 CONSIDERAÇÕES INICIAIS .............................................................................. 41

2.2 INTRODUÇÃO À MINERAÇÃO DE DADOS .................................................... 41

2.2.1 Descoberta de conhecimento (KDD) ...................................................................... 42

2.2.2 Dados qualitativos vs Dados quantitativos .............................................................. 43

2.2.3 Pré-processamento de dados .................................................................................. 43

2.2.4 Métodos de aprendizado ........................................................................................ 44

2.2.5 Técnicas da mineração de dados ............................................................................ 45

2.2.6 Algoritmos ............................................................................................................. 46

2.2.6.1 Algoritmos de classificação .................................................................................... 46

2.2.6.2 Algoritmos de Agrupamento .................................................................................. 48

2.2.6.3 Algoritmos de associações ...................................................................................... 48

2.2.7 Mineração de estruturas complexas ........................................................................ 49

2.3 MINERAÇÃO DE DADOS DA WEB SOCIAL .................................................... 51

Page 14: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

14

2.3.1 OAuth .................................................................................................................... 51

2.3.2 Coleta e manipulação dos dados do Twitter ............................................................ 53

2.3.3 Coleta e manipulação dos dados do Facebook ........................................................ 56

2.4 CONSIDERAÇÕES FINAIS ................................................................................. 59

3 DESENVOLVIMENTO ...................................................................................................... 60

3.1 CONSIDERAÇÕES INICIAIS .............................................................................. 60

3.2 METODOLOGIA .................................................................................................. 60

3.2.1 Java ....................................................................................................................... 60

3.2.2 Twitter4J ............................................................................................................... 62

3.2.3 Facebook4J ............................................................................................................ 63

3.2.4 PHP ....................................................................................................................... 64

3.2.5 MySQL.................................................................................................................. 66

3.2.6 NetBeans ............................................................................................................... 67

3.2.7 Astah ..................................................................................................................... 68

3.3 REQUISITOS FUNCIONAIS ............................................................................... 69

3.4 REQUISITOS NÃO FUNCIONAIS ...................................................................... 69

3.5 REGRAS DE NEGÓCIO ....................................................................................... 70

3.6 LISTA DE CASOS DE USO ................................................................................. 71

3.7 CASO DE USO EXPANDIDO .............................................................................. 71

3.8 DIAGRAMA DE CASOS DE USO ....................................................................... 77

3.9 TABELA DE REFERÊNCIAS CRUZADAS ........................................................ 77

3.10 DIAGRAMA DE CLASSES ................................................................................. 78

3.11 DIAGRAMA DE SEQUÊNCIA ............................................................................ 79

3.12 DIAGRAMA DE ESTADOS .................................... Erro! Indicador não definido.

3.13 DIAGRAMA DE ATIVIDADES ........................................................................... 85

3.14 CONSIDERAÇÕES FINAIS ................................................................................. 85

CONCLUSÃO ...................................................................................................................................... 86

REFERÊNCIAS ................................................................................................................................... 87

ANEXOS ............................................................................................................................................... 91

Page 15: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

15

INTRODUÇÃO

O sistema capitalista exige o crescimento das marcas e identificação de

consumidores em potencial. Com a mobilidade e o acesso à internet nos dias atuais, nota-se

um grande uso das redes sociais. Geralmente, as informações transcorrem mais rapidamente

via internet, do que em qualquer outro meio de comunicação como televisão, rádio e outros.

Segundo o Jornal Folha de São Paulo, em 2011, mais de 38 milhões de brasileiros se

conectaram nas redes sociais.

O processo de mineração de dados, responsável por explorar grandes

quantidades de dados, juntamente aplicado às redes sociais, pode ser muito útil para as mais

diversas áreas, desde negócios até a identificação do comportamento humano.

As redes sociais proporcionam uma comunicação instantânea, a qual esta sendo

alvo de grandes estudos e investimentos em monitorização.

Propõe-se o desenvolvimento de uma aplicação que realize análise de textos

pré-definidos, que realize a interação através de frases (determinadas previamente) e ambos

estabelecidos pelo usuário do sistema, de forma automática com o post.

A análise de texto será realizada nas redes sociais, e poderá ser utilizada pelos

mais variados setores, a fim de identificar palavras de interesse, termos ou assuntos

relacionados a uma determinada atividade. Após localizar o texto, a aplicação realizará uma

interação automática com o usuário que realizou o post, podendo sugerir produtos, canais de

atendimento, publicidade, auxílio, entre outras possibilidades, por meio de frases previamente

elaboradas e programadas de forma aleatória. Tal procedimento favorece, principalmente,

pequenas empresas e organizações que não dispõem de uma equipe de especialistas em redes

sociais, que filtram e tratam manualmente os posts de seu interesse.

Visando oferecer maior interação, competitividade, publicidade, visibilidade e

divulgação, será desenvolvida uma aplicação para tratamento das informações nesse meio de

comunicação. Esta ferramenta também pode ser de grande utilidade em casos de emergência,

pedidos de socorro, protestos e desastres naturais em função de sua grande eficiência na

propagação de informações.

Page 16: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

16

A aplicação proposta é um serviço disponível gratuitamente aos usuários que

tiverem interesse de se interagir com os usuários das redes sociais.

Page 17: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

17

1 MOTORES DE BUSCA E REDES SOCIAIS

1.1 CONSIDERAÇÕES INICIAIS

Neste capitulo, serão apresentados os assuntos referentes ao embasamento

teórico, necessários para desenvolvimento deste trabalho.

Serão abordados a história, a evolução, o estado da arte e o futuro dos motores

de busca e das redes sociais online.

1.2 HISTÓRIA E EVOLUÇÃO DOS MOTORES DE BUSCA

Especialistas dizem que a pesquisa por informações em computadores surgiram

ao mesmo tempo em que este foi criado, pois, para utilizar seus recursos é necessário inserir

dados, que poderão ser processados ou simplesmente arquivados para uma futura consulta.

Wall (2014) afirma que em 1945 a revista The Atlantic Monthly publicou um

artigo de Vannaver Bush, abordando questões sobre o desenvolvimento de um mecanismo

que reunisse o conhecimento humano de forma organizada e em larga escala, para que este

pudesse ser disponibilizado de forma rápida e eficiente.

Goulart (2014) acrescenta que, nesta época, não havia recursos suficientes para

desenvolver este tipo de sistema imediatamente, porém, no decorrer dos anos e com a

evolução da computação foi possível desenvolver, em parte, a realização dessas ideias.

No final da década de 60, a criação da ARPANET (Advanced Research

Projects Agency Network) possibilitou uma nova perspectiva de comunicação entre

computadores, tornando-se a precursora da Internet e, nas décadas seguintes, a criação dos

protocolos TCP/IP (Transmission Control Protocol / Internet Protocol) e DNS (Domain

Name System) conduziram as redes de computadores a uma nova era: o armazenamento

distribuído de dados.

Page 18: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

18

Em 1989, o pesquisador britânico Tim Berners-Lee (2014 apud GOULART,

2014, p.120), membro do CERN (European Organization for Nuclear Research), em

Genebra, propôs um sistema baseado no conceito de hipertextos, com a finalidade de facilitar

o compartilhamento e a atualização de informações entre pesquisadores.

Berners-Lee definiu então os três componentes essenciais que constituem a Internet: um sistema de formatação de texto, conhecido como HTML (Hyper Text Markup Language), um padrão de comunicação entre equipamentos conhecido como HTTP (Hyper Text Transfer Protocol) e um esquema de endereçamento para localizar sites na Internet, conhecido como URL (Uniform Resource Locator). Berners-Lee também criou um navegador rudimentar. (CUSSUMANO e YOFFIE apud DONZELLI, 2010, p.3)

Tim Berners-Lee uniu então, os conceitos tecnológicos de TCP/IP e DNS com

o de hiperlinks, criando, em 1990, a World Wide Web (WWW), o primeiro navegador e

editor, e o primeiro website, utilizando o conceito de diretórios.

Com a rápida expansão da WWW, algumas questões passaram a comprometer

a utilização de diretórios, como os resultados das pesquisas qualitativamente ruins e de

manutenção cara, por serem realizadas por pessoas. Logo se percebe a necessidade de uma

busca mais rápida e automatizada. Surgem então os denominados robôs e sites puramente de

pesquisa.

A partir de então, diversos motores são desenvolvidos, novas empresas de

busca são criadas, com o mesmo intuito de prover acesso às informações relevantes, buscadas

pelo utilizador. Simultaneamente à evolução dos motores de busca, há também o crescimento

do número de blogs, de ferramentas colaborativas do tipo wiki, e as redes sociais online

passam a ganhar milhares de usuários no decorrer dos próximos anos.

Neste cenário, percebendo a grande evolução da Internet, em uma conferência

de brainstorming entre a O’Reilly Media, uma editora de livros e websites americana na área

de tecnologia da informação, e a MediaLive International, uma renomada empresa de

marketing digital, surge o termo Web 2.0. Entre diversos tipos de pontos de vista, tem como

principal fundamento e definição, o usuário como principal ator, devido à criação e

compartilhamento de conteúdo gerado pelos mesmos, em blogs, wikis e também nas redes

sociais.

De acordo com Taurion (2014), o Google é o sinônimo de buscas na Web.

Porém, o ritmo em que a Internet apresenta inúmeras novidades está se acelerando, na qual

milhões de informações são geradas a cada minuto, através dos blogs, wikis e redes sociais

Page 19: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

19

online, assim com em outras plataformas de publicação. Mesmo possuindo os mais eficientes

motores de busca, o Google não consegue captar as informações na velocidade em que

surgem.

Desta forma, tais necessidades geraram inovação, e algumas startups se

lançaram neste mercado com motores de busca voltados à coleta de informações praticamente

em tempo real, visando buscar informações recém-postadas na WWW por meio das redes

sociais, ao invés de buscá-las em sites Web, onde muitas vezes as informações foram geradas

muitos anos atrás.

Taurion (2014) justifica que, quando acontece algo expressivo, como um

acidente aéreo ou uma catástrofe, uma enorme quantidade de mensagens são postadas nas

redes sociais. Com isto, surge então, a necessidade de uma nova forma de buscar informações,

que seja capaz de obter resultados relevantes através das redes sociais, denominada de busca

social.

Em uma apresentação realizada no Social Media Brasil 2009, Zaiantchick

(2014) comparou a relação entre a busca tradicional (motores de busca1) e as buscas em redes

sociais (busca social2). Segundo ele, diferentemente da busca tradicional, a busca social

combina tecnologias de sistemas de busca, juntamente com o comportamento individual dos

usuários. E acrescenta que, quanto mais interações acontecerem no mundo, mais difícil será

encontrar informação considerável pela busca tradicional.

Percebendo esta evolução da Internet, os grandes sites de busca passaram a

incluir em seus resultados informações significativas obtidas nas redes sociais.

Tal evolução permitiu que os próprios desenvolvedores das redes sociais

criassem mecanismos de busca para seus usuários. Todos estes recursos de buscas estão

disponíveis para desenvolvedores de outras aplicações e softwares, através das APIs

(Application Programming Interface), que foram programadas e disponibilizadas por meio de

cada rede social.

A API de rede social permite o acesso a diversos dados pessoais de seus

usuários, como idioma, localização, foto do perfil e outros mais, além de permitir a pesquisa

por palavras chaves postada por qualquer usuário, em qualquer lugar do mundo.

Tais recursos fizeram com que os órgãos governamentais e de proteção aos

direitos humanos começassem a se preocupar com a privacidade destes usuários, propondo

algumas regulamentações para os serviços de busca. “Como os sites de rede social incentivam

1 Search Engines

2 Social Search

Page 20: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

20

os usuários a colocarem dados pessoais e íntimos, pessoas mal intencionadas podem usar tais

dados para violar a segurança dos usuários [...], alguns sites de rede social adotaram níveis de

privacidade.” (XAVIER; CARVALHO, 2014, p.2).

Foster (2014) define estes motores de busca como intermediadores de conteúdo

e os principais são as maiores empresas norte-americanas: Google, Facebook, Apple, Amazon

e Yahoo. Neste estudo ele conclui que os intermediadores podem desempenhar um papel

muito positivo, no sentido de facilitar o acesso amplo e aberto ao conteúdo em geral, mas as

decisões tomadas por eles podem, igualmente, restringir ou controlar o acesso às informações

relevantes.

Os novos e poderosos intermediários […] podem desempenhar um papel muito positivo no sentido de facilitar o acesso amplo e aberto ao conteúdo noticioso em geral […]. Conclui que as decisões que essas plataformas tomam, podem restringir ou controlar o acesso às notícias. (FOSTER, 2014, p.5).

De acordo com um estudo de Foster (2014), 30% dos usuários de notícias

online utilizam motores de busca como uma das principais formas de acessar notícias, 22%

utilizam os agregadores de notícias e 20% usam as redes sociais.

Desta forma, estar atento ao que se diz na Internet, pode ser estratégico e

financeiramente interessante para diversos tipos de organizações e seguimentos de atuação, o

que depende de uma busca mais inteligente por parte dos buscadores.

Conforme a FIG.1, Hayes (2014) apresenta a evolução da Internet e as suas

principais características em cada fase. Em 1995 a tradicional WWW foi denominada como

Web 1.0, e permitia publicações de texto, hiperlinks e gráficos. A partir do ano 2000, com o

surgimento dos blogs, wikis e redes sociais, passou a ser chamada de Web 2.0, conhecida

como a era do compartilhamento. Por fim, ilustra o futuro com a descrição da Web 3.0, que

deverá permitir a busca semântica de informações, interoperação de perfis, tudo em tempo

real e de forma colaborativa.

Page 21: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

21

Figura 1 – Evolução da Web de 1.0 a 3.0. Fonte: HAYES, 2014, p. 1.

Segundo Tim Berners-Lee (2014, apud GOULART, 2014), a limitação por

parte das páginas HTML traz um grande problema devido à inexistência de marcações

semânticas nas atuais páginas, fazendo com que as mesmas sejam entendidas apenas pelos

humanos, não fazendo sentido para os programas de computador, que ainda estão muito

distantes de imitar o funcionamento da mente humana. Uma tecnologia ainda em estudo e

desenvolvimento, chamada de Web Semântica, é uma tentativa de solução para o problema

apresentado anteriormente. O autor complementa dizendo que em vez de pensar na

informação para os humanos, a ideia é também pensar na máquina, fazendo com que ela seja

capaz de entender a informação e o contexto que as palavras estão aplicadas e relacionadas.

A W3C (World Wide Web Consortium) define a Web Semântica como uma

evolução da clássica e conhecida Web dos documentos. E trabalha, ainda, no

desenvolvimento de tecnologias que darão suporte à Web dos dados, viabilizando pesquisas,

assim como em um banco de dados. O objetivo final da Web de dados é possibilitar com que

computadores façam coisas mais úteis, e com que o desenvolvimento de sistemas possa

oferecer suporte às interações na rede.

Portanto, se os computadores conseguirem interpretar o significado do

conteúdo, eles serão capazes também de entender a informação, e desta forma será possível

obter uma grande quantidade de resultados realmente relevantes.

Page 22: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

22

1.2.1 Como funcionam os motores de busca

Goulart (2008) afirma que os sites de busca são a evolução dos sites de

diretórios para um estágio em que o usuário tem acesso simples e rápido à informação, através

de uma busca eficiente, tarefa esta, que exige um processo automatizado e complexo de busca

através dos robôs, denominados também de bots, crawlers ou spiders.

Bots, crawlers ou spiders são programas que automatizam o processo de navegação e surgiram da dificuldade em avaliar manualmente uma grande quantidade de sites e taxonomias. Os robôs executam uma etapa importante no funcionamento dos sites de busca atuais, a busca de informações. Utilizando um processo automático de navegação na internet, os robôs percorrem os mesmos passos que uma pessoa manualmente faria na construção de um diretório em larga escala. (GOULART, 2014, p. 121).

Norvig (2014, p. 1) descreve que um motor de busca Web precisa,

obrigatoriamente, ser capaz de proporcionar quatro funcionalidades, conforme a seguir:

1. Navegar de forma automatizada na Web (crawling). 2. Indexar páginas para criar um índice de cada palavra e local onde ela

ocorre. 3. Classificar as páginas, de forma que, as melhores apareçam primeiro. 4. Apresentar os resultados de forma fácil ao entendimento do usuário.

Os robôs dos motores de busca têm como função principal visitar diversas

páginas de websites e os links que estão contidos nesta página. Após vasculhar os conteúdos,

estes robôs criam uma lista de palavras chaves juntamente com uma associação de um ou

mais websites. Em seguida, todo o conteúdo é comprimido, armazenado e indexado, se

tornando uma grande base de dados. Alguns sites utilizam algoritmos de rankeamento de

páginas, assim como o PageRank3, desenvolvido pelo Google, que é capaz de examinar e

calcular através da estrutura de hiperligações contida na WWW, quais as páginas mais

relevantes sobre a palavra chave pesquisada. Através da FIG. 2, (CHAFFEY apud

ASCENÇÃO, 2014, p.1), ilustra-se o funcionamento dos motores de busca, conforme descrito

anteriormente.

3 PageRank: algoritmo de classificação das páginas.

Page 23: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

23

Figura 2 – Esquema do funcionamento de um motor de busca. Fonte: CHAFFEY apud ASCENÇÃO, 2014, p.1.

1.2.2 Aplicações de busca social

O desenvolvimento de aplicações de busca social tem aumentado

significativamente nos últimos anos. Com a popularização das redes sociais online e o

aumento da inclusão digital, diversos órgãos e organizações, tanto do setor público, privado e

estatal, têm investido neste tipo aplicação. Tal fato tem motivado também, diversos estudos na

área da computação, conforme descrito a seguir.

Redes sociais online são ambientes perfeitos para o estudo de vários temas da computação, incluindo sistemas distribuídos, padrões de tráfego na Internet, mineração de dados, sistemas multimídia e interação humano-computador. Além disso, por permitir que usuários criem conteúdo, redes sociais vêm se tornando um tema chave em pesquisas relacionadas à organização e tratamento de grandes quantidades de dados, além de constituírem um ambiente ideal para extração de conhecimento e aplicação de técnicas de mineração de dados. (BEVENUTO, 2012 et al., p.4).

Através da API desenvolvida por cada rede social online, é possível realizar

consultas em toda a base dados dessas redes, logo, percebendo as grandes possibilidades de

Page 24: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

24

tratamento da informação, começaram o desenvolvimento de aplicações sob diversos pontos

de interesses. A seguir descreveremos alguns exemplos dessas aplicações.

Empresas transmissoras de televisão produziram aplicações para interagir com

os seus telespectadores através das redes sociais online, permitindo votações, perguntas,

expressão de opinião, criando uma nova experiência de comunicação em tempo real com os

telespectadores.

Setores do governo e mídias especializadas em política criaram aplicações para

medir e analisar dados postados nas redes sociais online, durante o período de eleições de

2010, no Brasil, a fim de prever resultados antes mesmo da analise de todas as urnas

eletrônicas, assim como na Alemanha, onde os sentimentos expressos nas redes sociais online

refletiram-se fielmente aos sentimentos percebidos nas ruas.

Na área da saúde, há diversos estudos para analisar e identificar através das

redes sociais online, regiões com possíveis focos de epidemias e doenças, como por exemplo,

a doença da dengue.

Órgãos de monitoramento e prevenção de catástrofes, também aderiram ao

poder das redes sociais, como forma de auxiliar a detecção de desastres. Segundo seus estudos

(SAKAKI apud BEVENUTO, 2012 et al.), já é possível detectar terremotos através das redes

sociais, antes mesmo dos alertas das agencias sismológicas existentes pelo mundo.

As empresas privadas perceberam o poder das informações disponíveis nas

redes sociais e também aderiram a esta nova forma de acesso a informação. O interesse em

aplicações de monitoramento de redes sociais online teve um aumento exponencial, e nos dias

atuais, o maior foco de desenvolvimento é voltado para área de marketing digital e social

media. Este artefato tem permitido que empresas destaquem-se no mercado, pois, através da

analise das informações obtidas, ações estratégicas podem ser tomadas rapidamente,

acompanhando assim, todo o dinamismo das redes sociais online.

1.2.2.1 Aplicações nacionais

A seguir, apresentam-se cinco aplicações que utilizam as técnicas de busca

social.

A plataforma PostX, foi produzida pelo grupo Miti Inteligência, com sede em

São Paulo, fundada no ano 2000. O grupo Miti Inteligência possui foco em monitoramento de

Page 25: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

25

notícias online, oferecendo informações estratégicas de mercado e da concorrência, que visam

auxiliar o processo de planejamento de ações e gerenciamento de crises. Por meio de estudos

e análises individualizadas adequadas as necessidades específicas de cada cliente, atuam em

pesquisas e avaliações de forma consistente e objetiva, sempre visando expansão,

fortalecimento e rentabilidade.

Livebuzz é uma aplicação desenvolvida pelo grupo Dinamize, uma empresa

com foco em comunicação digital. Atualmente suas aplicações funcionam somente via

Internet, através de browsers, utilizando o conceito de cloud computing. Fundada em 2001, o

objetivo do grupo Dinamize é eliminar a distância entre fornecedor e cliente, causando grande

impacto na marca e nos resultados de uma empresa. A empresa se destaca pela grande

presença nacional, com filiais espalhadas em nove cidades diferentes, nos estados do RS, SC,

PR, SP, RJ, MG, BA e DF, sendo cinco próprias e quatro franquias. Além da presença

regionalizada, o grupo Dinamize também se destaca pelo atendimento personalizado,

realizado através de uma equipe com mais de 30 gerentes de conta.

A empresa Scup, foi fundada em São Paulo, no ano de 2009, com o objetivo de

ajudar empresas a trabalharem de forma eficiente com as mídias sociais. Diferentemente de

outras aplicações, o Scup defende um monitoramento mais humano, com foco nos

profissionais que estão à frente da operação. Esta plataforma permite que os usuários ouçam

efetivamente tudo que é falado sobre marcas e empresas na Web, identifiquem o impacto de

conversas online e gerenciem essas informações. Algumas características distinguem o Scup,

tais como a eficiência na operação, significado e qualidade dos dados. A Scup possui um

grande diferencial, que é o investimento na formação de profissionais, criação de conteúdos

de qualidade, além de promover a troca de experiências em um blog voltado aos profissionais

de redes sociais online, chamado de Scup Ideas.

Sediada na cidade de Salvador, a PaperCliq é uma agência de comunicação

digital, com foco em mídias sociais, fundada em 2009. Seu objetivo é auxiliar as organizações

a se posicionarem estrategicamente no universo digital, com base na inovação e criatividade.

Partindo dessa premissa, a agência PaperCliq atua no mercado através de três eixos

complementares que, juntos, através de serviços especializados, reforçam o conceito de

comunicação e estratégia digital. São eles: ensino e treinamento, pesquisa e análise e

estratégia e tática.

O Social Media Monitor é um software desenvolvido para auxiliar e otimizar o

monitoramento de mídias sociais, gerenciando em tempo real, tudo o que está sendo dito e

compartilhado sobre uma determinada marca. O objetivo do Social Media Monitor, é se tornar

Page 26: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

26

um aliado das empresas no monitoramento das mídias sociais e buzz4, que é espalhado em alta

velocidade pelos consumidores e internautas, oferecendo ferramentas e segurança para reagir

certeira e imediatamente, contornando mal entendidos, traçando estratégias e tomando

decisões.

1.2.2.2 Aplicações estrangeiras

A Topsy é uma empresa de busca social e análise, com sede em San Francisco,

Califórnia. A Topsy é certificada pelo Twitter como parceiro, e mantém a maior base de dados

que se conhece, dos tweets. Tal fato fez com que sua avaliação de mercado, superasse a casa

dos de dólares, pois, devido a esta grande base de dados, ela é capaz de remontar tudo o que já

foi publicado no Twitter, desde 2006. Esta plataforma e capaz de pesquisar, analisar e extrair

insights de conversas e tendências nos sites sociais públicos, incluindo Twitter e Google+.

No ano de 2013, com o recurso de análise de sentimentos Topsy, através do

monitoramento das redes sociais online, conseguiu prever corretamente cinco dos seis

ganhadores do Oscar 2013. Ainda em 2013, a Apple comprou a empresa Topsy, por cerca de

US$ 200 milhões de dólares, mas não divulgou detalhes sobre os motivos da aquisição.

1.3 REDES SOCIAIS

As redes sociais são uma forma de representação dos relacionamentos afetivos

ou profissionais dos seres entre si, ou entre seus agrupamentos de interesses mútuos. São

responsáveis pelos compartilhamentos de ideias entre pessoas de interesse e objetivo em

comum. Segundo Capra (2012, p. 6) “redes sociais são redes de comunicações que envolvem

a linguagem simbólica, os limites culturais e as relações de poder”.

Os diversos padrões de formação de redes de indivíduos e grupos sociais

começaram a ser estudados a partir da década de 1940 por sociólogos e antropólogos sociais

4 Buzz: é uma técnica de marketing com foco em cadeia de consumidores.

Page 27: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

27

dos EUA, Inglaterra e Alemanha (BARNES, 1972; ROGERS e KINCAID, 1981; SCOTT,

1992 apud AGUIAR, 2014, p. 16).

No Brasil, em 1990, as redes sociais despertaram interesse acadêmico, na onda

das pesquisas sobre novas formas associativas e organizativas que emergiam dos processos de

resistência à ditadura militar, de redemocratização do país, de globalização da economia e

desenvolvimento sustentável, afirma Aguiar (2014 p. 4-6).

Essas redes sociais estão hoje presentes principalmente na Internet, devido ao

fato de possibilitar a comunicação instantânea com outros usuários, acelerando a divulgação e

a absorção de novos elementos em busca de algo em comum. Paralelamente, permitem a

expressão de ideias politicas e econômicas inovadoras, desde combate à pobreza, exclusão

social, inovação nos pensamentos, valores e atitudes destes usuários.

Recuero (2009, p. 2) afirma que as redes sociais na internet são constituídas de

representações dos atores sociais e de suas conexões, sendo estas individualizadas e

personalizadas através de um perfil nas redes sociais como: Orkut, Facebook, Twitter,

Instagram, Badoo, MySpace, LinkedIn e outros serviços, onde os usuários podem possuir

centenas ou milhares de conexões, possibilitando serem muito maiores e mais amplas que as

redes off-line, uma vez que estes vínculos não se delimitam às fronteiras geográficas e

culturais (etnias, religião, idioma, gênero etc).

Segundo Boyd (2007, apud RECUERO, 2014 p. 121), as redes sociais na

internet seriam “espaços públicos mediados”, mais detalhadamente, seriam “ambientes onde

as pessoas podem se reunir publicamente através da mediação da tecnologia”, e se tornaram

plataformas bastante populares. Com essa quantidade de interações, assuntos e interesses

diferentes, criam-se valiosos acervos de informações sobre os utilizadores e as atividades que

estes desenvolvem nessas plataformas. Conforme Beer (2008, apud LEITE et al., 2014), essas

redes podem ser avaliadas em milhões de dólares.

Segundo Cipriani (2011, p. 2), o homem que deseja se expressar e através das

redes sociais, encontra um espaço amplo para expressar suas escolhas e uma pequena barreira

para que ela se espalhe: apenas o acesso à internet. Define as redes sociais como “um

aglomerado de indivíduos se expressando livremente (ao menos até certo ponto) e se

relacionando sem limites”, e afirma que isso está trazendo grandes impactos para a sociedade

(governos, leis, religiões, empresas, culturas e valores).

Com este sucesso das redes sociais houve uma preocupação na melhora de suas

opções, estratégias comerciais e operacionais de todos os ramos. Um exemplo seriam as

Page 28: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

28

universidades que utilizam as redes sociais para valorizar a sua imagem e obter uma forte

exposição perante os antigos, novos e futuros alunos.

Essa nova técnica de interação vem se transformando em importantes

plataformas para a disseminação de informações e conteúdos, como mostra na FIG. 3 (HAN

& NIU, 201 apud LEITE et al., 2014 p. 142); o ponto preto (destacado) representa uma fonte

de informação (plataforma), e o restante seriam os nós por onde a mesma se propaga.

Figura 3 – Propagação da informação nas redes sociais. Fonte: HAN & NIU, 2012 apud LEITE et al., 2014 p.142.

Segundo o site InternetWorldStats.com (2013), quase três bilhões de pessoas já

possuem acesso à internet, sendo que mais de um bilhão delas usam o Facebook e mais de

quinhentos milhões usam Twitter. Só no Brasil, mais de setenta e oito milhões de internautas,

o equivalente a 38% da população possui algum perfil nas redes sociais.

No atual cenário das redes sociais, o Facebook é realmente um fenômeno de

popularidade, segundo o site G1 (2014), com mais de 1,19 bilhões de usuários; chegou a

superar o site do Google e outros, como a página Web mais visitada em 2010, conforme

provado a seguir na FIG 4.

Page 29: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

29

Figura 4 – Gráfico informativo dos acessos aos sites mais visitados na Web no período de 2009/2010. Fonte: comScore, 2014.

1.3.1 Vertentes das Redes Sociais

As redes sociais são dividas em três vertentes: primária, secundária e

intermediária, conforme definições a seguir.

Redes Sociais Primárias ou Informais: são redes de relações entre

indivíduos, em decorrência de conexões pré-existentes, relações

semiformalizadas que dão origem aos grupos Warren (2013, p.168).

São formadas por todas as relações que as pessoas estabelecem durante

a vida cotidiana, familiares, vizinhos, amigos, colegas de trabalho,

organizações etc. As redes de relacionamento começam na infância e

contribuem para a formação das identidades. Exemplos: Orkut,

Facebook, Hi5, Sonico, etc.

Redes Sociais Secundárias ou Globais: são redes formadas por

profissionais e funcionários de instituições públicas ou privadas, por

organizações não governamentais, organizações sociais, entre outras, e

fornecem atenção, orientação e informação. Exemplos: Dell IdeaStarm,

My Starbucks, GenteCia, TechNet.

Page 30: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

30

Redes Sociais Intermediárias ou Redes Associativas: formadas por

pessoas que receberam capacitação especializada, tendo como função a

prevenção e apoio, podendo vir do setor da saúde, igreja, comunidade

ou pelo coletivo. Seu foco é o poder de mobilização e articulação para

que seus objetivos sejam atingidos. Exemplos: Wikipédia, Twitter,

ReclameAqui.

1.3.2 Principais Redes Sociais

O Quadro 1, apresenta um ranking das dez principais redes acessadas no

mundo e no Brasil, conforme Compete (2012 apud HENDGETS 2014, p. 2) demonstra e

comprova com dados da empresa infográfica.

10 SITES DE REDES SOCIAIS MAIS

ACESSADOS NO MUNDO

10 SITES DE REDES SOCIAIS MAIS

ACESSADOS NO BRASIL 01º - Facebook.com 02º - Youtube.com 03º - Twitter.com 04º - LiveJournal.com 05º - MySpace.com 06º - LinkedIn.com 07º - Badoo.com 08º - Orkut.com 09º - Tagged.com 10º - Ning.com

01º - Facebook.com 02º - Youtube.com 03º - Orkut.com 04º - Twitter.com 05º - LinkedIn.com 06º - Flickr.com 07º - Badoo.com 08º - Dihitt.com.br 09º - Ning.com 10º - Foursquare.com

Quadro 1 – Top 10 sites de redes sociais do Brasil e do mundo. Fonte: COMPETE, 2012 apud HENDGETS, 2014, p. 2.

A seguir, é apresentado um histórico das primeiras redes sociais:

ClassMates.com (1995), criada com o propósito de realizar um

reencontro entre amigos de faculdade ou escola. Foi à primeira rede

social na internet que levou para online os laços sociais que haviam

sido criados em ambiente off-line. Uso intenso no Canadá e nos Estados

Unidos, tratando-se de um modelo de serviço pago.

Page 31: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

31

AOL Instant Messenger (1997): um dos primeiros provedores de

internet, a America Online, também foi uma das pioneiras na categoria

de bate papo. Mensagens instantâneas começaram a ser enviadas pela

internet mesmo com acesso limitado pelos assinantes.

Sixdegress (1997): primeira rede social que permitiu a criação de um

perfil virtual, bem como a publicação e listagem de contatos,

permitindo a visualização de perfis de terceiros (OLIVEIRA apud

NICKSON; CRISTOPHER, 2009, p. 5). O nome dado a esta rede

referencia os seis graus de amizade, uma teoria originada através de um

estudo cientifico, que comprova a necessidade de no máximo seis laços

de amizade para que duas pessoas quaisquer estejam ligadas.

Friendster (2002): conquistou milhares de internautas. Pesquisas feitas

na época revelaram que um em cada cento e vinte e seis usuários

utilizava esta rede social. Com o conceito de círculo de amizade,

encorajou laços de relacionamentos entre pessoas de interesses em

comum. Também a permitia a criação e a interação através de um

perfil.

MySpace (2003): concebida como um “clone” da Friendster. Uma

curiosidade em relação a essa rede é que sua primeira versão foi

codificada em apenas dez dias. Após um tempo, foi aperfeiçoada com

espaço para músicas, fotos e blog para cada usuário. Tornou-se uma das

principais redes sociais mais populares no mundo.

LinkedIn: criada em 2003, conhecida como rede social para

empresários, com assuntos relacionados ao profissionalismo, possibilita

que empresários ou funcionários se comuniquem com outros

profissionais; o termo de contatos passou a ser chamado com conexão.

Em 2004 surge a WEB 2.0, que por sua vez indicava a chegada da segunda

geração de comunidades, uma espécie de evolução da internet, com uma nova forma de

utilizá-la e encará-la por seus usuários e desenvolvedores. Muitos afirmam que essa evolução

seria apenas uma estratégia de marketing, mas foi a maior mudança que a internet sofreu.

Conforme visto no site Tecmundo (2009, p. 1), com a WEB 2.0 foi possível obter uma

participação efetiva dos usuários nas redes sociais e páginas repletas de vídeos, wikis e blogs.

Com essa evolução surgiram um novo conceito para as redes sociais, como:

Page 32: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

32

Orkut (2004): criado por um engenheiro turco e funcionário do Google,

chamado Orkut Büyükkokten, com a proposta de possibilitar aos

usuários a criação de novas amizades, inicialmente com o público

americano. Após lançamento mundial em 2006, os países que mais

utilizaram esta rede foram: Brasil e Índia. O Orkut se tornou uma febre

e, inicialmente para fazer parte da rede, era necessário que um dos

participantes lhe enviasse um convite, o que fez com que se difundisse.

Facebook (2004). No início chamado de The Facebook, criado pelos

ex-estudantes da Universidade de Harvard: Mark Zuckerber, Dustin

Moskovitz, Eduardo Saverin e Cris Haughes. Inicialmente, seu uso era

restritivo aos estudantes da universidade e, com o passar do tempo, para

outros campos estudantis, mas somente em 2006, qualquer usuário com

mais de 13 anos poderia criar seu perfil na rede. Atualmente, lidera o

ranking de redes sociais e, em julho de 2012, aparece com 54,99% da

preferência nacional em visitas. Utiliza diversas estratégias, com o claro

objetivo de manter seus usuários conectados o maior tempo possível à

sua plataforma. Também em 2012, o Facebook compra a empresa

Opera, desenvolvendo assim o seu próprio navegador, que contava com

jogos, recursos e interface voltada à rede social, proporcionando aos

usuários uma grande variedade de interação.

Twitter (2006), considerada a mais inovadora no que se refere à

velocidade da informação. O termo Twitter foi inspirado no som de um

pássaro que emite sons para comunicar aos demais pássaros sua atual

localização e atividade. Mostrou-se um pouco diferente das demais

redes sociais, pois permite apenas 140 caracteres para publicação de

algum conteúdo. Em 2008, o Orkut liderava a preferência de uso, mas

em 2009 o Twitter conquistou não só este espaço, como também se

tornou uma das principais redes sociais do mundo. Altos ganhos com

publicidade marcaram esta plataforma. Estudos em 2012 apontavam

que o Twitter poderia gerar até U$$ 1 bilhão de vendas até 2014,

representando um crescimento duas vezes maior do que previsto. Dados

de 2013 informam que o Twitter possuía 230 milhões de usuários.

Page 33: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

33

Pinterest (2010), plataforma desenvolvida por Paul Sciarra, Evan Sharp

e Bem Silbermann em um pequeno apartamento, com o foco de ser

voltada para compartilhamento de fotos, ganhou fama por permitir aos

usuários uma personalização. Caracterizada por um layout simples, mas

com uma opção fácil e eficiente de compartilhar imagens na internet.

Em 2012 veio ao Brasil, porém não se destacou.

Instagram (2010), uma rede social que permite aos usuários capturar

imagens, aplicar filtros e publicar gratuitamente através do seu

aplicativo, tornando um sucesso . Lançado oficialmente em outubro de

2013 alcançou seu sucesso mundial no final deste mesmo ano. Criado

com a participação do brasileiro Mike Krieger, liberado para sistemas

Android e IOS, já está chegando perto de quase 10 milhões de usuários,

com uma equipe de apenas seis funcionários.

Google+ (Google Plus, 2011). O Google lançou esse novo projeto após

algumas tentativas frustradas de lançar uma rede social que fizesse

sucesso, no intuito de permitir aos utilizadores uma ferramenta seletiva,

com a qual possam dividir em círculos cada grupo de amizade. Uma de

suas aplicações é a Hangout, que permite realizar uma videoconferência

em tempo real com vários usuários. Para difundir sua rede social trouxe

diversos artistas para representar sua plataforma. Com um pico de 90

milhões de cadastros foi um verdadeiro sucesso, porém, isso não se

converte em usuários ativos da rede social, dados divulgados pela

Experian Hitwise em agosto de 2012, apontam que o Google Plus

possui cerca de 1,17% da participação do mercado, atrás do Youtube

com 17,92% e do Orkut com 12,42%.

1.3.3 Cenário das Redes Sociais no Brasil

Segundo dados de 2012 da comScore (2014), uma empresa que presta serviços

de análise de acessos à internet, o Brasil é um dos maiores países que utilizam as redes

sociais. Vejamos algumas das informações desta pesquisa:

Page 34: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

34

90,8% dos internautas brasileiros acessam as redes sociais. Em média, 4,9 horas mensais são gastas nestes sites. 60% dos internaturas se inscreveram em alguma rede social nos últimos 3 meses, sendo as redes que mais possuem inscritos são : Facebook (27,5%), Google+ (27%), Twitter (11,8%) e Youtube (9,4%). Sites com mais usuários: Facebook (94%), Orkut (75%), Twitter (73%), Youtube (69%) e Google+ (56%). Sites com maior frequencia de uso: Facebook (88,9%), Twitter (41%), MSN (34,3%), Orkut (31,7%) e Youtube (21,7%). 58,7% da quantidade de acessos das redes sociais são das mulheres. 41% pesquisam nas redes sociais antes de comprar. 2 a cada 3 dão feedback para as marcas via redes sociais. 54% seguem empresas no Twitter. 74% curtem empresas no Facebook. 68,5% usam aplicativos para acessar as redes sociais. 56% usam celulares ou smartphones para acessar o Facebook, 70% usam desktops e 60% notebooks.

Quadro 2 – Estatísticas das redes sociais no Brasil. Fonte: comScore. 2014.

1.3.4 Redes sociais: Facebook e Twitter

Facebook, como dito anteriormente, é um sistema criado pelo americano Mark

Zuckerberg enquanto aluno de Harvard, com foco aos alunos que saíam e entravam na

universidade, para realizarem vínculos de amizades e laços de trabalho. Lançado em 2004 ao

mundo, é considerado um dos sistemas com maior base de usuários.

É um espaço para discussão de ideias, compartilhamento, encontro e uso de

aplicações e jogos. Tornou-se uma ferramenta popular, de fácil de uso, não necessitando de

softwares específicos, apenas a internet e qualquer navegador. É possível interligar recursos

como RSS (Rich Site Summary), blogs, Twitter em sua rede.

Funciona através de perfis e comunidades, no qual em cada perfil é possível

criar e/ou acrescentar módulos de aplicativos (jogos, ferramentas etc). A plataforma

possibilita mais privacidade do que os outros sites de redes sociais, pois é possível controlar

quem pode visualizar a informação específica ou realizar determinadas ações, como por

exemplo, apenas os usuários que fazem parte da lista de amigos podem visualizar seu perfil se

assim o usuário o configurar.

Page 35: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

35

Possui um léxico próprio, como:

Book Tag: cria listas de livros para leitura ou até mesmo para

comentário;

Books iRead: permite compartilhar livros lidos ou que deseja ler e

adicionar tags5;

Apply: possibilita a organização de aplicativos externos;

Calendar: organizam as atividades diárias, avisos e compartilhamento

com amigos;

Chat/Messenger: comunicação em tempo real com outros usuários ou

um grupo;

Events: permite criar eventos, convidar pessoas e promover o evento;

Favorite Pages: adiciona páginas aos favoritos;

Files: permite armazenar e recuperar dados;

Flashcards: cria cartões em flash para estudar;

Like: criou o termo “curtir” na rede social, com o intuito de

compartilhar de maneira mais rápida o conteúdo com seus amigos,

com apenas um clique.

Twitter, como citado acima, foi fundado em 2006 por Jack Dorsey, Biz Stone e

Evan Willians como um projeto da empresa Odeo, sendo um serviço classificado como um

microblogging devido aos seus pequenos textos com um pensamento ou evento como em um

blog, a partir da pergunta “O que você está fazendo?”. Estruturado com seguidores e pessoas

a seguir, é uma ferramenta pouco intuitiva com apenas 140 caracteres. A página inicial de sua

conta conhecida como timeline, apresenta tweets apenas das contas que você considera

interessantes.

Em contrapartida sua popularidade está em crescimento, indicando que é

possível se comunicar muito bem.

Possui um léxico próprio como:

Tweet: uma atualização ou post com menos ou igual a 140 caracteres;

Retweet: retransmitir um tweet para outra pessoa de sua lista;

Hashtag: associação de uma palavra ou assunto antecedido pelo

símbolo cerquilha (#), as quais podem ser interligadas como um tópico,

discussão ou referência;

5 Tag: etiqueta; em informática palavra-chave.

Page 36: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

36

Tweeps: seria uma sugestão de pessoas que você possui um vinculo em

outras redes sociais, e que atualmente não possui no seu Twitter.

Twitosfera: comunidade total de tweeters;

@nome_do_usuario: assim que é feito um link com um usuário

especifico onde, será o símbolo arroba (@) seguido do nome do

utilizador do Twitter;

DM: sigla para Direct Mensage (Mensagem Direta), sendo possível

enviar uma mensagem a outro usuário de forma privada e dentre outros

léxicos.

Trending Topics ou Trends: são tópicos populares. Uma lista em tempo

real dos nomes mais postados no Twitter em todo mundo, para isso são

utilizados as listas de hastags.

1.3.5 Mercado nas redes sociais

Não só como o Facebook e Twitter, todas as redes sociais têm sido vistas como

mais um importante meio de comunicação e aproximação entre as empresas e o seu mercado

alvo.

Segundo Cipriani (2011, p. 20), “as empresas veem nas mídias sociais,

meramente uma mídia e não uma plataforma de relacionamento, diálogo, conversação com o

mercado” Com isso, as empresas não devem achar que as redes sociais são de carácter

exclusivo para marketing, mas, principalmente um meio de se comunicar e ter um feedback 6

com os consumidores ou futuros consumidores.

Segundo Sayon (2008, p. 2), o “impacto” da publicidade em redes sociais é 500

vezes maior do que em outras mídias, o que demanda cautela na hora de elaborar a campanha,

pois acima de tudo um fator influenciador são que seus membros são formadores de opinião.

O monitoramento deve atender a cinco etapas: configurações, coleta de dados,

refinamento, análise do sentimento e resultado e plano de ações. Os processos de

configurações devem definir as três diretivas de pesquisa: quem será monitorado, onde será

feito o monitoramento e o que será monitorado. A etapa de coleta de dados será realizada com

6 Feedback: termo utilizado para dar uma resposta a ação ou situação.

Page 37: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

37

ajuda de uma das ferramentas de monitoramento; no processo de refinamento devem ser

analisados os dados e verificada a efetividade das buscas e filtrados aqueles que serão

relevantes. A análise de dados é uma etapa humana, conduzida manualmente por uma equipe,

onde deverão ser avaliados os resultados e sua colocação (positiva ou negativa). E os

resultados e planos de ações seriam as estratégias que a empresa deverá tomar para se

sobressair ou melhorar sua imagem diante aos consumidores.

Os objetivos estratégicos buscados pela empresa nas redes sociais são:

Relacionamento e proximidade com os clientes, fornecedores, parceiros

e concorrência;

Percepção da marca no mercado;

Inovação e criatividade nos produtos e serviços, modelos de negocio,

processos internos e marketing.

Eficiência e efetividade das operações da empresa, cumprindo

processos com o melhor uso de recursos possíveis, reduzindo custos.

Um conceito que vem ganhando força desde 2008 é o chamado CRM Social

definida como: gestão de relacionamento com o cliente, tradução de Customer Relationship

Management Social. Cipriani (2011, p. 78) define como:

[...] uma estratégia e uso de ferramentas sociais de interação pelas empresas que, por meio de conversação, da colaboração e do estabelecimento de um relacionamento significativo com os clientes, promovem a transparência e a acessibilidade dos processos, dão mais poder de influencia e negociação na decisão de consumidores e, ao mesmo tempo, garantem a boa reputação da marca e aumentam a fidelidade do mercado para com ela.

Com isso podemos dizer que os clientes são motivados a participar da tomada

decisões e ações de marketing, tendo um relacionamento colaborativo, gerando benefícios

mútuos entre consumidores e empresas.

Não podemos deixar de falar nas métricas nas redes sociais. As formas mais

usadas para medir o desempenho nas redes sociais são as métricas quantitativas de atividades.

E quase nenhuma empresa utiliza métricas qualitativas, mais complexas, porém mais

estratégicas e reconhecidas no meio corporativo. Estes dois tipos de indicadores são definidos

como:

Métricas quantitativas são resultados financeiros diretos, como retorno

sobre o investimento receita, margem, custos das iniciativas e reduções

Page 38: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

38

de custos e também resultados diretos do uso das ferramentas de mídias

sociais: número de usuários, tráfego, número de comentários, número

de visitas, frequência de visita. São índices financeiros e de atividades.

Métricas qualitativas são resultados indiretos do relacionamento

estabelecido com clientes nas mídias sociais. São difíceis de mensurar,

pois normalmente incluem a percepção da marca e do cliente. Exemplo:

imagem da empresa, reputação da marca, satisfação do cliente ou

funcionário, custo de oportunidade. Geralmente, são medidas através de

pesquisas que perguntam aos clientes qual a sua opinião a respeito da

empresa.

Com o uso e monitoramento das redes sociais, é possível abordar alguns

assuntos propostos a seguir:

Monitoramento da marca ou mercado;

Suporte ao cliente;

Vendas ou busca de oportunidades;

Ações de marketing e divulgação;

Desenvolvimento de produtos ou inovação por meio da colaboração;

Identificação de talentos para contratação;

Comunicação e relação com o mercado e partes interessadas;

Integração interna ou suporte a equipes;

Gestão do conhecimento

1.3.6 Exemplo do uso das redes sociais nas empresas

A seguir estão destacados seis exemplos de empresas, que utilizaram as redes

sociais para seu crescimento e acompanhamento de sua marca e de seus consumidores.

Fiat, uma das pioneiras no uso das mídias sociais, a qual criou em 2005 um

blog com um personagem não humano, chamado Gino, um ursinho de pelúcia que falava as

vantagens das revisões na rede de concessionária. Mais tarde, começou a utilizar o Twitter

fortemente, no qual era possível acompanhar os novos lançamentos de modelos e versões dos

carros com fotos publicadas antes do lançamento oficial dos veículos. Uma de suas atividades

Page 39: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

39

por colaboração foi o projeto Fiat Mio, um carro-conceito desenvolvido com a participação de

qualquer pessoa por meio do seu portal.

Boehringer Ingelheim, uma indústria multinacional farmacêutica, a qual

utilizou as redes sociais para criar um canal digital de discussões sobre doenças e saúde, com

a participação dos médicos representantes da empresa para orientarem os usuários. Uma das

ferramentas é o site Pharmaton, o qual monitora como se sentem os brasileiros nos quesitos:

sono, disposição, nutrição e estresse por meio de análises das mensagens no Twitter.

A Nokia teve sua principal iniciativa que envolve a comunidade de seus

clientes e fãs com o projeto Nokia Gurus, formado por pessoas ou “gurus”, que atuam no

suporte a dúvidas de outros usuários dos aparelhos celulares da empresa. E como incentivo, os

“gurus” que mais ajudassem as pessoas iriam ganhar o último lançamento de aparelho da

Nokia. Assim a empresa pode avaliar os produtos e serviços prestados, além de segmentar os

clientes e criar processos e relatórios de acompanhamentos.

Bradesco, um dos pioneiros no serviço de atendimento ao cliente via redes

sociais. Começou a monitorar as redes sociais desde 2008, o qual a empresa decidiu abrir um

canal de atendimento chamado Alô Bradesco, que conta com 8 pessoas dedicadas em tempo

integral, 24 horas por dia para monitor e prestar suporte aos clientes.

Tecnisa, uma construtora imobiliária nacional, o qual disponibilizava a venda

de apartamentos em seu blog e mais tarde no Twitter. A empresa investia em tecnologia no

seguimento de vendas, presente na maioria das redes sociais e se organizou para que todos os

setores da empresa pudessem responder todas as dúvidas dos consumidores.

IBM, desde 2005 possui uma política que regula e orienta seus funcionários no

uso adequado desses novos canais de comunicação, com intuito de aumentar o número de

porta-voz para o mercado. Todos os funcionários tem liberdade de publicar em um blog

individual e tem responsabilidade pelo que escrevem. Em 2011, existia cerca de dezesseis mil

blogs ativos de funcionários da empresa.

1.4 CONSIDERAÇÕES FINAIS

Com base na revisão da literatura apresentada neste capitulo, conclui-se que

com o crescimento das redes sociais, gerando grande quantidade de informações, foi

necessária a aplicação dos motores de buscas, para a extração de dados.

Page 40: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

40

Atualmente, as redes sociais e os motores de buscas operam em conjunto

provendo informações em tempo real aos usuários e organizações, agilizando a busca por

informações.

Page 41: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

41

2 MINERAÇÃO DE DADOS

2.1 CONSIDERAÇÕES INICIAIS

Neste capitulo, serão apresentadas as definições e tipos de mineração de dados,

e sua aplicação para extrair informações nas redes sociais online através do uso de APIs, onde

algumas técnicas já estão implementadas.

2.2 INTRODUÇÃO À MINERAÇÃO DE DADOS

Com o surgimento dos sistemas computacionais, um dos principais objetivos

das organizações tem sido o de armazenar dados. Nas últimas décadas, isto ficou ainda mais

evidente, com a queda nos custos para a aquisição de hardware, permitindo armazenar

quantidades cada vez maiores de dados. Para atender esta demanda, novas estruturas de

armazenamento foram desenvolvidas, tais como: banco de dados, data warehouse7,

bibliotecas virtuais, Web e outras.

A seguir, Bramer exemplifica a quantidade de dados, que são gerados por

algumas aplicações existentes.

Os satélites de observação da NASA geram cerca de um terabyte de dados por dia. O projeto Genoma armazena milhares de bytes para cada uma das bilhões de bases genéticas. Instituições mantêm repositórios com milhares de transações dos seus clientes. (BRAMER, 2007 apud CAMILO; SILVA, 2009, p. 1)

Com o volume de dados armazenados crescendo diariamente, surgiram os

primeiros questionamentos, "o que fazer com os dados armazenados?", "como representar o

conteúdo desses dados?", desta forma, as técnicas tradicionais de exploração de dados não são

7 Data warehouse: armazém de dados.

Page 42: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

42

mais recomendados para tratar grandes volumes de dados. A partir destes questionamentos,

foi proposta no final da década de 80, a mineração de dados, do inglês, data mining8.

A mineração de dados é uma das tecnologias mais promissoras da atualidade, e

o principal fator deste sucesso, é o grande investimento realizado pelas companhias na coleta

dos dados. Porém, mesmo com grandes investimentos, nenhuma informação útil ou relevante

era identificada. Han (2006 apud CAMILO; SILVA, 2009), faz uma analogia a este fato,

dizendo: "rico em dados, pobre em informação", e acrescenta que o setor privado, o setor

público e o terceiro setor, como por exemplo, ONG’s, podem se beneficiar com as técnicas de

mineração de dados.

A mineração de dados combina métodos e ferramentas das seguintes áreas:

aprendizagem de máquina, estatística, banco de dados, sistemas especialistas e visualização

de dados, e um dos principais objetivos da mineração de dados são, descobrir relacionamentos

entre dados, fornecendo subsídios para que possa ser feita uma previsão de tendências futuras

baseada no passado.

Os resultados obtidos com a mineração de dados podem ser usados no

gerenciamento de informação, processamento de pedidos de informação, tomada de decisão,

controle de processo e outras aplicações.

2.2.1 Descoberta de conhecimento (KDD)

O modelo tradicional para transformação dos dados em conhecimento consiste

em um processamento manual de todas essas informações por especialistas, que irão produzir

relatórios a serem analisados. Com o grande volume de dados gerados, esse processo manual

se torna inviável.

O KDD (Knowledge Discovery in Database) é uma tentativa de solucionar o

problema causado pela chamada "era da informação". A seguir, na FIG 5, (FAYYAD apud

CAMILO; SILVA, 2009, p.4) ilustra o processo de KDD, que segundo ele, deve ser realizado

de forma iterativa, interativa e dividida em fases.

8 Data mining: mineração de dados.

Page 43: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

43

Figura 5 – Representação do processo de KDD. Fonte: FAYYAD apud CAMILO; SILVA, 2009, p.4.

2.2.2 Dados qualitativos vs Dados quantitativos

Na mineração de dados é fundamental que se conheça o tipo de dado que será

utilizado em seus trabalhos ou pesquisas, para em seguida definir o método de mineração a

ser aplicado. Existem duas classificações para os dados, são elas: qualitativos e quantitativos.

Os dados qualitativos são expressos em categorias, e basicamente são

utilizados em segmentação e classificação. Dados quantitativos são representados por valores

nominais e ordinais. Tais diferenças demonstram o quanto é importante, explorar, conhecer e

preparar os dados antes da aplicação de algoritmos.

2.2.3 Pré-processamento de dados

O processo de preparação dos dados é conhecido como pré-processamento.

Nesta etapa, devem ser realizadas quatro operações, para somente depois aplicar o algoritmo

desejado. A preparação dos dados envolve: limpeza dos dados, integração dos dados,

transformação dos dados e redução dos dados.

Page 44: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

44

Na atividade de limpeza dos dados geralmente são encontrados diversos

problemas, como por exemplo, registros incompletos, valores incorretos e inconsistência de

dados. Pretende-se nesta etapa eliminar estes problemas, para que os mesmos não influam no

resultado do algoritmo aplicado.

A fase de integração dos dados envolve técnicas para integrar os dados de

diferentes fontes e repositórios, criando um repositório único e consistente.

Em seguida, de acordo com o algoritmo a ser utilizado, é necessário realizar a

transformação dos dados, pois alguns algoritmos reconhecem apenas valores numéricos e

outros apenas valores categóricos.

Freitas (1993 apud CABRAL et al. 2005) afirma que não há uma técnica que

resolva todos os problemas de mineração de dados. Existem alguns métodos que servem para

diferentes propósitos, cada método oferece suas vantagens e suas desvantagens. A

familiaridade com as técnicas é necessária para facilitar a escolha de uma delas de acordo com

os problemas apresentados. A seguir são descritas as técnicas de mineração de dados

normalmente usadas.

Suavização: realiza a remoção dos valores errados dos dados.

Agrupamento: realiza o agrupamento de valores em faixas sumarizadas.

Generalização: converte valores específicos em valores genéricos.

Normalização: define as variáveis em uma mesma escala.

Criação de novos atributos: são gerados a partir de outros atributos já

existentes.

Por fim, realiza-se a redução dos dados, pois, geralmente o volume dados

costuma ser muito elevado. Esta técnica é aplicada para reduzir a massa de dados, sem perder

a representatividade dos dados originais, permitindo em alguns casos, ganho de performance

na aplicação dos algoritmos. As principais estratégias aplicadas na redução dos dados é a

redução da dimensionalidade e a discretização.

2.2.4 Métodos de aprendizado

Os métodos de aprendizagem voltados à mineração de dados foram divididos

em dois, e são conhecidos como supervisionado ou preditivo, e não supervisionado ou

Page 45: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

45

descritivo. Nos dias atuais, já existem técnicas que utilizam destes dois métodos

simultaneamente, e são chamados de abordagem semi-supervisionado.

Na abordagem de aprendizado supervisionado, utiliza-se um conjunto de

dados, juntamente com uma variável alvo pré-definida e os registros são categorizados em

relação a ela. Nesta abordagem são utilizadas técnicas de classificação e regressão.

O aprendizado não supervisionado, não precisa que os registros estejam pré-

categorizados. Nesta abordagem utiliza-se a similaridade entre os atributos, e são

consideradas como não supervisionadas, as técnicas de agrupamento e associação.

2.2.5 Técnicas da mineração de dados

Dentro da mineração de dados, são aplicadas diversas técnicas, e as principais,

são descritas as seguir:

Descrição, utilizada para descrever padrões e tendências reveladas

pelos dados, oferecendo uma possível interpretação dos resultados. A

tarefa de descrição geralmente é utilizada em conjunto com as técnicas

de análise exploratória de dados, tendo como objetivo comprovar a

influência de certas variáveis no resultado obtido.

Classificação realiza a identificação a qual classe um determinado

registro pertence, com o objetivo de aprender como classificar um novo

registro.

Estimação ou Regressão realiza a classificação quando os valores de

um registro são numéricos, podendo estimar o valor de uma variável,

quando analisa os valores das demais.

Predição, similar a classificação e estimação, mas visa descobrir o valor

futuro de um determinado atributo.

Agrupamento identifica e aproxima registros similares. Um

agrupamento é uma coleção de registros similares entre si, porém

diferentes dos outros registros, de outros agrupamentos.

Associação realiza a identificação de quais atributos estão relacionados,

utilizando a condição: SE atributo X ENTÃO atributo Y.

Page 46: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

46

2.2.6 Algoritmos

Os algoritmos são aplicados, utilizando as diferentes técnicas da mineração de

dados. A seguir, serão brevemente descritos, alguns exemplos dos algoritmos mais utilizados

em cada técnica apresentada no capitulo anterior.

2.2.6.1 Algoritmos de classificação

Árvores de Decisão: Pichiliani (2014) diz que, o algoritmo de árvores

de decisão gera uma estrutura de árvore que ajuda na classificação e

predição das amostras desconhecidas. Com base nos registros do

conjunto de treinamento, uma árvore é montada e, a partir desta árvore,

pode-se classificar a amostra desconhecida sem necessariamente testar

todos os valores dos seus atributos. O algoritmo de classificação por

árvores de decisão é considerado um algoritmo supervisionado, pois é

necessário saber quais são as classes de cada registro do conjunto de

treinamento. Segundo Carvalho (2005) um algoritmo de árvore de

decisão é induzido a partir de um conjunto de exemplos de treinamento,

onde as classes são previamente conhecidas. A estrutura da árvore é

organizada de tal forma que, a cada nó interno (não folha) é rotulado

com o nome de um dos atributos previsores, as arestas saindo de um nó

interno são rotulados com valores do atributo naquele nó, cada folha é

rotulada com uma classe, a qual é a classe prevista para exemplos que

pertençam àquele nó folha. O processo de classificação de um exemplo

ocorre percorrendo a árvore, a partir do nó raiz, procurando percorrer os

arcos que unem os nós, de acordo com as condições que estes mesmos

arcos representam. Ao atingir um nó folha, a classe que rotula aquele nó

folha é atribuída àquele exemplo. Na literatura os principais algoritmos

de arvores de decisão citados, são: ID3, C4.5 e CART;

Page 47: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

47

Classificação Bayesiana: O algoritmo de classificação Bayesiana recebe

este nome por ser baseado no teorema de probabilidade de Bayes. O

algoritmo tem como objetivo calcular a probabilidade, que uma amostra

desconhecida pertença a cada uma das classes possíveis, ou seja,

realizar a predição da classe mais provável, chamada de classificação

estatística, pois é completamente baseada em probabilidades. A

classificação Bayesiana obtém melhores resultados quando os valores

dos atributos são discretos ao invés de contínuos. Pichiliani (2014) diz

que este algoritmo requer um conjunto de dados prévio que já esteja

classificado, ou seja, um conjunto que linha que já estejam separadas

em classes. Baseado neste conjunto de dados prévio, que também é

chamado de conjunto de treinamento, o algoritmo recebe como entrada

uma nova amostra desconhecida, ou seja, que não possui classificação,

e retorna como saída a classe mais provável para esta amostra de acordo

com cálculos probabilísticos. A classificação Bayesiana não necessita

de uma métrica para comparar a ‘distância’ entre as instâncias e nem

classifica a amostra desconhecida automaticamente, pois é necessário

um conjunto de dados já classificados. Devido a esta necessidade

considera-se o algoritmo de Classificação Bayesiana como um

algoritmo de mineração de dados supervisionado.

Redes Neurais: Castanheira (2008) diz que, uma rede neural artificial é

um modelo matemático, de um sistema neural biológico simplificado,

com capacidade de aprendizado, generalização, associação e abstração.

Bem como no cérebro humano, as redes neurais são uma estrutura

paralelizada, composta por neurônios artificiais conectados entre si.

Conforme Elmasri e Navathe (2011), as redes neurais se auto adaptam,

pois, elas aprendem pela informação sobre um problema especifico,

funcionando muito bem em tarefas de classificação, portanto, se tornam

uteis na mineração de dados. As redes neurais podem ser classificadas

redes supervisionadas, bem como redes não supervisionadas. O objetivo

das redes neurais é deduzir uma função de um conjunto de amostras,

permitindo o aprendizado através de uma amostra de teste que é

utilizada para inferência e aprendizado iniciais.

Page 48: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

48

2.2.6.2 Algoritmos de Agrupamento

Métodos de Particionamento: utiliza um conjunto de dados,

denominado de D, com n registros, e k é o número de agrupamentos

desejados. O objetivo deste algoritmo é mapear estes registros através

de sua similaridade, e realizar o agrupamento, utilizando como

parâmetro de posicionamento todos os registros analisados

anteriormente. Os algoritmos mais comuns de agrupamento são, o k-

Means e o k-Medoids.

Métodos Hierárquicos: tem por objetivo a criação de um agrupamento

por meio da aglomeração ou da divisão dos elementos do conjunto.

Através da análise e da forma gerada por este método, extrai-se o

dendrograma, uma espécie de gráfico em formato de árvore. Há dois

tipos básicos de métodos hierárquicos, denominados de aglomerativos e

divisivos.

2.2.6.3 Algoritmos de associações

Mineração de Itens Frequentes: Esse algoritmo é aplicado em dois

passos, primeiramente, através de um conjunto de itens frequentes

criado, define-se um valor mínimo de frequência para estes itens, em

seguida, são geradas regras de associação pela mineração desse

conjunto. Segundo Camilo e Silva (2009) para garantir resultados

válidos, os conceitos de suporte e confiança são utilizados em cada

regra produzida. A medida de suporte indica o percentual de registros

que se encaixam nessa regra, e a confiança mede o percentual de

registros que atendem especificamente a regra, por exemplo, o

percentual de quem compra leite e pão e também compra manteiga. Um

dos mais tradicionais algoritmos de mineração utilizando a estratégia de

itens frequentes é o Apriori.

Page 49: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

49

2.2.7 Mineração de estruturas complexas

A mineração de dados foi concebida inicialmente para utilizar-se em

repositórios estruturados de dados (arquivos, banco de dados, etc), porém atualmente os dados

são representados por diversos formatos: não estruturados, espacial e temporal, multimídia,

Web, entre outros. A seguir serão abordadas algumas dessas estruturas:

Mineração de Fluxo de Dados: As aplicações que trafegam com alto

volume de dados, temporalmente ordenados e voláteis, segundo Camilo

e Silva (2009, p. 21), “Minerar estas informações após terem sido

armazenadas é uma tarefa inviável”, devido a mineração ocorrer à

medida que os dados são lidos. Devido este fator foram surgindo

diversos frameworks para extração padrões temporais de fluxo de

dados.

Mineração de Séries Temporais: Segundo Spiegel (1993, apud NETO;

LOUREIRO, 2014), é um conjunto de observações tomadas em tempos

determinados, comumente em intervalos iguais de tempo, ou seja,

realiza previsões futuras de acordos com o comportamento passado dos

dados.

Mineração de Grafos: a representação através dos grafos vem sendo

cada vez mais utilizados para modelagem de interações em variados

cenários como circuitos, imagens, proteínas, redes biológicas, redes

neurais, etc. Variações de algoritmos tradicionais e novos algoritmos

têm sido desenvolvidos para esse fim.

Mineração de Relacionamentos: Este tipo de estrutura representa o

relacionamento entre as entidades envolvidas (semelhante a uma

estrutura de grafos), com grande riqueza de padrões que podem ser

extraídos por meio das redes sociais. Matsuo, 2008 (apud NETO;

LOUREIRO, 2014), apresenta uma abordagem de mineração pra esta

estrutura.

Page 50: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

50

Mineração de Dados Multirelacionais: A maior parte das bases

relacionais armazena os dados de forma normalizada e distribuída.

Devido a isso as tabelas devem ser agrupadas e simplificadas, podendo

gerar alguns problemas, tais como: variáveis desnecessárias ou

duplicadas, complexidade dos dados, tempo de análise e entendimento,

etc. Com isso, visa criar algoritmos que utilizam as estruturas originais

das bases, sem a necessidade de conversão.

Mineração de Objetos: As bases orientadas a objetos armazenam os

dados em forma de objetos, respectivamente com seu identificador,

seus atributos e métodos, diferentemente das bases relacionais.

Mineração de Dados Espaciais: Este método visa identificar os padrões

armazenados nos dados espaciais (topologia, distancia, radiações) de

uma forma implícita.

Mineração de Dados Multimídia: Através das bases de dados

multimídias que armazenam conteúdos de áudio, vídeo, imagens,

gráficos, textos e outros, é possível realizar estudos de padrões nestes

arquivos, como por exemplo: associação de documentos textuais

escaneados, padrão das faces nas imagens, e outras aplicações.

Mineração de Textos: Segundo Morais e Ambrósio, grande parte dos

dados é armazenada de forma semiestruturada e não estruturada, através

de e-mails, artigos, documentos, etc. Porém a maioria das vezes, a

busca por padrões e conhecimento nestes arquivos é falha: documentos

não relacionados, o volume muito alto de informações dispensáveis,

entre outros. Por isso, surge esta mineração para ajudar neste processo.

Mineração da Internet: Segundo Camilo e Silva (2014, p. 21) “A

mineração da Internet tem sido alvo de recentes pesquisas, pois ela

reúne em seu ambiente, quase a totalidade dos tipos de estruturas

complexas e simples que existem.”, com isso o volume de dados é

gigantesco, atendendo às diversas necessidades e conteúdos. A Web

Mining consiste em extrair estruturas de ligações, conteúdos, padrões

de acesso, classificação de documentos, entre outros.

Page 51: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

51

2.3 MINERAÇÃO DE DADOS DA WEB SOCIAL

As redes sociais proporcionam plataformas para aplicações sociais,

necessitando do colaborativismo e do relacionamento entre as pessoas. Com o

desenvolvimento das APIs, os próprios usuários podem construir suas próprias aplicações

sociais.

Para que as aplicações consigam interagir com aplicações Web, são utilizados

os Web Services. As APIs das redes sociais online são Web Services9 destinados a oferecer

recursos, funcionalidades, acesso e manipulação de informações, presentes nas redes sociais.

A maioria das APIs são implementadas através dos princípios REST

(Representational State Transfer), as mensagens trocadas são encapsuladas diretamente no

protocolo HTTP (Hyper Text Transfer Protocol). Os recursos oferecidos pelo REST são

representados por URIs(Uniform Resource Indentifier) e também por métodos.

Primeiramente, será apresentado informações sobre o padrão OAuth (Open

Authorization) e após sobre as APIs da rede Twitter e Facebook.

2.3.1 OAuth

OAuth é um padrão aberto de autorização, que permite aos usuários de um site

garantirem acesso por uma aplicação externa, permitindo acessos de recursos privados sem ter

que compartilhar logins10 e senhas.

É possível definir os níveis de autorização que o usuário pode aceitar ou não,

criado em 2006, baseando nos padrões proprietários Google AuthSub, Yahoo BBAuth e Flickr

API Auth. Seu funcionamento baseia em duas partes: a primeira parte define um processo no

browser, o qual redireciona o usuário final para autorização aos seus recursos; e a segunda

define um método para realizações de requisições HTTP autenticadas, utilizando dois

conjuntos de credenciais: identificação do cliente (quem está requisitando os recursos) e do

dono do recurso (usuário).

9 Web Services: são aplicativos na web que permite enviar e receber dados no formato XML. 10

Logins: é um conjunto de caracteres solicitado para os usuários que por algum motivo necessitam acessar algum sistema computacional

Page 52: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

52

Segundo definições de Hammer-Labav, (2009 apud XAVIER; CARVALHO,

2011), este protocolo é composto por:

Token de requisição: quando o usuário entrar na aplicação, esta requisita

ao servidor um token11 de requisição, redirecionando o usuário para a tela

de autenticação do servidor.

Autenticação e autorização: uma vez autenticado, o usuário recebe um

questionamento acerca da autorização para a aplicação.

Redirecionamento à aplicação consumidora: caso o usuário autorize o

acesso, o servidor marca o token de requisição como autorizado, após é

redirecionado para o URI previamente informado.

Token de acesso: ele realiza o intercambio do token de requisição por um

token de acesso, permitindo o acesso aos recursos privados do usuário. É

possível definir sua duração em curta ou longa, e ao expirar será necessária

obtenção de outro token.

Acesso aos recursos privados: com o token de acesso, a aplicação externa

pode consultar todos os recursos privados, os quais foram concedidos

permissões.

Em 2009, o protocolo OAuth lança a versão 2.0 o qual foi reformulado

completamente. Provê uma opção para autenticação sem criptografia utilizando HTTPS

(Hyper Text Transfer Protocol Secure) e ganhou melhorias em três grandes áreas, são elas:

Autenticação e assinaturas: na versão anterior, havia uma complexidade

causada pela criptografia, e obrigava aos desenvolvedores instalarem e

configurarem bibliotecas externas.

Experiência do usuário e opções alternativas de emissão de tokens: o

método para obtenção do token é chamado de flow, na versão anterior

possuía três flows (Web, desktop e mobile), na mais recente é apenas um

único flow.

Performance em escala: na versão anterior, o protocolo não possuía um

bom escalonamento, necessitando de gerenciamento de estados.

Foram criados mais seis novos flows, são eles:

User-Agent Flow: clientes para navegadores Web.

11

Token: chave eletrônica.

Page 53: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

53

WebServer Flow: clientes que são parte de uma aplicação em um

servidor Web.

Device Flow: cliente de execução em dispositivos limitados.

Username and Password Flow: o grau de confiança entre o

usuário e o cliente foi elevado, possibilitando guardar suas

credenciais.

Client Credentials Flow: o cliente usa suas credenciais para obter

o token de acesso.

Assertion Flow: o cliente faz uma afirmação como uma SAML

(Security Assertion Markup Language) para o servidor de

autorização, obtendo seu token de acesso.

2.3.2 Coleta e manipulação dos dados do Twitter

As informações apresentadas a seguir, foram coletadas do termo de uso

(http://twitter.com/tos), API (http://apiwiki.twitter.com) e as regras

(http://twitter.com/apirules) do Twitter.

A API do Twitter consiste em três partes, sendo duas delas baseadas no REST

e uma, para fluxo continuo de dados12. As duas baseadas em REST são inteiramente

relacionadas ao histórico de mensagens publicadas. Existe também outra API para buscas13 e

outra para manipulação de dados.

Para autenticação e autorização, o Twitter utiliza o protocolo OAuth na versão

1.0a, sendo um pouco mais burocrática que a versão atual, sendo necessário o envio de

informações no cabeçalho HTTP de requisição.

Para a API do Twitter são necessários quatro componentes, são eles:

Registrar uma aplicação: cada aplicação possui uma API Key14, uma

Consumer Key15 e um Consumer Secret16.

12

Fluxo contínuo de dados: streaming. 13

API de buscas: search API. 14 API Key: chave de API 15

Consumer Key: chave de consumidor. 16

Consumer Key: chave secreta de consumidor.

Page 54: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

54

Token de requisição: é necessário esse token para autenticação, é

obtido através do URI https://api.twitter.com/oauth/request_token. O

seu retorno é uma string17 com três parâmetros concatenados

(oauth_token, oauth_token_scret e oauth_callback_confirmed).

Autorizando a aplicação pelo usuário: existem dois tipos, authorize e

authenticate, a diferença é que authorize deve obter uma confirmação

de autorização em todas as requisições, e na authenticate o usuário deve

autorizar apelas uma vez.

Token de acesso: Com a autorização efetuada pelo usuário, é

necessário obter este token para utilizar nas requisições, é obtida pelo

link https://api.twitter.com/oauth/access/_token. O seu retorno é

concatenado com o token de acesso, uma palavra-chave secreta, o ID e

o nome do usuário que autorizou.

Segundo RUSSELL (2011, p. 108) o método de autenticação do Twitter

chamado de Basic Authentication18 é insegura e está em desuso, pois consiste em enviar o

usuário e a senha pelo cabeçalho HTTP.

Search API é uma API de busca do Twitter que não necessita de autenticação

de usuário, nem de uma aplicação registrada e vinculada às requisições. Desenvolvida em

2008 por uma empresa chamada Summize. Seu mecanismo de busca é otimizado e mistura

resultados populares com resultados recentes, disponibiliza os resultados em quatro formatos:

JSON (Javascript Object Notation), XML (Extensible Markup Language) e RSS (). É

possível passar alguns parâmetros de busca como mixed19, popular20, geocode21 etc.

A API principal do Twitter é responsável pela consulta e manipulação de

dados, contendo alguns métodos que necessitam ou não da autorização/autenticação do

usuário. Um exemplo é o método statuses/user_timeline, este retorna os últimos envios de um

usuário por ordem cronológica. Outro método é trends o qual retorna palavras que são

tendências (mais faladas), e pode ser aplicados filtros por dia, semana, mês, localidade e

outros.

Os métodos que necessitam de autenticação ou autorização são necessários os

envios de parâmetros em qualquer requisição através do método POST22, o qual envia os

parâmetros para outra página, sem ser mostradas na URL através de caches. Segundo

17 String: cadeia de caracteres. 18

Basic Authentication: autenticação básica. 19

Mixed: padrão de busca 20 Popular: popularidade 21

Geocode: localização geográfica. 22

POST: publicar

Page 55: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

55

Dicionário Aurélio a palavra cache é um “dispositivo de memória em computador, que guarda

temporariamente dados que são acessados com frequência, agilizando seu processamento”.

Outro método é a Streaming API, que possui métodos de buscas semelhantes a

Search API, porém à medida que os usuários vão enviando posts ela atualiza os dados para

consulta sem a necessidade de novas requisições.

A FIG 6 representa um fluxo do servidor Web utilizando o protocolo OAuth,

Inicie no cliente Web e siga as setas em ordem lexicográfica, para voltar ao cliente depois de

completos os passos A-E.

Figura 6: Fluxo do servidor Web utilizando o protocolo OAuth. Fonte: RUSSEL, 2011, p. 111

O token rt é um símbolo especial, frequentemente anexado antes da mensagem

para indicar que você está fazendo um retweet em nome de alguém, assim é possível

distinguir as mensagens duplicadas.

Para obter o consumer_key e consumer_secret para desenvolver algo através da

API, é necessário realizar o registro da aplicação através do link

<http://de.twitter.com/app/new>, assim é possível acessar dados de sua conta para uma

aplicação.

Conforme documentação online, as solicitações de dados de amigos seguidores

retornarão até 5.000 Ids por chamada e pode ser definido um limite através do friends_limit. E

Page 56: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

56

através do comando friends/ids é possível recuperar até 1.750.000 de ID por chamada com

base na métrica de 350 solicitações/hora.

Através dos recursos friends_in_common e followers_in_common é possivel

descobrir os seguidores e amigos de dois ou mais usuários do Twitter, conseguindo verificar a

similaridade entre os mesmos e seus interesses em comum.

A medição da influencia do tweets é calculada pelo número de retweets dados

pela mensagem original, e os usuários que “retwitta” tweets não sendo de sua autoria, recebe o

nome de mavens (“pessoas excepcionalmente bem conectadas, que gostam de compartilhar

informações” RUSSELL, 2011, p.128).

Buscar dados no Twitter seria fazer uma solicitação, armazenar a reposta e

repetir, se necessário. Porém existem outros problemas como rede e os desagradáveis rate

limits23 da API.

A métrica strong links, retorna uma lista dos usuários com os quais o usuário

consultado se comunica com mais frequência, através de uma simples solicitação GET24,

enviando os parâmetros em modo texto através da URL.

Um tweet especifica muitas informações uteis sobre seu autor por meio do

campo user no objeto status.

2.3.3 Coleta e manipulação dos dados do Facebook

Antes de falar da API, é necessário ter uma conta no Facebook através do link

http://facebook.com e completar o registro, após é necessário instalar a aplicação Developer25,

através do link http://facebook.com/developers e clicar em “Set Up New Application”. Com

isso você possuirá um ID e um segredo à aplicação que será desenvolvida.

A API do Facebook chamada Graph API, permite a leitura e a escrita de dados

em seu núcleo, realizando requisições de informações como o relacionamento entre usuários,

fotos, gostos, eventos, páginas e outras coisas. Necessita de uma autorização que é obtida

através do protocolo OAuth 2.0.

Para isso a aplicação que utilizará a API necessita:

23 Rate limits: limite de requisições. 24

GET: obter. 25

Developer: Desenvolvedor.

Page 57: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

57

Registro da aplicação: A aplicação registrada possui um ID e um

código secreto, necessários para autorização;

Redirecionar o usuário para o processo de autorização: É necessário

passar os parâmetros de ID da aplicação e um URI para

redirecionamento após a etapa de autorização.

Código de segurança: Com a autorização concedida pelo usuário, ele

será redirecionado para a URL informada no item anterior, através do

parâmetro code26. Caso o usuário não dê autorização, ele será

redirecionado para outro URI definida no parâmetro error_reason.

Token de acesso: O código de segurança deve ser trocado por um token

de acesso, devendo ser enviado para API em toda requisição que

necessite de autorização.

Com essa autorização é garantido o acesso às informações publicas do usuário,

sendo elas acessíveis em seu perfil, poderão ser recuperados o nome, foto do perfil, lista de

amigos e outras informações. Algumas outras funções como acesso ao álbum de fotos do

usuário, gerenciamento de eventos e páginas, postar no mural de recados e acesso ao chat são

necessárias uma maior permissão, requisitado por um parâmetro extra, chamado scope.

A tela de login e a requisição de permissões estendidas são feitas a partir de

uma janela pop-up, e para abrir esta tela pode ser enviado o parâmetro display pelo URI.

Todos os retornos da API são feitos no formato JSON, e para facilitar seu uso o

Facebook dispõe de alguns SDKs (Software Development Kit). Algumas SDK dão suporte a

outras linguagens como Javascript27, PHP (PHP: Hypertext Preprocessor) e Python28 e para

os sistemas operacionais, smartphones, iOS (Iphone Operationg System) e Android29.

O código pode ser embutido em um HTML e é internacionalizável, podendo

mudar de idioma mudando apenas uma tag. As consultas de dados são feitas através de uma

linguagem própria chamada FQL (Facebook Query Language), que é bem semelhante ao

SQL (Structured Query Language). E também possui uma linguagem de marcação própria

chamada FBML (Facebook Marckup Language).

26

Code: código 27

Javascript: linguagem de programação interpretada. 28 Python: linguagem de programação em alto nível (orientada a objeto, imperativa, funcional, de tipagem dinâmica e forte). 29

Android: sistema operacional desenvolvido pela Google para dispositivos móveis.

Page 58: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

58

Quando acessar pela primeira vez a aplicação, será notificado de que ela está

solicitando muitas permissões estendidas, mas por padrão a aplicação pode acessar alguns

dados básicos do perfil dos usuários.

Esta API está em constante evolução segundo o site Developer Roadmap

(http://developers.facebook.com.br/roadmap), e é necessário saber algumas particularidades

como as leis de privacidade (http://facebook.com/privacy/explanation.php), sobre os padrões

API REST (http://developers.facebook.com/docs/reference/rest), FQL

(http://developers.facebook.com/docs/reference/fql), e sobre a OGP (Open Graph Protocol,

http://opengraphprotocol.org) e a API Graph

(http://developers.facebook.com/docs/reference/api).

A OGP é um mecanismo que permite que você transforme qualquer pagina

Web em um objeto de gráfico social, injetando nela metadados enquanto a API Graph é um

mecanismo simples e intuitivo que permite consulta esse gráfico.

As consultas FQL tem a forma select [fields] from [table] where [conditions],

mas existem várias restrições que diferenciam da linguagem SQL, um dos exemplos que na

cláusula from só pode possuir uma única tabela, e os campos na cláusula where todos os

campos devem ser indexados na documentação FQL. A seguir um exemplo simples que busca

o nome, sexo e status de um relacionamento de amigos do usuário conectado.

select name, sex, relationship_status from user where uid in

(select target_id from connection where source_id = me() and target_type = ‘user’)

Quadro 3: Exemplo de consulta FQL simples. Fonte: Os Autores.

A diretriz me() é um atalho que retornar o ID do usuário atualmente conectado,

na tabela user permite consultas que procuram os amigos desse usuário, a clausula target_type

é um filtro que retorna o tipo de relacionamento.

Outro diferencial da consulta FQL é a consulta múltipla que funciona

executando diversas consultas referenciando os resultados como nomes de tabela utilizando o

código cerquilha (#), como mostrado no exemplo a seguir.

select name, sex, relationship_status from user

where uid in(select target_id from #ids)

ids: select target_id from connection

Page 59: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

59

where source_id = me() and target_type = ‘user’

Quadro 4: Exemplo de consulta múltipla FQL. Fonte: Os Autores.

2.4 CONSIDERAÇÕES FINAIS

Com base na revisão da literatura realizada neste capitulo, conclui-se que

existem diversas técnicas de mineração de dados, que podem ser aplicadas a diversas áreas, o

que permitiu os desenvolvedores das redes sociais, criarem uma API, que realize buscas de

texto, utilizando as técnicas de mineração de dados.

Page 60: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

60

3 DESENVOLVIMENTO

3.1 CONSIDERAÇÕES INICIAIS

Neste capitulo, serão apresentados os detalhes sobre a estrutura do projeto

desenvolvido, os requisitos funcionais e não funcionais, as regras de negócio, o método de

desenvolvimento e os seus respectivos diagramas.

3.2 METODOLOGIA

A seguir serão descritas as ferramentas utilizadas para o desenvolvimento deste

trabalho juntamente com seu histórico. Primeiramente será apresentada a linguagem Java que

será utilizada na programação deste aplicativo, após as Bibliotecas e APIs AAAAAAA que

serão utilizadas para o acesso às redes sociais.

3.2.1 Java

É uma linguagem de programação, orientada a objetos que foi criada em 1991

em San Hill Road, uma empresa filiada a Sun Microsystem, segundo seu site oficial, “um

pequeno grupo de engenheiros da Sun chamado “Green Team" acredita que a próxima onda

na computação foi à união de dispositivos de consumo digitais e computadores” 30, e

confirmou-se esta tese.

30

“A small group of Sun engineers called the "Green Team" believed that the next wave in computing was the union of digital consumer devices and computers.”

Page 61: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

61

A primeira invenção deste grupo foi o *7 (StarSeven), um controlador com

interface touchscreen controlado remotamente, e possuía um mascote que ensinava o usuário

a utilizar, a linguagem primeiramente foi nomeada de Oak, um nome de uma árvore.

Nesta época, a internet estava ficando mais popular e a equipe Green Team,

começou a projetar aplicações interativas, em 1995 foi lançado oficialmente o Java, uma

versão para internet do Oak. A partir daí, desenvolvedores de toda parte do mundo

descobriram o potencial da tecnologia e a novidade se popularizou na Web. Uma das

primeiras empresas a utilizar foi a IBM, anunciando que seus produtos iriam rodar aplicativos

desenvolvidos em Java.

Segundo seu próprio site, com inicio em 2006 e término em 2007, a Sun lançou

o Java como software livre sobre os termos da GNU (Licença Pública Geral) 31.

As principais características e vantagens da linguagem Java são:

Suporte à orientação a objetos;

Portabilidade;

Segurança;

Linguagem simples;

Alta performance;

Dinamismo;

Interpretada (o compilador pode executar os bytecodes32 do Java

diretamente na máquina);

Distribuído;

Independente de plataforma;

Tipada (detecta os tipos de variáveis quando declaradas).

A independência de plataforma necessita de um emulador conhecido como

JVM (Máquina Virtual Java) 33, é um software que executa os códigos Java simulando uma

máquina física, executando vários programas, gerencia processos, memórias e arquivos,

através de uma máquina virtual.

Na FIG 7, é mostrado como é realizado uma compilação de um programa

desenvolvido na linguagem Java.

31 GNU: General Public Licence. 32

Bytecodes: é um estágio intermediário entre o código-fonte e a aplicação final. 33

JVM: Java Virtual Machine.

Page 62: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

62

Figura 7: Compilação de um programa desenvolvido em Java. Fonte: DEVMEDIA, 2014.

Conforme a FIG 8 apresenta o logotipo do Java, o qual é possível identificar

uma xícara com café, a bebida que a equipe de desenvolvimento da empresa consumiu, em

grandes quantidades, durante o processo de criação da linguagem, se tornando assim o

logotipo da linguagem.

Figura 8: Logotipo do Java. Fonte: Oracle, 2014.

3.2.2 Twitter4J

Page 63: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

63

Twitter4J é uma biblioteca Java não oficial para a API do Twitter, podendo

facilmente integrar seu aplicativo Java com o serviço do Twitter. Algumas das suas

características:

100% Java puro;

Funciona em qualquer plataforma Java versão 5 ou superior;

Plataforma Android e Google App Engine pronto;

Sem dependência com outras bibliotecas;

Protocolo de autenticação OAuth;

Compatível com Twitter API 1.1.

Suporte qualquer sistema operacional que suporta Java.

Para utilizar essa biblioteca basta adicionar a biblioteca twitter4j-core-

XXXX.jar para o classpath 34 do seu projeto em Java (XXXX seria a versão), é aconselhável

sempre utilizar a última versão disponível em: <http://twitter4j.org/en/index.html>.

Seu código-fonte é Open Source 35 disponibilizado através do link do GitHub

36: <http://github.com/yusuke/twitter4j/>, liberado sob a licença Apache 2.0, e inclui o funções

JSON para analisar as respostas da API do Twitter. E com isso possibilita o uso do mesmo em

projetos comerciais e não comerciais, e conta com contribuições (doações) para manter o

projeto.

Figura 9: Logotipo da biblioteca Twitter4J. Fonte: Twitter4J, 2014.

3.2.3 Facebook4J

34

Classpath: é uma opção suportada na linha de comando ou através de variável de ambiente da JVM, onde indica os pacotes e classes definidos pelo usuário para executar os programas. 35 Open Source: código aberto. 36

GitHub: é um Serviço de Web Hosting Compartilhado para projetos que usam o controle de versionamento Git.

Page 64: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

64

Dos mesmos criadores da Twitter4J, Facebook4J também é uma biblioteca

Java não oficial para a API do Facebook Graph, permitindo o acesso a algumas

funcionalidades do Facebook, algumas características são:

100% Java puro;

Funciona em qualquer plataforma Java versão 5 ou superior;

Protocolo de autenticação OAuth;

Sem dependência com outras bibliotecas;

Para utilizar essa biblioteca basta adicionar a biblioteca facebook4j-core-

XXXX.jar para o classpath do seu projeto em Java (XXXX seria a versão), é aconselhável

sempre utilizar a última versão disponível em: <http://facebook4j.org/en/index.html>.

Seu código-fonte é Open Source disponibilizado através do link do GitHub:

<https://github.com/roundrop/facebook4j>, liberado sob a licença Apache 2.0, e inclui o

funções do Twitter4J para analisar os pedidos/respostas HTTP. E com isso possibilita o uso

do mesmo em projetos comerciais e não comerciais, e conta com contribuições (doações) para

manter o projeto.

Figura 10: Logotipo da biblioteca Facebook4J. Fonte: Facebook4J, 2014.

3.2.4 PHP

PHP é uma linguagem interpretada livre, utilizada para o desenvolvimento de

aplicações presentes e atuantes no lado do servidor, capaz de gerar conteúdo dinâmico na

Page 65: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

65

Web. Trabalha juntamente com o HTML, toda a parte de código é interpretada no servidor

gerando uma pagina que é visualizada pelo cliente.

É o sucessor do produto chamado PHP/FI, criado em 1994, por Rasmus

Lerdof, a primeira versão foi simplesmente um conjunto de binários CGI (Interface de

Entrada Comum) 37, escrito em linguagem C.

Ao longo do tempo, Rasmus reescreveu o PHP, produzindo uma maior e rica

implementação, capaz de interações com banco de dados e fornecendo uma estrutura no qual

os usuários poderiam desenvolver simples e dinâmicas aplicações Web. Em 1995, foi liberado

o código-fonte para o público, permitindo assim os usuários fornecerem correções para os

bugs no código, aperfeiçoando-o.

Em 1995, Rasmus liberou uma completa reescrita do código, trazendo o nome

do PHP com outro significado de Personal Home Page Construction Kit (Kit de Construção

Para Página Pessoal), considerado uma interface avançada scripting.

Posteriormente, em 1997, surgiu a versão 2.0, o qual incluía suporte embutido

dos bancos de dados DBM, mSQL e Postgres95, cookies, funções de apoio definidas pelo

usuários e outros.

PHP 3.0 foi a primeira versão que se assemelha ao PHP existente hoje, o qual

os alunos Andi Gutmans e Zeev Suraski de Tev Aviv, Israel começaram outra completa

reescrita da codificação existente do PHP, para uso em uma aplicação eCommerce 38.

PHP 4.0 surgiu após o desenvolvimento de um motor chamado Zend Engine,

desenvolvido por Gustmans e Suraski, alcançando o objetivo de melhor a performance das

aplicações complexas e a modularização do código base do PHP, com isso em 1999 surgiu

essa versão oficialmente.

O PHP 5.0 surgiu em julho de 2004, após um longo aprimoramento no motor

Zend Engine, composto por um novo modelo de objeto e dezenas de outros novos recursos.

Atualmente o PHP se encontra na versão 5.6.0 e está em constante evolução.

37 CGI: Common Gateway Interface. Interface que permite gerar páginas dinâmicas e permite enviar parâmetros para um servidor. 38

eCommerce: comércio eletrônico.

Page 66: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

66

Figura 11: Logotipo do PHP. Fonte: PHP, 2014.

3.2.5 MySQL

O MySQL é um SGBD (Sistema de Gerenciamento de Banco de Dados) 39 que

utiliza a linguagem SQL como interface. Segundo o site DB-engines e disponível no link

<http://db-engines.com/en/ranking_trend>, o MySQL é o segundo gerenciador de banco de

dados mais utilizado no mundo, e dentro de seus usuários estão a NASA, Friendster, Banco

Bradesco, Google, Cisco, HP, Nokia, Motorola, Sony, Wikipédia e outras empresas.

Criado na década de 1980 na Suécia por David Axmark, Allan Larsson e

Michael Widenius. Em 2008, a empresa foi comprada pela Sun Microsystems, e

posteriormente, em 2009, a Oracle comprou a Sun e todos os seus produtos.

Seu sucesso veio com a fácil integração com o PHP, e segundo dados da

própria Oracle (2014), atualmente contam com mais de 400 profissionais no mundo inteiro

para desenvolvimento e manutenção do MySQL.

Algumas das características deste gerenciador são:

Portabilidade;

Multiencadeado;

Compatibilidade (drivers e módulos de interface para acesso ao banco

com diversas linguagens de programações);

Excelente desempenho e estabilidade;

Exige poucos recursos de hardware;

Manuseio fácil;

Software livre;

39

SGBD: Database Management System.

Page 67: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

67

Suporta controle transacional, triggers 40; procedures41 e functions42.

Figura 12: Logotipo do MySQL. Fonte: MySQL, 2014.

3.2.6 NetBeans

NetBeans é uma IDE (Ambiente Integrado de Desenvolvimento) 43 gratuita , de

código aberto e oficial para o Java. Disponível para os sistemas operacionais Windows, Linux,

Solaris e MacOS. Oferece aos desenvolvedores, ferramentas necessárias para criar aplicativos

profissionais desktops, comerciais, Web e móveis.

Criado por tchecos em 1996, na Universidade de Charles, em Praga, quando a

linguagem Java ainda não era tão popular. Seu primeiro nome foi Xelfi com base na

programação Delphi.

Em 1999, a Sun Microsystems adquiriu a IDE, e a nomeou de NetBeans

DeveloperX2. No ano seguinte, a Sun disponibilizou o código fonte tornando-o uma

plataforma OpenSource. Desde então, os desenvolvedores utilizam e contribuem para o

aprimoramento da ferramenta, atingindo um alto índice de popularidade.

Algumas das características desta IDE são:

Rápido;

Smart Editor, codificação auto completada, com comentários e ajuda

sobre os comandos;

40

Trigger: é um recurso de programação executado sempre que algum evento associado ocorrer. 41

Procedures: é uma coleção de comandos em SQL, que encapsula tarefas repetidas, aceita parâmetros de entrada e retorna uma saída, tarefas essas que são executadas diretamente no servidor. 42 Functions: são funções, que obrigatoriamente devem retornar um valor, promovendo reusabilidade e facilidade de manutenção. 43

IDE: Integrated Development Environment.

Page 68: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

68

Fácil;

Eficiente na gestão de projetos;

Write Bug, uma ferramenta para análise dos bugs da sua codificação;

Suporte para vários idiomas;

Suporte para diversos plugins;

Figura 13: Logotipo do NetBeans. Fonte: NetBeans, 2014.

3.2.7 Astah

O Astah é uma ferramenta para modelagem UML (Linguagem Unificada de

Modelagem) 44, anteriormente chamado de JUDE (Ambiente para Desenvolvedores UML e

JAVA) 45, desenvolvido em Java.

O Astah possibilita fazer a ilustração do seu projeto juntamente com a

documentação, gerando diagramas, fluxogramas, tabelas de requisições, mapas mentais e

outros artefatos. Possibilita a exportação de imagens da sua UML desenvolvida para diversos

programas e de várias formas.

Figura 14: Logotipo do Astah. Fonte: Astah, 2014.

44

UML: Unified Modeling Language. 45

JUDE: Java and UML Developers Environment

Page 69: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

69

3.3 REQUISITOS FUNCIONAIS

Requisitos funcionais descrevem explicitamente as funcionalidades e serviços

do sistema, documentando: como o sistema deve reagir a entradas específicas; como o sistema

deve se comportar em determinadas situações; basicamente restringi o que o sistema não deve

fazer. A seguir estão descritos os requisitos funcionais desta aplicação:

REQUISITOS FUNCIONAIS

RF01 – Cadastrar Usuário Oculto / Evidente ( E ) Descrição: Para acesso ao aplicativo, o usuário precisa se registrar através da interface Web, criando um perfil. Será permitido que o usuário visualize, altere ou exclua, os seus dados pessoais. Serão requisitadas as seguintes informações: nome, sobrenome, e-mail, login, senha, data de nascimento, permissão de acesso aos tokens das redes sociais do usuário.

RF02 – Cadastrar Mensagem Oculto / Evidente ( E ) Descrição: O aplicativo permite que o usuário realize cadastro, alteração, exclusão e consulta de até cinco mensagens, que poderão ser utilizadas na interação automática contida no aplicativo. RF03 – Realizar Busca Oculto / Evidente ( E ) Descrição: O aplicativo permite que o usuário informe palavras chaves á serem pesquisadas nas redes sociais, em conjunto com filtros de busca avançada, como: período, região, idioma, faixa etária, gênero, entre outros. RF04 – Interação Automática Oculto / Evidente ( E ) Descrição: O aplicativo permite realizar interação de forma automática com os resultados da busca, utilizando as mensagens previamente cadastradas pelo usuário.

Quadro 5: Requisitos funcionais. Fonte: Os autores.

3.4 REQUISITOS NÃO FUNCIONAIS

Os requisitos não funcionais definem propriedades e restrições do sistema,

como por exemplo, relacionados à segurança, desempenho, espaço em disco, entre outros.

Podem ser descritos para o sistema como um todo ou de partes do sistema, sendo mais crítico

que os requisitos funcionais, pois, se não satisfazer estas propriedades e restrições, o sistema é

inútil. A seguir estão descritos os requisitos não funcionais desta aplicação:

Page 70: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

70

REQUISITOS NÃO FUNCIONAIS

RNF01 – Acesso Autenticado Desejável / Permanente: ( P )

Categoria: Segurança

Descrição: Para acesso a aplicação, é necessário que o usuário esteja cadastrado, com usuário e senha para verificação ao fazer login.

RNF02 – Tempo de Resposta do Servidor Desejável / Permanente: ( D )

Categoria: Performance

Descrição: Para o bom funcionamento da aplicação é desejável que o tempo de resposta do servidor, durante as buscas, seja inferior a dois segundos.

RNF03 – Interface Gráfica Intuitiva Desejável / Permanente: ( D )

Categoria: Interface

Descrição: A aplicação possui interface intuitiva através de menus visualmente representativos.

RNF04 – Hardware Desejável / Permanente: ( D )

Categoria: Performance

Descrição: Para o bom funcionamento da aplicação é desejável que o hardware, possua os seguintes requisitos mínimos: Processador Pentium Dual Core, 2GB de Memória RAM, 1GB de Espaço em Disco. RNF05 – Sistema Gerenciador de Banco de Dados

Desejável / Permanente: ( D )

Categoria: Performance

Descrição: A aplicação armazena dados no SGBD MySQL.

RNF06 – Plataforma Desejável / Permanente: ( P )

Categoria: Performance

Descrição: Pela utilização do SGDB MySQL, e linguagem de programação Java e PHP, a aplicação é compatível com qualquer plataforma.

Quadro 6: Requisitos não funcionais. Fonte: Os autores.

3.5 REGRAS DE NEGÓCIO

A seguir serão descritas as regras de negócio necessárias para utilização do

aplicativo desenvolvido.

RN1. O usuário deve autorizar o acesso do aplicativo, aos tokens de acesso de

sua(s) rede(s) social(is), através de uma requisição HTTP.

RN2. Para utilização do recurso de interação automática fornecido pelo

aplicativo, o usuário deve concordar com os termos e condições de uso, e, política de

privacidade (vide Anexo I).

RN3. Ainda sobre o recurso de interação, é necessário definir ao menos uma

mensagem, e no máximo cinco, que será(ão) elaborada(s) conforme o interesse do usuário,

com limite máximo de 144 caracteres.

Page 71: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

71

3.6 LISTA DE CASOS DE USO

Os casos de usos demonstram as principais atividades que os autores realizam

no sistema, conforme Booch et al. (2006, p. 229), “um caso de uso envolve a interação dos

atores com o sistema”. A seguir, serão apresentados os casos de usos existentes neste trabalho.

Tabela 1: Lista de casos de uso do projeto.

Caso de Uso Descrição 01 Cadastrar Usuário 02 Realizar Login 03 Cadastrar Mensagem 04 Realizar Busca 05 Interação Automática

Fonte: Os autores.

3.7 CASO DE USO EXPANDIDO

O caso de uso expandido tem o objetivo de apresentar o passo a passo dos

fluxos e eventos de um processo, explicando como ocorre a interação entre o sistema e o(s)

ator(es), e vice-versa. Pode se dizer que o caso de uso expandido corresponde ao

aprofundamento da analise de requisitos.

A seguir são descritos os principais casos de uso expandido desta aplicação:

Cadastrar Usuário; Realizar Login; Cadastrar Mensagem; Realizar Busca; Interação

Automática.

Page 72: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

72

Caso de uso: Cadastrar Usuário

Sumário: O usuário deve efetuar o cadastro, para acessar os recursos do aplicativo.

Ator principal: Usuário

Pré-condições: Possuir cadastro nas redes sociais Twitter e/ou Facebook.

Fluxo principal:

01. O Usuário acessa o website do aplicativo, e seleciona a opção cadastrar.

02. O Sistema apresenta a página, solicitando informações do Usuário.

03. O Usuário preenche o formulário e seleciona a opção salvar.

04. O Sistema valida as informações cadastradas.

05. O Sistema armazena os dados na base de dados.

06. O Sistema envia e-mail de boas vindas ao Usuário

07. O Sistema apresenta a página de download da aplicação.

08. Encerra o Caso de Uso.

Fluxo alternativo (5): E-mail já cadastrado.

5.1 O Sistema informa que e-mail digitado já está cadastrado na base de dados.

5.2 O Sistema retorna ao passo 3.

Fluxo alternativo (5): Validação do Twitter.

5.1 O Sistema informa que os dados de usuário e/ou senha da rede social Twitter são

inválidos.

5.2 O Sistema retorna ao passo 3.

Fluxo alternativo (5): Validação do Facebook.

5.1 O Sistema informa que os dados de usuário e/ou senha da rede social Facebook são

inválidos.

5.2 O Sistema retorna ao passo 3.

Fluxo alternativo (6): Sem acesso ao banco de dados.

6.1 O Sistema informa que perdeu acesso ao banco de dados.

6.2 O Sistema retorna ao passo 3.

Pós-condições: Usuário cadastrado com sucesso, permitindo acesso ao aplicativo.

Page 73: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

73

Caso de uso: Realizar Login

Sumário: Para acesso a aplicação é necessário realizar a autenticação do usuário.

Ator principal: Usuário

Pré-condições: Usuário deve possuir cadastro na aplicação.

Fluxo principal:

01. O Usuário deve inserir seu login e senha na tela principal.

02. O Sistema valida informações.

03. O Sistema autentica nas redes sociais.

04. O Sistema apresenta a tela de menu principal.

05. Encerra o Caso de Uso.

Fluxo alternativo (3): Login e/ou senha inválidos.

3.1 O Sistema informa que o login e/ou senha estão inválidos.

3.2 Sistema retorna ao passo 1.

Fluxo alternativo (3): Usuário não cadastrado.

3.1 Executar Caso de Uso Cadastrar Usuário.

3.2 Sistema retorna ao passo 1.

Fluxo alternativo (3): Sem acesso ao banco de dados.

3.1 O Sistema informa que perdeu acesso ao banco de dados.

3.2 O Sistema retorna ao passo 1.

Fluxo alternativo (4): Usuário não está logado na rede social Twitter.

4.1 O Sistema informa que o usuário não está logado na rede social.

4.2 O Sistema solicita login da rede social.

4.3 Sistema segue para o próximo passo.

Fluxo alternativo (4): Usuário não está logado na rede social Facebook.

4.1 O Sistema informa que o usuário não está logado na rede social.

4.2 O Sistema solicita login da rede social.

4.3 Sistema segue para o próximo passo.

Pós-condições: Usuário logado com sucesso e com acesso as funcionalidades da aplicação.

Page 74: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

74

Caso de uso: Cadastrar Mensagem

Sumário: Para utilizar o recurso de Interação Automática, o usuário deve cadastrar as

mensagens.

Ator principal: Usuário

Pré-condições: O Usuário deve estar logado na aplicação.

Fluxo principal:

01. O Usuário seleciona a opção Cadastrar Mensagem no menu principal.

02. O Sistema apresenta a tela de cadastro de mensagens.

03. O Usuário insere as mensagens e salva.

04. O Sistema valida as informações.

05. O Sistema armazena os dados na base de dados.

06. O Sistema informa que os dados foram salvos.

07. Encerra o Caso de Uso.

Fluxo alternativo (6): Sem acesso ao banco de dados.

6.1 O Sistema informa que perdeu acesso ao banco de dados.

6.2 O Sistema retorna ao passo 3.

Pós-condições: Cadastro de mensagens efetuado com sucesso, permitindo a interação

automática.

Page 75: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

75

Caso de uso: Realizar Busca

Sumário: Através de uma palavra-chave informada pelo usuário, a aplicação realizará a

busca, nas redes sociais.

Ator principal: Usuário

Pré-condições: Usuário deve estar logado na aplicação.

Fluxo principal:

01. O Usuário seleciona a opção de busca no menu principal.

02. O Sistema apresenta a tela com opções de busca avançada.

03. O Sistema solicita a palavra-chave.

04. O Usuário seleciona a opções de busca que deseja.

05. O Sistema realiza a busca nas redes sociais.

06. O Sistema apresenta os dados dos posts encontrados.

07. Encerra o Caso de Uso.

Fluxo alternativo (6): Nenhum post encontrado.

6.1 O Sistema informa que não encontrou nenhum post relacionado à palavra-chave

informada.

6.2 Sistema retorna ao passo 3.

Pós-condições: Busca realizada com sucesso, permitindo o Usuário interagir com os posts

encontrados.

Page 76: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

76

Caso de uso: Interação Automática

Sumário: Após a busca da palavra-chave, o usuário pode interagir com os posts encontrados.

Ator principal: Usuário

Pré-condições: Usuário deve estar logado na aplicação e realizar uma busca.

Fluxo principal:

01. O Usuário seleciona a Interação Automática na tela de busca.

02. O Sistema apresenta o progresso da interação com os posts encontrados.

03. O Sistema informa que o processo de Interação Automática foi concluído.

04. Encerra o Caso de Uso.

Fluxo alternativo (2): Nenhuma mensagem cadastrada.

2.1 O Sistema informa que não existe nenhuma mensagem cadastrada.

2.2 Executar Caso de Uso Cadastrar Mensagem.

2.3 Sistema retorna ao passo 1.

Fluxo alternativo (2): Sem acesso ao banco de dados.

2.1 O Sistema informa que perdeu acesso ao banco de dados.

2.2 O Sistema retorna ao passo 1.

Pós-condições: Interação Automática realizada com sucesso.

Page 77: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

77

3.8 DIAGRAMA DE CASOS DE USO

Segundo Booch et al. (2006, p. 243), “um diagrama de caso de uso é um

diagrama que mostra um conjunto de casos de uso e atores e seus relacionamentos”, estes

diagramas seriam uma apresentação gráfica de elementos que compõem o sistema, e seus

relacionamentos com o ator.

O diagrama abaixo, ilustrado pela FIG 15, apresenta-se os casos de uso, com

seus respectivos atores e relacionamentos, desta aplicação.

Figura 15 – Diagrama de casos de uso. Fonte: Os autores.

3.9 TABELA DE REFERÊNCIAS CRUZADAS

A tabela de referências cruzadas visa relacionar os atores, classes, requisitos

funcionais e regras de negócio para cada de uso. A seguir é apresentada a tabela de referências

cruzadas desta aplicação.

Tabela 2: Tabela de referências cruzadas.

Nome Atores Classes Requisitos Regras de

Page 78: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

78

Funcionais Negócio

Cadastrar Usuário Usuário Usuário RF01 RN1, RN2

Realizar Login Usuário Usuário RN1

Cadastrar Mensagem Usuário Mensagem RF02 RN3

Realizar Busca Usuário Usuário RF03

Interação Automática Usuário Mensagem RF03, RF04

RN3

Fonte: Os autores.

3.10 DIAGRAMA DE CLASSES

Segundo Booch et al. (2006, p. 26) “um diagrama de classe mostra um

conjunto de classes, interfaces e seus relacionamentos". As classes são representadas por

retângulos, com o seu nome, atributos, operações e relacionamento(s) com outra(s) classe(s).

Na FIG 16, apresenta-se o diagrama de classes desta aplicação.

Page 79: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

79

Figura 16 – Diagrama de classes. Fonte: Os autores.

3.11 DIAGRAMA DE SEQUÊNCIA

Os diagramas de sequência demonstra a ordenação temporal em que as

mensagens são trocadas entre os objetos dentro de um sistema. Segundo Booch et al., seriam

as mensagens, serviços solicitados por um objeto a outro, e as respostas devolvidas a essas

solicitações. Demonstra-se a seguir, os diagramas de sequências desta aplicação.

Page 80: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

80

Figura 17 – Diagrama de sequência: Cadastrar Usuário. Fonte: Os autores.

Page 81: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

81

Figura 18 – Diagrama de sequência: Realizar Login. Fonte: Os autores.

Page 82: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

82

Figura 19 – Diagrama de sequência: Cadastrar Mensagem. Fonte: Os autores.

Page 83: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

83

Figura 20 – Diagrama de sequência: Realizar Busca. Fonte: Os autores.

Page 84: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

84

Figura 21 – Diagrama de sequência: Interação Automática. Fonte: Os autores.

Page 85: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

85

3.12 DIAGRAMA DE ATIVIDADES

O diagrama de atividades representa a modelagem do fluxo de controle de uma

atividade para outra no sistema, exibindo os estados das atividades, ações, transições e

objetos. Nas figuras a seguir, serão demonstradas _____ diagramas de atividades, são elas:

____,_____,____.

3.13 CONSIDERAÇÕES FINAIS

Page 86: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

86

CONCLUSÃO

Page 87: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

87

REFERÊNCIAS

AGUIAR, Sonia. Formas de organização e enredamento para ações sociopolíticas. Informação & Informação, Universidade Estadual de Londrina, v. 12. 2007. Disponível em: <

http://www.uel.br/revistas/uel/index.php/informacao/article/view/1776/1514>. Acesso em: 11 fev. 2014.

ASCENÇÃO, Carlos P.. Como funciona um motor de busca? 2012. Disponível em: <http://www.portalwebmarketing.com/MotoresdeBusca/Comofuncionaummotordebusca/tabid/435/Default.aspx> . Acesso em: 3 abr. 2014.

ASTAH. Astah: Our Company. Disponível em: <http://astah.net/company>. Acesso em: 10 jun. 2014.

BELL, Gavin. Criando aplicações para redes sociais. Traduzido por Thais Cristina Casson. São Paulo / SP. Novatec, 2010.

BEVENUTO, Fabricio; ALMEIDA, Jussara M.; SILVA, Altigran S.. Coleta e Analise de Grandes Bases de Dados de Redes Sociais Online. Curitiba. Congresso da Sociedade Brasileira de Computação (CSBC). 2012. Disponível em: <http://homepages.dcc.ufmg.br/~fabricio/download/jai2012.pdf>. Acesso em: 3 abr. 2014.

BOOCH, Grady; RUMBAUGH, James; JACOBSON, Ivar. UML Guia do usuário. Traduzido por Cristina de Amorim Machado. Rio de Janeiro / RJ. Elsevier, 2006.

BRASIL é o quarto país com mais internautas em redes sociais. Jornal Folha de São Paulo. Disponível em: <http://www1.folha.uol.com.br/fsp/mercado/23560-brasil-e-o-quarto-pais-com-mais-internautas-em-redes-sociais.shtml>. Acesso em: 27 set. 2013.

CAMILO, Cássio Oliveira; SILVA, João Carlos da. Mineração de dados: conceitos, tarefas, métodos e ferramentas. Disponível em: <http://www.inf.ufg.br/sites/default/files/uploads/relatorios-tecnicos/RT-INF_001-09.pdf>. Acesso em: 20 nov 2013.

CANAL TECH. LinkedIn ultrapassa Twitter em número de usuários. 2013. Disponível em: <http://canaltech.com.br/noticia/linkedin/LinkedIn-ultrapassa-Twitter-em-numero-de-usuarios/>. Acesso em: 16 mar 2014.

CIPRIANI, Fabio. Estratégia em mídias sociais: como romper o paradoxo das redes sociais e tornar a concorrência irrelevante. Rio de Janeiro / RJ. Elsevier, 2011. 208 f.

COMSCORE. Disponível em: <http://www.comscore.com/por/>. Acesso em: 16 fev. 2014.

CORRÊA, Natália. Infográfico mostra o perfil dos brasileiros nas redes sociais. Disponível em: <http://www.i9socialmedia.com/infografico-mostra-o-perfil-dos-brasileiros-nas-redes-sociais/>. Acesso em: 17 fev. 2014.

Page 88: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

88

DEVMEDIA, Java: história e principais conceitos. Disponível em: <http://www.devmedia.com.br/java-historia-e-principais-conceitos/25178>. Acesso em: 10 jun. 2014.

DONZELLI, Carlos. R. Canais alternativos de distribuição: as "lojas virtuais" do Magazine Luiza. 2010. Disponível em: <periodicos.unifacef.com.br/index.php/facefpesquisa/article/download/21/87> . Acesso em: 3 abr. 2014.

FACEBOOK. Facebook Developers, Disponível em: <https://developers.facebook.com/>. Acesso em: 17 fev. 2014.

FACEBOOK 4J. Facebook 4j a most easily usable Facebook API wrapper in Java. Disponível em: <http://facebook4j.org/en/index.html>. Acesso em: 17 fev. 2014.

FERREIRA, Aurélio Buarque de Holanda. Dicionário Aurélio básico da língua portuguesa. Rio de Janeiro: Nova Fronteira, 11.ed, 2009, p. 89.

FOSTER, Robin. News plurality in a digital world. Disponível em: <https://reutersinstitute.politics.ox.ac.uk/fileadmin/documents/Publications/Working_Papers/News_Plurality_in_a_Digital_World.pdf>. Acesso em: 16 fev. 2014.

G1. Facebook Comemora 10 anos com retrospectiva de usuários em vídeos. Disponível em: <http://g1.globo.com/tecnologia/noticia/2014/02/facebook-comemora-10-anos-com-retrospectiva-de-usuarios-em-video.html>. Acesso em: 16 fev. 2014.

GOULART, Rodrigo. Os mecanismos de busca e suas implicações em comunicação e marketing. Disponível em: <http://www.ufrgs.br/alcar/encontros-nacionais-1/5o-encontro-2007-1/Historico%20dos%20mecanismos%20de%20busca%20e%20suas%20implicacoes%20em%20comunicacao%20e%20marketing.pdf>. Acesso em: 16 fev. 2014.

LEITE, Nelson; CAIXINHA, Hélder; RAMOS, Fernando. Proposta de uma aplicação Web para monitorização do impacto de notícias nas redes sociais Facebook e Twitter. Disponível em: <http://www.revistacomunicando.sopcom.pt/ficheiros/20131227-9.proposta_de_um_modelo_de_gest__o_de_conte__dos_nos_social_media.pdf>. Acesso em: 16 fev. 2014.

HAYES, Gary. Virtual worlds, Web 3.0 and portable profiles. Disponível em: < http://www.personalizemedia.com/virtual-worlds-web-30-and-portable-profiles/>. Acesso em: 23 fev. 2014.

HENDGETS, Antonio Silvio. Principais redes sociais do Brasil e do mundo top 10 mais. Disponível em: <http://escoladeredes.net/profiles/blogs/principais-redes-sociais-do-brasil-e-do-mundo-top-10-mais>. Acesso em: 16 fev. 2014.

INTERNET WORLD STATS. Internet users in the world. Disponível em: < http://www.internetworldstats.com/stats.htm>. Acesso em: 12 mar. 2014.

MYSQL. Why MySQL?. Disponível em: < http://www.mysql.com/why-mysql/>. Acesso em: 12 jun. 2014.

Page 89: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

89

MORAIS, Edison A. M.; AMBRÓSIO, Ana Paula L. Mineração de textos. UFG. Disponível em: <http://www.inf.ufg.br/sites/default/files/uploads/relatorios-tecnicos/RT-INF_005-07.pdf>. Acesso em: 16 fev. 2014.

NETBEANS. NetBeans IDE: Overview. Disponível em: <

https://netbeans.org/features/index.html>. Aceso em: 12 jun. 2014.

NETO, Eufrásio de A. L.; LOUREIRO, Juliana. Mineração de séries temporais e dados sequenciais. UFPE. Disponível em: <http://www.cin.ufpe.br/~compint/aulas-IAS/kdd-022/MineracaoSeriesTemporaisDadosSequenciais.ppt>. Acesso em: 26 abr. 2014.

NORVIG, Peter. Internet searching. Disponível em: <http://www.norvig.com/InternetSearching.pdf>. Acesso em: 16 fev. 2014.

OLIVEIRA, Natanael. O Twitter como ferramenta de marketing para gerar relacionamento e promover vendas. Disponível em: <https://www.natanaeloliveira.com.br/a-historia-das-redes-sociais/>. Acesso em: 16 fev. 2014.

ORACLE. The history of Java technology. Disponível em: <http://www.oracle.com/technetwork/java/javase/overview/javahistory-index-198355.html>. Acesso em: 09 jun. 2014.

PHP. PHP: hypertext preprocessor. Disponível em: <http://www.php.net>. Acesso em: 10 jun. 2014.

RECUERO, Raquel da Cunha. Redes sociais na internet: considerações iniciais. Disponível em: <http://bocc.unisinos.br/pag/recuero-raquel-redes-sociais-na-internet.pdf>. Acesso em: 11 fev. 2014.

RECUERO, Raquel da Cunha. Redes sociais na internet. Disponível em: <http://www.ichca.ufal.br/graduacao/biblioteconomia/v1/wp-content/uploads/redessociaisnainternetrecuero.pdf>. Acesso em: 11 fev. 2014.

RUSSELL, Matthew A. Mineração de dados da Web social. Tradução de Rafael Zanolli. São Paulo / SP. Novatec, 2011.

SAYON, Daniel. A evolução das redes sociais e a publicidade. Disponível em: <http://www.mestreseo.com.br/redes-sociais/a-evolucao-das-redes-sociais-e-a-publicidade-2>. Acesso em: 22 fev. 2014.

TAURION, Cezar. Motores de busca "real time": os Googles da era Twitter?. Disponível em: <https://www.ibm.com/developerworks/community/blogs/ctaurion/entry/motores_de_busca_real_time_os_googles_da_era_twitter1?lang=en>. Acesso em: 16 fev. 2014.

TERRA, Carolina Frazon. Mídias sociais... e agora?. Local: Rio de Janeiro. Senac Rio, 2011.

TECMUNDO. O que é API. 2009. Disponível em: <http://www.tecmundo.com.br/programacao/1807-o-que-e-api-.htm>. Acesso em: 27 set. 2013.

Page 90: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

90

TWITTER. Twitter Developers. Disponível em: <https://dev.twitter.com/>. Acesso em: 16 fev. 2014.

TWITTER 4J. Twitter 4j a Java library fot the Twitter API. Disponível em: <http://twitter4j.org/en/index.html>. Acesso em: 16 fev. 2014.

W3C. Web semântica. Disponível em <http://www.w3c.br/Padroes/WebSemantica>. Acesso em: 23 fev. 2014.

WALL, Aaron. History of search engines: from 1945 to Google today. Disponível em <http://www.searchenginehistory.com>. Acesso em: 16 abr. 2014.

WARREN, Ilse Scherer. Redes e movimentos sociais projetando o futuro. Revista Brasileira de Sociologia, v.1, n.1. Disponível em: <

http://www.sbsociologia.com.br/revista/index.php/RBS/article/view/29/9> Acesso em: 16 mar. 2014.

XAVIER, Otávio C.; CARVALHO, Cedri L. de. Desenvolvimento de aplicações sociais a partir de APIs em redes sociais online. Disponível em: <http://www.inf.ufg.br/sites/default/files/uploads/relatorios-tecnicos/RT-INF_001-11.pdf>. Acesso em: 5 abr. 2014.

ZAIANTCHICK, Gustavo. Busca tradicional vs busca em redes sociais. Disponível em: <http://pt.slideshare.net/gzaian/busca-tradicional-vs-busca-em-redes-sociais-gustavo-zaiantchick-direct-labs>. Acesso em: 16 fev. 2014.

Page 91: INTERAÇÃO EM REDES SOCIAIS ATRAVÉS DA MINERAÇÃO DE DADOS

91

ANEXOS