DeepTwitter - Um sistema de Visualizaç ˜ao de Informaç ˜oes do

Transcrição

DeepTwitter - Um sistema de Visualizaç ˜ao de Informaç ˜oes do
DeepTwitter - Um sistema de Visualização de Informações do Twitter
Guilherme Coletto Rotta, Vinı́cius Silva de Lemos, Isabel Harb Manssour
PUCRS/FACIN–Faculdade de Informática
Av. Ipiranga 6681, Prédio 32
90619-900, Porto Alegre, RS, Brasil
[email protected], [email protected], [email protected]
Resumo—Nos últimos anos, os sites de redes sociais vem se
disseminando na Internet. Com milhões de membros espalhados ao redor do mundo, estes serviços conectam seus usuários
através de relações de “amizade”, e em um curto perı́odo de
tempo as informações se espalham pela rede. Baseado nisto,
foi criado um sistema, intitulado DeepTwitter, que tem por
principal objetivo fornecer ferramentas de Visualização de
Informações para permitir a análise e o gerenciamento da
conta dos usuários do Twitter, um dos sites de redes sociais
mais populares no momento. As visualizações fornecidas são:
grafo representando a rede de contatos do usuário, linha do
tempo das atualizações de indivı́duos ou grupos e usuários mais
populares. Estas oferecem ao usuário do sistema um nı́vel de
interação impossı́vel de ser obtido utilizando apenas o site,
possibilitando a compreensão de informações antes desconexas
e auxiliando no estudo do comportamento dos membros que
compõem a rede de contatos do usuário, através de uma
interface funcional e intuitiva.
Keywords-Information Visualization; Interactive systems; Social network; Twitter.
I. I NTRODUÇ ÃO
Com o advento da Web 2.0, novos serviços para a Internet
foram surgindo ao longo dos últimos anos, possibilitando
aos usuários um grande nı́vel de interação com a rede.
Dentro deste contexto, nasceram diversas aplicações focadas
no relacionamento entre os usuários, com o objetivo de
simplesmente facilitar o contato entre amigos distantes ou
aproximar pessoas com interesses especı́ficos em comum. As
redes sociais são, em sua maioria, sites criados com estas
finalidades e que possuem milhões de membros espalhados
pelo mundo todo [1]. Com o crescente aumento do número
de adeptos destes serviços, uma grande quantidade de dados
de cunho social trafega na Internet. Fazer uma análise
destas informações pode se tornar difı́cil, uma vez que a
complexidade e o modo como estes dados estão dispostos
não auxilia nesta tarefa.
O objetivo deste trabalho é apresentar o DeepTwitter, um
sistema capaz de disponibilizar ferramentas de Visualização
de Informações e de gerenciar a conta de um usuário do
Twitter [2], um site de rede social muito popular hoje em
dia. Como o Twitter possibilita a visualização dos amigos de
um único membro por vez, e por meio de uma simples lista
exibida na página de cada perfil, criamos uma visualização
dinâmica e abrangente da rede de contatos do usuário, que
permite navegar pelas pessoas a ele conectadas e interagir
com elas através da troca de mensagens (chamadas de
atualizações ou tweets). Outras visualizações oferecidas são
a linha do tempo, que exibe a freqüência com que indivı́duos
ou grupos enviam tweets, e um gráfico com as pessoas mais
populares da rede, isto é, que possuem um grande volume
de tweets ou amigos. Estas funcionalidades possibilitam uma
aprendizagem sobre a rede de contatos e o comportamento
dos seus membros, por meio da coleta periódica dos dados
gerados.
Uma breve descrição do Twitter é feita na Seção II. Na
Seção III são apresentados alguns trabalhos relacionados. O
sistema implementado, incluindo as visualizações fornecidas
e uma análise em relação a algumas aplicações existentes é
descrito na Seção IV. As conclusões e trabalhos futuros estão
na Seção V.
II. T WITTER
O Twitter é um site de rede social que conecta amigos,
familiares e colegas de trabalho, através da troca de pequenas
mensagens, chamadas de atualizações ou tweets, em resposta
à pergunta “O que você está fazendo?”. Um tweet pode
conter no máximo 140 caracteres, e também é possı́vel
enviá-los e recebê-los a partir de telefones celulares e mensageiros instantâneos. O usuário pode se manter informado
do que outras pessoas estão fazendo no momento, assim
como receber notı́cias, uma vez que diversas corporações
e instituições criaram perfis no site, tais como BBCBrasil,
NYTimes e CNN.
Qualquer pessoa, tendo efetuado login ou não no Twitter,
pode visualizar o perfil dos membros não privados, a fim
de ler os tweets que estes enviaram recentemente. Há um
conceito muito importante para o correto entendimento das
relações entre os usuários do Twitter: “seguir” um usuário
(follow), que significa estar interessado em receber os tweets
desta pessoa em seu perfil ao efetuar login, como mostra a
Figura 1. Ao realizar esta ação, passa-se a ser um “seguidor”
(follower) do usuário em questão.
Várias interações são permitidas ao usuário que efetua
login no Twitter, como, por exemplo, enviar tweets (que
serão recebidos por seus seguidores em seus perfis), seguir
outros usuários, trocar mensagens diretas com outros membros do serviço (estas são privadas e só podem ser vistas
pelo remetente e destinatário), responder tweets e também
marcá-los como favoritos.
Existe uma API implementada pelos desenvolvedores do
site, que permite a criação de aplicativos personalizados que
exploram muitos de seus recursos através de requisições
HTTP, como o envio e recebimento de tweets e a criação
e ruptura de laços de amizade entre os usuários. Alguns
métodos necessitam autenticação no serviço do Twitter para
serem executados, como enviar um tweet, seguir uma pessoa
ou tornar um tweet favorito. Outros não, uma vez que apenas
consultam os dados dos usuários. Existe uma taxa limite de
utilização destes métodos, fixada em 150 requisições por
hora.
de dias do mês em que o autor postou mensagens em
algum tópico e o eixo y representa a média do número de
mensagens por tópico. A visualização AuthorLines mostra a
intensidade do envio de mensagens através de uma linha do
tempo horizontal com divisores verticais que correspondem
aos meses. Cada divisão contém pilhas de cı́rculos, cada uma
representando uma semana, e a quantidade de cı́rculos diz
respeito a quantos tópicos de discussão o autor contribuiu.
O tamanho de cada cı́rculo corresponde ao número de
mensagens enviadas dentro de cada tópico.
Através da visualização Newsgroup Crowds é possı́vel
rapidamente analisar quais autores são mais ativos, uma vez
que apresenta a média do número de mensagens enviadas por
dias. Já com a visualização AuthorLines é possı́vel visualizar
a freqüência com que um autor posta conteúdo no grupo de
discussão.
B. Vizster
Figura 1.
Perfil de um usuário que efetuou login no Twitter.
III. T RABALHOS R ELACIONADOS
Existem diversos trabalhos a respeito da Visualização de
Redes Sociais e alguns deles são aqui apresentados. Um
trabalho pioneiro na identificação da interação entre usuários
em um grupo é descrito na Seção III-A. A Seção III-B e a
Seção III-C abordam dois sistemas para visualização de redes sociais, enquanto nas seções seguintes são apresentadas
algumas aplicações voltadas ao Twitter.
A. Newsgroup Crowds and AuthorLines
Viegas e Smith [3] apresentam duas visualizações referentes à atividade de postagem de mensagens em grupos
de discussão: Newsgroup Crowds e AuthorLines. A primeira mostra a atividade dos participantes de um grupo
de discussão em um perı́odo de tempo, sendo cada autor
representado por um cı́rculo. A posição deste cı́rculo é
determinada pelos eixos x e y, onde x representa o número
O Vizster [4] é uma ferramenta de visualização de sites de
redes sociais, porém os dados devem estar armazenados em
um banco de dados MySQL. Ele mostra a rede de contatos
de um usuário contido num grupo de 1,5 milhões de perfis
coletados do site de relacionamentos Friendster, no perı́odo
de outubro de 2003 a fevereiro de 2004. Ao efetuar login na
ferramenta, uma rede de amigos composta de nodos e arestas
é criada. O usuário em questão é posicionado no centro da
rede e seus amigos ao seu redor, conectados a ele.
Quando um usuário é selecionado, seu perfil do Friendster
é exibido e seus amigos são retornados pelo banco de dados
e adicionados à rede de contatos. Dentre outras funcionalidades, a ferramenta possibilita realizar buscas por palavras nos
perfis dos membros da rede, exibir os nodos intermediários
entre dois usuários e visualizar comunidades formadas pelas
relações estabelecidas entre grupos de usuários. A limitação
do programa está na necessidade de possuir um banco de
dados com as informações, o que impossibilita seu uso para
a interação em tempo real entre os membros de uma rede
social.
A exibição da rede de contatos apresentada pelo Vizster
foi concebida com o auxı́lio do Prefuse [5], um toolkit
de código-aberto que permite a criação de vários tipos de
visualizações.
C. Visualização Temporal de Redes Sociais
O trabalho apresentado por Santos [6] descreve uma
abordagem para a visualização temporal de redes sociais,
que permite observar as mudanças que ocorrem em uma rede
em diferentes intervalos de tempo. Para isto, foi utilizado o
framework OSSNetwork, que busca informações em repositórios de projetos de software livre e gera visualizações de
redes sociais na forma de matrizes ou grafos com os dados
coletados. Na visualização apresentada, as cores variam do
azul ao vermelho, sendo as mais próximas do azul usadas
para caracterizar os elementos mais antigos da rede, e as
mais próximas do vermelho usadas para representar os
elementos mais recentes.
Apesar de interessante, esta visualização tem relevância
apenas em situações onde a relação de precedência entre
seus elementos é muito importante, como em sistemas de
controle de versão de arquivos.
D. TweetDeck e Seesmic Desktop
TweetDeck [7] e Seesmic Desktop [8] são aplicações
que servem, basicamente, para a visualização dos tweets
de forma prática. Os tweets, mensagens diretas, respostas
e favoritos podem ser separados em colunas, sendo possı́vel
configurá-las da forma que o usuário julgar apropriada.
Quando um novo tweet ou mensagem chega, uma notificação
visual é exibida. Também é possı́vel criar grupos contendo
membros que o usuário segue, tornando a leitura de seus
tweets mais prática.
Ambas aplicações permitem gerenciar mais de uma conta
do Twitter ao mesmo tempo. Um diferencial do TweetDeck
é a possibilidade de marcar um tweet como lido, desta forma
ele não aparecerá da próxima vez que o usuário abrir o
programa. Outro aspecto interessante do TweetDeck é a
visualização de uma tag cloud (conjunto de tags cujos tamanhos são proporcionais à freqüência com que são usadas)
que contém os principais tópicos conversados no momento.
Nenhuma destas aplicações proporciona uma visualização
com diferenças significativas em relação à disponibilizada
pelo site do Twitter, uma vez que os tweets são exibidos um
abaixo do outro e não é possı́vel visualizar os relacionamentos entre os usuários.
E. TweetStats
O TweetStats [9] é uma aplicação web que varre e indexa
uma grande quantidade de tweets, para posterior geração
de estatı́sticas a respeito do uso do Twitter para determinado usuário. A indexação e armazenamento dos dados nos
servidores da aplicação são necessários para que a análise
dos tweets não tenha que ser efetuada novamente quando o
usuário voltar a utilizá-la.
São criados gráficos que mostram a quantidade total de
tweets postados por mês, dia da semana e hora do dia.
Também é gerado um gráfico da densidade dos tweets,
que relaciona os dias da semana com faixas de horário,
permitindo verificar os perı́odos em que o usuário costuma
escrever tweets com mais freqüência. Além destas análises,
a aplicação não oferece qualquer tipo de interação com o
Twitter, uma vez que não é possı́vel nem visualizar os tweets
correspondentes.
F. Twitter Friends Network Browser
O Twitter Friends Network Browser [10] apresenta uma
visualização da rede de contatos na qual os usuários do
Twitter são representados por suas imagens, abaixo das
quais estão os últimos tweets escritos por eles. Arestas nãodirigidas conectam os membros da rede, e, a cada vez que
um usuário é selecionado, 16 (no máximo) de seus amigos
são adicionados à visualização.
Analisar as conexões entre os usuários da rede se mostra
uma tarefa confusa ao utilizar esta aplicação, uma vez que
estes se misturam na visualização, dificultando assim a
identificação de usuários que possuem amigos em comum.
Além disso, o uso de arestas não-dirigidas torna impossı́vel
saber se um usuário está seguindo ou sendo seguido por
outro. A aplicação não permite realizar nenhuma outra
operação - como enviar mensagens, seguir outros membros
ou ler todos seus tweets - além da navegação pela rede de
contatos.
IV. D EEP T WITER
Esta seção contém uma descrição do DeepTwitter. Inicialmente, o ambiente de desenvolvimento, incluindo as bibliotecas utilizadas, é apresentado. Na seqüência, é abordada a
arquitetura utilizada na sua implementação. As visualizações
disponı́veis, bem como uma análise da solução proposta,
estão, respectivamente, na Seção IV-C e na Seção IV-D.
A. Ambiente de Desenvolvimento
Para facilitar o acesso às funcionalidades disponibilizadas
através da API criada pela equipe do Twitter, foi utilizada a
biblioteca Twitter4j [11], de autoria de Yusuke Yamamoto,
que automatiza os processos de retorno e transformação dos
dados em objetos - uma vez que as consultas ao Twitter
devem ser feitas via requisições HTTP e os resultados são
retornados no formato XML. Desta forma, estes passos
ficam transparentes ao desenvolvedor, que recebe os dados
já formatados de maneira adequada.
As visualizações foram implementadas com o Prefuse [5],
um toolkit que faz uso de bibliotecas gráficas e viabiliza a
criação de visualizações interativas de dados. A ferramenta
foi utilizada na concepção do Viszter (Seção III-B) e atinge
resultados muito bons, pois gera grafos nos quais os nodos
se reorganizam automaticamente quando são sobrepostos,
aproxima grupos de nodos com grande conectividade (tornando possı́vel a identificação de comunidades) e atribui
propriedades fı́sicas aos componentes, como a elasticidade.
A linguagem de programação Java foi utilizada no desenvolvimento do projeto, pois, além de ser portável, é a
linguagem na qual o toolkit escolhido foi implementado.
Também foi usada a biblioteca JDOM [12], que auxilia
na manipulação dos arquivos XML de configuração do
DeepTwitter.
B. Arquitetura
As classes do DeepTwitter foram estruturadas seguindo
um modelo de camadas, de forma que alterações feitas
na interface não afetem a manipulação de dados. Assim,
foram desenvolvidas classes controladoras, de modelo e
de apresentação. As classes controladoras são responsáveis
pela conexão ao serviço do Twitter, pela detecção de erros,
pela manutenção de arquivos XML de configuração e pelo
processamento e resposta a eventos, tais como clique de
botão e abertura das janelas do programa. As classes de
modelo constituem a parte lógica da aplicação, e podem
ter seus estados alterados pelas classes controladoras. As
classes de apresentação, por sua vez, constituem as janelas
e visualizações do DeepTwitter.
Os dados que servem de base para a geração dinâmica
dos elementos visuais que compõem as visualizações, tais
como os nodos do grafo que representam os membros da
rede de contatos do usuário, são obtidos através da chamada
aos métodos da API do Twitter, tarefa cuja responsabilidade
é da biblioteca Twitter4j. Desta forma, ao se clicar em um
usuário da rede para visualizar seus amigos, por exemplo,
as seguintes tarefas são executadas:
1) Chamada ao método getFriends(String id), da biblioteca Twitter4j. O identificador do Twitter do usuário
de quem se deseja obter os amigos deve ser passado
por parâmetro;
2) O método getFriends faz uma requisição ao método
Friends da API do Twitter, que retorna um XML
contendo informações sobre os amigos do usuário;
3) O Twitter4j encapsula as informações consultadas em
uma lista de objetos do tipo User;
4) Os dados contidos nesta lista são utilizados para gerar,
com o Prefuse, os nodos referentes aos usuários que
serão adicionados à rede de contatos.
C. Visualizações
1) Interface e Rede de Contatos do Usuário: A Figura 2
exibe a tela principal do DeepTwitter, aberta após o usuário
efetuar login no sistema. Ela possui um painel, localizado
na lateral esquerda, que exibe, entre outros, as últimas
atualizações (tweets), mensagens e respostas recebidas pelo
usuário, além de possibilitar a busca por tweets. Do lado
direito, ocupando a maior parte da janela, é apresentada a sua
rede de contatos, expandida conforme o usuário seleciona
membros para adicionar seus amigos e/ou seguidores à
rede. Há ainda, na parte superior, uma barra de ferramentas
(Figura 3), que possibilita alterar elementos do layout da
rede e interagir com a mesma, através da criação de grupos
ou da busca de usuários pelo nome, descrição ou localidade,
por exemplo.
Os botões e controles da barra de ferramentas possibilitam
as seguintes interações: a) postar um tweet; b) procurar um
usuário do Twitter e adicioná-lo à rede; c) criar um grupo
contendo os usuários selecionados; d) limpar a seleção de
usuários; e) abrir a visualização dos usuários mais populares;
f) permitir a exibição de informações do usuário ao passar o
mouse sobre ele; g) centralizar usuário na rede de contatos
ao clicar sobre ele; h) exibir a rede com gráficos de alta
qualidade; i) exibir arestas curvas; j) exibir barra de status;
k) iniciar/interromper a animação da rede; l) abrir a janela de
configurações; m) configurar as forças de atração e repulsão
Figura 2.
Tela principal do DeepTwitter, contemplando o painel de
atualizações e a rede de contatos, que fornece uma visualização abrangente
dos usuários explorados e suas conexões.
Figura 3.
Barra de ferramentas do DeepTwitter.
entre os nodos; n) encontrar usuários na rede; o) visualizar
o limite disponı́vel de requisições; p) apresentar o manual
do usuário; q) fazer logout.
Nesta visualização, as relações de amizade (follow) entre
os membros (nodos) da rede de contatos são indicadas por
arestas dirigidas. Se um usuário x seguir (tiver uma relação
de follow para) um usuário y e vice-versa, então esta aresta
será bidirecional. As relações podem, ainda, ser observadas
da seguinte maneira: ao passar o mouse sobre um usuário,
este se torna amarelo, e aos membros conectados a ele
são atribuı́das as seguintes cores: azul claro, caso apenas
sejam seguidos pelo usuário; vermelho, caso apenas sigam
o usuário; e verde, caso estejam seguindo e sejam seguidos
pelo usuário.
A rede de contatos é automaticamente organizada de
forma que membros com maior quantidade de amigos
ou seguidores se distanciem dos demais, o que facilita a
visualização de amigos em comum entre grandes aglomerados. É possı́vel selecionar usuários ou criar grupos na
rede para, entre outros, ler os tweets que eles postaram,
enviar-lhes mensagens ou segui-los, tornando-os contatos
diretos. Estas tarefas podem ser realizadas através do menu
de contexto atribuı́do ao usuário ou grupo selecionado. Nele,
as opções de interação são disponibilizadas com base na
relação entre o usuário logado no DeepTwitter e o membro
selecionado.
A Figura 4 exibe um menu de contexto onde, ao invés
de haver a opção “Seguir”, há a opção “Deixar”, pois o
usuário logado já está seguindo o usuário Bruno Thomas.
Ao escolher esta opção, a seta que liga os dois usuários (e
que possui o usuário logado como origem) será excluı́da; e
a mudança irá automaticamente se refletir no site do Twitter.
Figura 5. Rede de contatos exibindo dois grupos de usuários e informações
sobre o usuário FacinPUCRS.
Figura 4. Menu de contexto exibindo as opções de interação entre o
utilizador do sistema e o usuário Bruno Thomas.
A Figura 5 mostra uma rede de contatos na qual podem
ser observados dois grupos de usuários criados, bem como
o distanciamento entre os aglomerados de membros; e uma
caixa que exibe algumas informações referentes ao usuário
no qual o mouse está sobreposto. A Figura 6 detalha o
conteúdo desta caixa para o usuário FacinPUCRS, onde é
possı́vel ler, dentre outros dados, seu último tweet postado.
Através do site, esta simples consulta exigiria a visita a cada
perfil de interesse.
A visualização da rede de contatos do usuário desempenha
um importante papel, visto que tem a capacidade de exibir,
de uma só vez, um grande número de membros e conexões,
tarefa impossı́vel de ser realizada através do site. A descoberta de outros membros nos quais o usuário pode ter algum
interesse também se dá de forma bastante eficiente, por meio
da verificação de quais usuários relacionados a ele já estão
seguindo estes membros, por exemplo.
Não é obrigatório possuir conta no Twitter para utilizar o
sistema. Neste caso, porém, os módulos do DeepTwitter que
fazem uso dos métodos da API que requerem autenticação
não estarão acessı́veis (fazendo com que as opções correspondentes sejam desabilitadas na interface), e o usuário deve
indicar, na tela de login, o Id ou username de um usuário
que deseja explorar.
2) Linha do Tempo das Atualizações de Indivı́duos ou
Grupos: Ao visualizar os tweets de indivı́duos ou grupos na
tela principal do DeepTwitter, é possı́vel abrir a visualização
da linha do tempo correspondente. Ela irá organizar estes
Figura 6.
Detalhe exibindo informações sobre o usuário FacinPUCRS.
tweets em um gráfico, com base no dia (eixo x) e faixa de
horário (eixo y) em que foram enviados. Desta forma, se
pode observar a freqüência de envio de tweets e identificar
quais horários são predominantemente destinados a isso. A
Figura 7 mostra a visualização da linha do tempo do usuário
FacinPUCRS. Ao passar o mouse sobre uma elipse, é exibida
uma caixa com o tweet correspondente e sua data de envio.
Para a visualização da linha do tempo de grupos de
usuários, é interessante marcar a opção que possibilita exibir
suas fotos ao invés das elipses, como ilustra a Figura 8. Em
ambas as visualizações, há controles para filtrar os tweets por
autor e/ou palavras contidas neles, além de barras nos eixos
que permitem espaçá-los. A Figura 9 exibe a mesma linha
do tempo da Figura 8, porém fazendo uso destas barras, a
Figura 7. Visualização da linha do tempo exibindo os tweets escritos pelo
usuário FacinPUCRS.
fim de espaçar os tweets para melhorar a visualização.
Figura 9.
Linha do tempo da Figura 8 após o uso das barras para
espaçamento dos tweets.
imagens na tela, foi inserido um filtro que permite definir o
número máximo de usuários exibidos. A Figura 10 mostra
os 10 usuários mais populares da rede classificados pelo
número de seguidores; e a Figura 11 mostra os 10 usuários
mais populares da rede classificados pelo número total de
tweets que eles já enviaram ao Twitter.
Figura 8. Linha do tempo exibindo os tweets de um grupo formado por
três usuários.
3) Usuários Mais Populares: Esta visualização pode ser
aberta para um grupo de usuários, membros selecionados
ou mesmo para todos os usuários presentes na rede de
contatos. Suas fotos são adicionadas a uma janela, onde é
possı́vel classificá-los pelo número de amigos, seguidores,
tweets favoritos e quantidade de tweets que já escreveram.
Ao selecionar uma destas opções, o tamanho de suas fotos
é devidamente alterado em relação à opção escolhida e aos
outros usuários. Além do controle que permite visualizar as
informações de um usuário ao passar o mouse sobre sua
foto, há, na parte inferior, um painel que exibe o último
tweet dos usuários visı́veis na tela, alternando entre eles e
colorindo a borda de suas imagens.
A fim de não atrapalhar o usuário mostrando muitas
Figura 10.
Visualização dos 10 usuários mais populares da rede de
contatos, classificados por número de seguidores, exibindo informações do
usuário cnnbrk e último tweet escrito pelo usuário PerezHilton.
Por meio desta visualização, basta um olhar rápido para
o usuário identificar quem são os membros mais ativos (ou
importantes) de sua rede de contatos. Isto seria, claramente,
impraticável ao utilizar o Twitter através do site, visto que
o usuário teria que visitar o perfil de cada um dos membros
contidos na rede, que poderiam ser centenas.
dades de várias ferramentas, integrando-as em uma interface
de fácil utilização que apresenta dados constantemente atualizados. Além disso, fornece a visualização de informações
que não são facilmente identificadas nas demais aplicações.
V. C ONCLUS ÃO E T RABALHOS F UTUROS
Figura 11.
Visualização dos 10 usuários mais populares da rede de
contatos, classificados por número de tweets, exibindo informações do
usuário fseixas e último tweet escrito pelo usuário stephenfry.
D. Análise
Conforme descrito na Seção III, alguns sistemas para
análise de comportamento de um grupo de usuários, bem
como aplicações para o Twitter, já foram desenvolvidos e
estão descritos na literatura. Nesta seção, as funcionalidades
e caracterı́sticas destas soluções serão comparadas com o
DeepTwitter.
Semelhante ao Newsgroup Crowds [3], a visualização
dos Usuários Mais Populares tem como objetivo ilustrar os
usuários que possuem maior atividade na rede. A vantagem
está na possibilidade de selecionar o tipo de atividade que
se quer analisar: número de amigos, seguidores, tweets
favoritos e quantidade de tweets.
Para analisar o comportamento dos usuários na rede
social, assim como apresentado na ferramenta AuthorLines [3] e na visualização temporal de redes sociais [6], o
DeepTwitter oferece a visualização da Linha do Tempo. Esta
visualização também tem vantagens sobre as ferramentas
TweetDeck [7] e TweetStats [9], pois tem a capacidade de,
ao mesmo tempo, permitir a determinação da freqüência do
envio de tweets e de visualizá-los, combinando, assim, as
principais caracterı́sticas das duas ferramentas.
Em relação ao Vizster [4], o DeepTwitter tem a vantagem
de se comunicar diretamente com o serviço do Twitter,
obtendo as informações (como amigos de um usuário)
sempre atualizadas e evitando assim a necessidade de têlas guardadas em um banco de dados, onde estas ficariam
estáticas. Além disso, as relações de follow entre os usuários
ficam bem claras, e existe ainda a possibilidade de criar e
monitorar grupos de usuários, aos quais se pode adicionar
ou remover membros.
Se comparado aos trabalhos relacionados apresentados,
pode-se afirmar que o DeepTwitter combina as funcionali-
O DeepTwitter mostrou-se uma interessante e prática
ferramenta de Visualização de Informações. Através dele,
o usuário tem acesso, além da maioria das operações disponı́veis no site, a visualizações que lhe permite compreender informações que, utilizando apenas o site, seriam
desconexas.
A visualização da rede de contatos do usuário é o principal
exemplo disto, pois pode mostrar, de uma só vez, centenas
de membros da rede e as conexões entre eles. Desta forma,
pode-se detectar amigos em comum entre os mesmos, e
até mesmo encontrar amigos cuja presença no Twitter era
desconhecida. A rápida identificação, através de cores, dos
membros que seguem e são seguidos por um usuário selecionado, também tornam esta visualização muito importante,
dado que todas estas análises seriam impossı́veis de serem
realizadas através do site, pois exigiriam a visita a centenas
de perfis diferentes e às listas de seguidores contidas neles.
Além disso, o resultado da interação do usuário com esta
visualização (como seguir um novo amigo, por exemplo)
reflete-se em seu perfil no Twitter, comprovando, assim, sua
utilidade e praticidade.
A linha do tempo das atualizações, por sua vez, permite
verificar em que horários as pessoas costumam postar tweets
com mais freqüência, funcionalidade também indisponı́vel
no site do Twitter. Além disso, foram incluı́dos filtros nesta
visualização, que permitem encontrar rapidamente tweets
que contenham alguma palavra e/ou que foram escritos por
determinado usuário.
Atualmente está sendo implementada a visualização de
tag cloud (como a oferecida pelo TweetDeck), para informar
ao usuário que tópicos estão sendo comentados no Twitter
no momento. O próximo passo será o armazenamento dos
tweets pelo sistema, com a finalidade de: permitir uma
análise mais detalhada do comportamento dos usuários
oferecida pela linha do tempo; e efetuar requisições para
receber tweets a partir de determinada data, como feito pelo
TweetStats. Da mesma forma, salvar a rede de contatos do
usuário em formato XML também seria útil, pois evitaria a
exploração da rede e a criação de grupos cada vez que o
sistema fosse aberto.
Outros trabalhos futuros poderiam incluir: a
transformação do DeepTwitter em um Java applet,
para que fosse possı́vel acessá-lo rapidamente através de
um navegador sem a necessidade de efetuar download do
programa; e continuar o contato com uma psicóloga, a fim
de verificar se seria possı́vel e útil em sua área realizar
análises em cima das funcionalidades e visualizações que o
DeepTwitter oferece.
ACKNOWLEDGMENT
Este trabalho foi parcialmente financiado pela PUCRS.
R EFER ÊNCIAS
[1] D. Boyd and N. B. Ellison, “Social network
sites: Definition, history, and scholarship,” Journal of Computer-Mediated Communication, vol. 13,
no.
1-2,
November
2007.
[Online].
Available:
http://jcmc.indiana.edu/vol13/issue1/boyd.ellison.html
[2] J. Barr, Twitter, http://twitter.com/, July, 2009.
[3] F. B. Viégas and M. Smith, “Newsgroup crowds and authorlines: Visualizing the activity of individuals in conversational
cyberspaces,” in Proceedings of the 37th Hawaii International
Conference on System S. IEEE Computer Society, 2004,
p. 10.
[4] J. Heer and D. Boyd, “Vizster: Visualizing online social
networks,” in INFOVIS ’05: Proceedings of the Proceedings
of the 2005 IEEE Symposium on Information Visualization.
Washington, DC, USA: IEEE Computer Society, 2005, p. 5.
[5] P. V. Toolkit, Prefuse Visualization Toolkit, http://prefuse.org/,
July, 2009.
[6] M. B. dos Santos and C. de Souza, “Visualização temporal
de redes sociais com o ossnetwork,” in Proceedings of WIVA:
Workshop on Information Visualization and Analysis in Social
Networks, 2008, p. 10.
[7] TweetDeck, TweetDeck, http://tweetdeck.com, July, 2009.
[8] Seesmic, Seesmic Desktop, http://seesmic.com/desktop.html,
August, 2009.
[9] D. Cortesi, TweetStats, http://tweetstats.com, July, 2009.
[10] N. Productions, Twitter Friends Network
http://www.neuroproductions.be/
twitter friends network browser, August, 2009.
Browser,
Yamamoto,
Twitter4j
[11] Y.
http://yusuke.homeip.net/twitter4j/en/index.html,
2009.
library,
July,
[12] J. Hunter, JDOM, http://www.jdom.org, July, 2009.