Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
Cálculo de reputação em redes sociais
Edith Zaida Sonco Mamani
Texto para Qualificação de Mestrado apresentadaao
Instituto de Matemática e Estatísticada
Universidade de São Paulo
Programa: Ciência da Computação
Orientador: Prof. Dr. Marco Aurélio Gerosa
São Paulo, agosto de 2011
Cálculo de reputação em redes sociais
Esta é a versão submetida ao exame de quali�cação
de Edith Zaida Sonco Mamani
Comissão Julgadora:
• Prof. Dr. Marco Aurélio Gerosa (orientador) - IME-USP
• Prof. Dr. Flávio Soares Correa da Silva - IME-USP
• Prof. Dr. Alfredo Goldman Vel Lejbman - IME-USP
Resumo
Con�ança é a base sobre a qual um relacionamento é construído. A reputação está ligada à
con�ança, pois dependendo da reputação de uma pessoa, outra pode decidir se con�a nela ou não. É
possível inferir que as pessoas com boa reputação são mais con�áveis, pelo menos para aqueles que
nunca interagiram com elas, pois seu comportamento foi avaliado por outros. Com o avanço da tec-
nologia e da internet, esses conceitos também são adotados nas comunidades online.
O objetivo do presente trabalho consiste na criação de um modelo para o cálculo de reputação,
baseado em dados qualitativos e quantitativos provenientes da interação dos participantes em uma
rede social, a �m de potencializar a colaboração entre os usuários e fornecer-lhes reconhecimento e res-
ponsabilidades a partir de seu grau de reputação na comunidade. Para atingir esse objetivo é de�nida
uma modi�cação do algoritmo PageRank do Google para obter uma ordenação dos usuários a partir
de suas interações.
Para o desenvolvimento do trabalho, adota-se como estudo de caso a rede social Arquigra�a, um
projeto desenvolvido no contexto do Groupware Workbench voltado para o compartilhamento de fotos
da arquitetura brasileira.
Palavras-chave: Reputação, con�ança, interação, sistemas colaborativos, redes sociais, classi�cação.
i
ii
Sumário
Lista de Figuras vii
Lista de Tabelas ix
1 Introdução 1
1.1 Motivação e justi�cativas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 Contribuições . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.4 Organização do trabalho . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2 Comunidades online: Redes sociais baseadas na Web 5
2.1 Web 2.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1.1 Redes sociais baseadas na Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2 Sistemas colaborativos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2.1 Modelo 3C de colaboração . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.3 Inteligência coletiva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.3.1 Inteligência coletiva na Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.4 Considerações �nais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3 Sistemas de con�ança e reputação 11
3.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.2 Con�ança . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.2.1 De�nição de con�ança . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.2.2 Propriedades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.3 Reputação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.3.1 Desa�os para sistemas de con�ança e reputação . . . . . . . . . . . . . . . . . . . 15
3.3.2 Mecanismos de imunidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.3.3 Métodos para o cálculo de reputação . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.4 Considerações �nais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4 Trabalhos relacionados 21
4.1 Trabalhos relacionados no cálculo de con�ança e reputação . . . . . . . . . . . . . . . . . 21
4.1.1 Con�ança em redes sociais baseadas na web . . . . . . . . . . . . . . . . . . . . . 21
iii
iv SUMÁRIO
4.1.2 Recomendação por con�ança . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.1.3 Reputação em comunidades de prática . . . . . . . . . . . . . . . . . . . . . . . . 22
4.1.4 Cálculo de reputação de agentes de software baseado em testemunhos . . . . . . 22
4.1.5 Avaliação da posição dos usuários em redes sociais . . . . . . . . . . . . . . . . . 23
4.1.6 Sistemas de reputação na web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.2 Considerações �nais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
5 Um modelo para reputação e classi�cação 27
5.1 Descrição . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
5.2 Estimativa de cálculo de reputação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
5.2.1 Sistema de con�ança . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
5.2.2 Sistema de interação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
5.2.3 Reputação do usuário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
5.2.4 Mecanismos de imunidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
5.3 Classi�cação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
5.4 Avaliação da abordagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
5.4.1 Comparando a ordenação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
5.4.2 Tolerância a ruídos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5.4.3 Robustez contra ataques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5.5 Coleta de informação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5.5.1 Mecanismos de interação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5.6 Considerações �nais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
6 Plano de trabalho e cronograma 39
6.1 Plano de trabalho . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
6.2 Cronograma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
A Análise de domínio: Avaliação e cálculo de reputação em sistemas Web 2.0 41
A.1 FODA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
A.2 Estudo: Avaliação e cálculo de reputação em sistemas web 2.0 . . . . . . . . . . . . . . . 42
A.3 Análise das características . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
A.4 Considerações �nais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
B Groupware Workbench 49
B.1 Especi�cações do Groupware Workbench . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
B.2 Aplicações . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
B.3 Componentes existentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
B.4 Considerações �nais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Referências Bibliográ�cas 55
Índice Remissivo 59
Lista de Abreviaturas
BRETAM Breakthrough, Replication, Empiricism, Theory, Automation, Maturity
CSCW Computer Supported Cooperative Work
CCSL Centro de Competência em Software Livre
FODA Feature-Oriented Domain Analysis
GW Groupware Workbench
MVC Model-View-Controller
PR PageRank
RU Reputação de usuário
v
vi SUMÁRIO
Lista de Figuras
2.1 Mapa visual das técnicas usadas na Web 2.0 [Bud05] . . . . . . . . . . . . . . . . . . . . 6
2.2 Modelo 3C de colaboração [Ger06] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.1 Exemplo da propriedade de transitividade de con�ança. Adaptação de [Gol05] . . . . . . 14
3.2 Exemplo da propriedade de composição de con�ança. Adaptação de [Gol05] . . . . . . . 14
3.3 Derivação de con�ança a partir de cadeias transitivas paralelas. Adaptação de [JIB07] . 19
5.1 Esquema do modelo proposto que combina abordagens dos sistemas de interação e con-
�ança . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
5.2 Grafos das fontes de dados. No grafo a) designação de valores de con�ança, b) designação
de valores nas interações de contribuição, c) designação de valores nas interações de
avaliação e no último grafo é apresentada a integração das anteriores . . . . . . . . . . . 31
5.3 Mecanismos de avaliação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
A.1 Representação da reputação dos usuários nos sítios web Stackover�ow e Reddit . . . . . 44
A.2 Distintivos nos sítios web Kekanto e Stackover�ow . . . . . . . . . . . . . . . . . . . . . 45
B.1 Modelo BRETAM para o desenvolvimento de uma tecnologia. Adaptação de [Gai99] . . 49
B.2 Componente CommentMgr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
B.3 Widgets do componente Comentário no Arquigra�a . . . . . . . . . . . . . . . . . . . . . 52
B.4 Protótipo de Arquigra�a, AUN e Balcão de Dúvidas . . . . . . . . . . . . . . . . . . . . 53
B.5 Widget de adição de comentários em Arquigra�a . . . . . . . . . . . . . . . . . . . . . . 53
B.6 Widget de nuvem de tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
B.7 Componente de avaliação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
B.8 Componente Contador de visitas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
vii
viii LISTA DE FIGURAS
Lista de Tabelas
5.1 Faixas de valores de avaliação de con�ança . . . . . . . . . . . . . . . . . . . . . . . . . . 29
5.2 Comparativa de critérios da função de compromisso . . . . . . . . . . . . . . . . . . . . . 32
5.3 Lista de componentes usados no modelo . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
5.4 Faixas de valores de avaliação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
6.1 Cronograma de atividades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
A.1 Modelo de descrição de padrão de interação mediada por computador . . . . . . . . . . . 42
A.2 Lista de sítios web avaliados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
A.3 Lista das características dependentes da reputação . . . . . . . . . . . . . . . . . . . . . 43
A.4 Avaliação das características . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
ix
x LISTA DE TABELAS
Capítulo 1
Introdução
Muitas pessoas investem tempo, compartilham seus conhecimentos e ideias para um produto (con-
teúdo colaborativo), mas, como ter certeza se essas contribuições são de boa qualidade? Como saber se
as pessoas não são mal-intencionadas, compartilhando informação com erro ou mesmo falsa? [CF05].
Centenas de usuários participam ativamente em redes sociais virtuais, e toda a interação que eles
produzem gera dados de algum tipo; dados que são valioso e que podem ser aproveitados de diversas
maneiras. A interação em um grupo de pessoas com interesses comuns e que pertencem e interagem em
uma rede social especí�ca pode permitir o surgimento de um novo conhecimento por meio da colabo-
ração, mas tal e como é no mundo real, a con�ança no conhecimento de pessoas que não conhecemos
envolvem riscos [Gom09].
Segundo Cruz et al. [CGdMS07], o ponto fundamental em sistemas baseados na web é a partici-
pação dos usuários no processo de estabelecimento de con�ança, em que os principais obstáculos são o
ceticismo dos participantes, o isolamento e a demora em responder às exigências do grupo. Para Cruz
et al., é difícil crer e con�ar na competência das pessoas que não conhecemos, especialmente em um
cenário como o da internet, em que há uma grande quantidade de informações disponíveis por meio de
fontes não con�áveis.
No mercado são encontrados sistemas Web 2.0 com alto volume de interação social, algumas com
cálculo de reputação e alguma forma de classi�cação, contudo, em muitos casos, esse valor é obtido a
partir de dados quantitativos e não qualitativos. O objetivo principal deste trabalho consiste na criação
de um modelo para o cálculo de reputação, baseado em dados qualitativos e quantitativos provenientes
da interação dos participantes em uma rede social, para classi�cá-los e fornecer-lhes reconhecimento e
responsabilidades a partir de seu grau de reputação na comunidade. O modelo proposto utiliza uma
modi�cação do algoritmo PageRank do Google a �m de obter a reputação dos usuários a partir da
qualidade e quantidade de suas interações e avaliações.
Nessa abordagem, são propostos dois �uxos de entrada de dados. No primeiro, os dados são forneci-
1
2 INTRODUÇÃO 1.2
dos explicitamente pelos participantes, indicando um valor de con�ança suprido pelos próprios usuários
sobre usuários que pertencem a sua rede de amizade na comunidade. No segundo, os dados são obtidos
por meio de mecanismos de interação, caracterizados por meio de uma análise de domínio em sítios Web
2.0 e classi�cados utilizando o modelo 3C de colaboração (comunicação, coordenação e cooperação).
Esses mecanismos não só estimulam melhores interações, também criam �delidade dos usuários para
incrementar a participação [CGdMS07].
Como estudo de caso, adotamos uma rede social baseada na web para o estudo de con�ança e
reputação. O ambiente Arquigra�a1 propõe a construção coletiva e colaborativa de um acervo digital
de imagens e informação da arquitetura brasileira. Esse ambiente possibilita a interação e o compar-
tilhamento de informação de pessoas interessadas na arquitetura, arquitetos, estudantes, professores,
fotógrafos etc. O Arquigra�a é desenvolvido com o Groupware Workbench, um ferramental baseado em
componentes para a construção de sistemas colaborativos na Web 2.0.
1.1 Motivação e justi�cativas
Os sistemas de reputação são frequentemente usados em sítios web de comércio eletrônico, por
exemplo, eBay, Amazon, Mercado Livre, entre outros, mas também aparecem em sítios web como
Fóruns de discussão, Blogs etc.
Em sistemas colaborativos, para que o compartilhamento de informação seja constante, é preciso
que a informação trocada seja boa e não só em termos quantitativos, mas também em termos qua-
litativos. Em consequência, é necessária a natural presença de modelos de cálculo de reputação, que
incentivam o compartilhamento de conhecimento de boa qualidade e que também ofereçam um possível
reconhecimento dos usuários a partir da boa participação na comunidade.
1.2 Objetivos
O objetivo geral deste trabalho é:
• Propor uma abordagem baseada em dados quantitativos e qualitativos provenientes da interação
em uma rede social para poder distribuir responsabilidades entre os indivíduos da comunidade
tendo em vista a sua reputação.
Dentre os objetivos especí�cos podemos indicar:
• Realizar uma análise do domínio para mecanismos de interação social e de cálculo de reputação
em sistemas Web 2.0.
• Implementar mecanismos necessários para o cálculo de reputação no projeto Arquigra�a, tendo
em vista a geração de informações quantitativas e qualitativas.
1Disponível em: www.arquigra�a.org.br. Último acesso: 25 maio 2011.
1.4 CONTRIBUIÇÕES 3
• Propor uma abordagem/algoritmo para a utilização dos dados provenientes dos diversos meca-
nismos e calcular o grau de reputação dos usuários na comunidade.
• Utilizar o grau de reputação para realizar uma classi�cação dos usuários, a �m de poder outorgar
diferentes tipos de permissões de moderação na rede e implementar um sistema de recomendação
de usuários.
1.3 Contribuições
As principais contribuições do projeto de mestrado são as seguintes:
• Uma análise de domínio para mecanismos de interação social e reputação em sistemas Web 2.0.
• Uma abordagem de cálculo de reputação quantitativa e qualitativa.
• Implementação dos mecanismos no Groupware Workbench e no Arquigra�a de forma reusável
para outros contextos.
1.4 Organização do trabalho
O Capítulo 2 de�ne o que são comunidades online; mais especi�camente, são fornecidos os conceitos
básicos de redes sociais, sistemas colaborativos e inteligência coletiva, assim como uma breve explicação
do modelo 3C de colaboração. No Capítulo 3, introduzimos os conceitos e as propriedades dos termos-
chave deste trabalho, tais como con�ança e reputação, assim como os algoritmos usados para seu cálculo.
São apresentados alguns trabalhos correlatos no Capítulo 4. No Capítulo seguinte, é especi�cada a
abordagem proposta no nosso trabalho. Finalmente, apresentamos o plano de trabalho e o cronograma
de atividades no Capítulo 6. Em anexo constam: uma análise de domínio das interações sociais em
sistemas Web 2.0 (Apêndice A) e a de�nição do projeto Arquigra�a (Apêndice B).
4 INTRODUÇÃO 1.4
Capítulo 2
Comunidades online: Redes sociais
baseadas na Web
Neste capítulo são apresentados os conceitos relacionados ao contexto em que este trabalho se insere.
Esses conceitos são: Web 2.0, Redes Sociais na web, Sistemas Colaborativos e Inteligência Coletiva.
2.1 Web 2.0
O termo �Web 2.0� começou a ser usado em uma conferência no MediaLive International por Tim
O'Reilly em outubro do 2004; um ano e meio depois, foi consagrado com mais de 9,5 milhões de citações
no Google [O'R05]. A Web 2.0 é a segunda geração de serviços online, os sítios web se caracterizam por
potencializar a publicação, compartilhamento e organização da informação, além de incentivar a intera-
ção entre os participantes. Dessa forma, com a introdução da Web 2.0, as pessoas passaram a gerar os
seus próprios conteúdos e a disponibilizá-los na rede, potencializando o trabalho coletivo, a circulação
de informação e a construção do conhecimento social apoiada pela computação. Surge assim uma nova
inteligência, criada coletivamente a partir das interações entre os participantes [Pri06, Seg07, Ala08].
A Web 2.0 é uma combinação de tecnologias, novas estratégias mercadológicas e processos de co-
municação mediados pela informática. Na Figura 2.1 é apresentada uma nuvem de termos (chamada
de tag cloud) gerada a partir dos conceitos mais importantes na Web 2.0.
De acordo com O'Reilly [O'R05], não há como demarcar as fronteiras da Web 2.0. Por exemplo,
a Amazon vende produtos concorrentes a outras lojas virtuais com as mesmas descrições, mas o seu
êxito se baseia no desenvolvimento da ciência sobre o usuário. Ela usa as atividades dos usuários para
produzir melhores resultados de busca. Existem também outros, tais como o Google, com o seu algo-
ritmo PageRank; BitTorrent; eBay; Blogs entre outros. Segundo O'Reilly, quanto mais pessoas usarem
os serviços oferecidos, os serviços se tornarão melhores.
5
6 COMUNIDADES ONLINE : REDES SOCIAIS BASEADAS NA WEB 2.2
Figura 2.1: Mapa visual das técnicas usadas na Web 2.0 [Bud05]
2.1.1 Redes sociais baseadas na Web
As redes sociais baseadas na Web (WBSN - Web-based Social Network) tiveram um crescimento
muito rápido em número e âmbito de aplicação desde os anos 1990s [Gol05]. Com esse crescimento,
muitas pessoas (usuários) começaram a ser parte de alguma rede que lhes permitiram compartilhar
ideias e interagir com outros.
Segundo Recuero [dCR05], uma rede social é de�nida como um conjunto de dois elementos: atores
(usuários) e conexões entre esses atores. Os atores são representados pelos nós em uma estrutura de
grafo. Uma interação social tem um aspecto comunicativo entre um ator e outros atores, assim uma
relação social é constituída por esse tipo de interação; por sua vez, os denominados laços sociais são
constituídos por relações sociais. No �nal, um laço social é uma conexão entre dois atores.
Uma rede social é uma estrutura de relacionamentos entre entidades com propósitos comuns (pe-
ssoais, acadêmicos, pro�ssionais etc.) [Gom09]. O uso de uma rede social possibilita compartilhar in-
formação, música, conceitos e conhecimento; debater o conteúdo que é compartilhado e interagir com
outras entidades, compor grupos, comunidades com interesses a�ns. As redes sociais conectam pessoas
e possibilitam a comunicação, interação e/ou cooperação.
2.2 Sistemas colaborativos
Os sistemas colaborativos possibilitam o trabalho em equipe, tanto de forma síncrona (ao mesmo
tempo) quanto assíncrona (em tempos diferentes) e em lugares geogra�camente distantes. Esse tipo
de sistema fornece serviços de suporte para um grupo de pessoas comprometidas com um objetivo em
comum em algum projeto.
Existem diversos termos para designar o conceito de sistemas colaborativos. Em meados dos anos
1980s, os termos Groupware e CSCW (Computer Supported Cooperative Work) foram introduzidos
[Gru94]. O termo Groupware vem da junção das palavras group = grupo e software = programa de
2.2 SISTEMAS COLABORATIVOS 7
computação.
Alguns exemplos de aplicações groupware são: reuniões eletrônicas; caixas de correio; sistemas de
gerenciamentos de documentos; videoconferências; correio eletrônico etc.
2.2.1 Modelo 3C de colaboração
Foram identi�cados três pilares estritamente ligados e sobre os quais está um sistema groupware, a
�m de fornecer as funcionalidades necessárias para o trabalho em equipe: comunicação, coordenação e
cooperação [EGR91]. Essa maneira de analisar a colaboração é conhecida como modelo 3C [Ger06] e é
apresentada na Figura 2.2.
Figura 2.2: Modelo 3C de colaboração [Ger06]
Segundo Oliveira [dO10], um groupware oferece suporte e �exibilidade para prover e exercer simul-
taneamente a comunicação, a coordenação e a cooperação.
• Comunicação: A comunicação está relacionada com a troca de mensagens e informações assim
como a negociação de compromissos entre pessoas.
• Coordenação: A coordenação é relacionada ao gerenciamento de pessoas, suas atividades e
recursos para lidar com con�itos e evitar a perda dos esforços de comunicação e de cooperação.
• Cooperação: A cooperação é a produção que acontece em um espaço compartilhado, gerando
objetos de cooperação na realização de tarefas [Ger06].
Essas atividades não são realizadas isoladamente, as tarefas originam compromissos gerados durante
a comunicação, depois são gerenciadas pela coordenação e por último realizadas durante a cooperação
[FRGL05].
Para Michalsky et al. [MMG10], a interação dos usuários com aplicativos Web embasa novas formas
de colaboração, tirando proveito da coleta de informações de uso dos usuários para benefício dos próprios
usuários do sistema. Um exemplo desse tipo de colaboração é o contador de visualizações de objetos.
8 COMUNIDADES ONLINE : REDES SOCIAIS BASEADAS NA WEB 2.3
Normalmente os sistemas utilizam essa informação para de�nir a relevância dos objetos e ordenar os
resultados de uma busca.
2.3 Inteligência coletiva
O termo inteligência coletiva tem sido muito comentado atualmente. O avanço da computação e
do ambiente em rede adicionou uma nova dimensão a esse termo. A inteligência coletiva é uma área
ativa de pesquisa que antecede a web. Os cientistas das áreas de sociologia, comportamento de massa
e ciência da computação têm feito contribuições importantes para esse campo. A seguir apresentamos
algumas de�nições encontradas na literatura.
De acordo com Lévy [Lév03], a inteligência coletiva é distribuída por toda parte, incessantemente
valorizada, coordenada em tempo real e resulta em uma mobilização efetiva das competências. O funda-
mento e o objetivo da inteligência coletiva são o reconhecimento e o enriquecimento mútuo das pessoas.
Segaran [Seg07] de�ne a inteligência coletiva como uma combinação de comportamentos, preferências
ou ideias de um grupo de pessoas para criar novas percepções. Segundo Alag [Ala08], quando um
grupo de indivíduos colabora ou compete entre si, emerge uma inteligência ou comportamento que de
outra forma não existiria, isso é conhecido como inteligência coletiva. De acordo com Cavalcanti e
Nepomuceno [CN06], a inteligência coletiva é uma nova forma de produzir conhecimento em rede, por
meio de conexões sociais e de ações dirigidas por comunidades, que utilizam ferramentas interativas
disponíveis nos ambientes de rede. Portanto, o que é chamado de inteligência coletiva em rede é o resul-
tado do compartilhamento de informação, em um ambiente propício para a ampliação do conhecimento.
A capacidade de recolher informação de milhares de pessoas na Web abriu novas possibilidades. O
termo inteligência coletiva é usado para nomear o conhecimento que surge da interação e colaboração
dos usuários, por exemplo, quando fazem compras, pesquisas, buscam atividades de entretenimento
ou mesmo quando criam sítios web próprios [Seg07]. Todas esssas atividades são monitoradas para
obter informação. Exemplos dessa abordagem são a Wikipédia, que é uma enciclopédia criada integral-
mente da contribuição dos usuários; o Google, com o seu método de avaliação (algoritmo PageRank),
que obtém a informação dos milhares de usuários e realiza cálculos para criar novas informações que
melhoram a experiência do usuário, entre outros.
2.3.1 Inteligência coletiva na Web
Com a Web 2.0, passamos de aplicações centradas no conteúdo a aplicações centradas no usuário.
Segundo Alag [Ala08], a inteligência coletiva dos usuários, em essência, é:
• A inteligência extraída a partir de um conjunto de interações e contribuições feitas pelos usuários.
• O uso dessa inteligência como um �ltro para os conteúdos que são valiosos para os usuários de
uma aplicação.
2.4 CONSIDERAÇÕES FINAIS 9
Existem muitas maneiras de obter inteligência coletiva nas aplicações, uma muito difundida é a folk-
sonomia, que consiste em possibilitar aos usuários adicionarem tags ou palavras-chave na linguagem
dos próprios usuários a objetos especí�cos possibilitando sua classi�cação. As tags criadas também
são usadas para conectar usuários com interesses comuns. Uma visualização direta das tags criadas é
representada mediante uma nuvem de tag (tag cloud), em que, as tags têm maior tamanho de acordo
com a relevância da tag com o objeto. A Figura 2.1 é uma representação de uma tag cloud gerada a
partir dos conceitos mais importantes na Web 2.0, o tamanho da fonte representa a frequência das oco-
rrências. Existem outros métodos para obter inteligência, por exemplo, as avaliações e recomendações
de objetos, geração de conteúdo pelos usuários (wikis), busca de resultados por palavras especí�cas,
análise de conteúdo pelo per�l de usuário entre outros.
Para fazer uso da inteligência coletiva é preciso coletar dados. Alag identi�ca três tipos de in-
teligência coletiva, uma inteligência focada na informação explícita que os usuários proporcionam à
aplicação, outra focada na informação implícita que os usuários proporcionam dentro e fora da apli-
cação e a última que é uma inteligência derivada da análise das duas precedentes.
A de�nição de Inteligência Coletiva a ser usada neste trabalho será a de�nida por Alag.
2.4 Considerações �nais
A interação dos usuários em sistemas Web 2.0 possibilita a geração de novo conhecimento formado
a partir da informação compartilhada, os usuários atuam como �ltros ativos de informação
No próximo capítulo, abordamos conceitos relacionados aos sistemas de con�ança e reputação e a
sua aplicabilidade em serviços disponíveis na Web 2.0. Para dar suporte ao uso de sistemas de reputação,
será realizada uma análise de domínio a �m de veri�car as ocorrências das formas de coletas de dados
e os mecanismos utilizados em sistemas Web 2.0. O domínio explorado abarca sistemas que possuem
características de sistemas colaborativos e que tenham mecanismos para o cálculo de reputação de seus
participantes a partir da interação.
10 COMUNIDADES ONLINE : REDES SOCIAIS BASEADAS NA WEB 2.4
Capítulo 3
Sistemas de con�ança e reputação
Neste capítulo, são abordados os conceitos de con�ança e reputação no contexto de sistemas basea-
dos na Web, assim como suas propriedades, mecanismos e técnicas.
3.1 Introdução
As sociedades dependem fortemente da con�ança entre os membros [Fuk95]. A questão da con�ança
e reputação na web tem sido estudada desde seus primórdios. O sistema de avaliação do eBay tenta
usar as avaliações positivas e negativas dos clientes como uma medida de reputação do vendedor. O
algoritmo PageRank, usado pelo motor de busca do Google, também é uma métrica de con�ança para
a ordenação dos sítios web, por meio do número de ligações/hiperlinks a uma página especí�ca.
Para Golbeck e Hendler [GH04, Gol05], a con�ança depende de uma série de fatores que não podem
ser facilmente modelados num sistema computacional: a experiência do passado com uma pessoa e com
seus amigos, os fatores psicológicos impactados por uma vida de história e acontecimentos, a in�uência
das opiniões dos outros e os motivos para ganhar algo adicional são apenas alguns desses fatores.
3.2 Con�ança
Segundo Rogério da Costa [dC05], um dos aspectos essenciais que deve existir para a consolidação
de comunidades é o sentimento de con�ança entre as pessoas. A formação dessa con�ança depende da
capacidade de uma pessoa de se relacionar com outras, e de incluí-las em sua rede de referência. Esse tipo
de inclusão está ligada em reconhecer as habilidades dos outros, suas competências e conhecimentos.
Quando um indivíduo interage com os outros tem oportunidade de reconhecer os comportamentos,
intenções e valores do seu meio.
3.2.1 De�nição de con�ança
Na literatura, con�ança é um termo usado em muitas áreas, incluindo sociologia, psicologia, econo-
mia, ciência política, história, �loso�a e ciência da computação, portanto, cada área de trabalho de�ne
11
12 SISTEMAS DE CONFIANÇA E REPUTAÇÃO 3.2
de algum modo o conceito de con�ança [Sha87, Gol05].
Um dos trabalhos mais difundidos e referenciados no campo da ciência da computação sobre con-
�ança é a dissertação de doutorado de Stephen Paul Marsh [Mar94], �Formalising Trust as a Compu-
tational Concept�, mas, segundo Golbeck [Gol05], esse modelo é complexo e altamente teórico, sendo
inadequado seu uso em redes sociais, pois o foco do modelo está no uso da informação armazenada, a
partir dos históricos e comportamentos observados nos agentes. Nas redes sociais, os usuários atribuem
a con�ança como uma avaliação simples que descreve sua conexão com outros, sem histórico. Portanto,
parte da informação necessária para o modelo proposto por Marsh não pode ser obtida.
As redes sociais são ferramentas para usuários comuns da web. Logo, a de�nição de con�ança deve
ser o su�cientemente simples para que tais usuários entendam o que estão expressando e o façam com
precisão [Gol05]. No campo da sociologia e psicologia, a de�nição de con�ança é mais simples e clara.
Para Deutsch [Deu62], o comportamento de con�ança ocorre quando uma pessoa A, encontra-se
em uma situação em que perceba um caminho ambíguo. O resultado de seguir um caminho ou outro
pode ser bom ou ruim e essa decisão depende de outra pessoa, B. O impacto do resultado da escolha
do caminho ruim é maior do que o impacto do resultado da escolha do caminho bom, essa situação
motiva A tomar a escolha correta. A con�a que B fará o necessário para garantir um bom resultado.
Se A escolhe ir por um caminho pode-se dizer que fez uma escolha de con�ança, senão, A descon�a do
resultado a partir das ações da outra pessoa.
Uma observação importante sobre o termo con�ança é que ele não assume um valor único. Por
exemplo, a partir de um tema especí�co, que seria �gostar de música�, os usuários são capazes de for-
mar uma opinião geral de quanto eles con�am em outros sobre o gosto musical. Contudo, um usuário
pode con�ar em um amigo sobre canções românticas, mas não sobre rock. O gênero romântico pode ser
quebrado em músicas em inglês ou em português, ou, inclusive, dividido pelo tempo, música romântica
dos anos 1980 ou atual.
Existem muitas maneiras de considerar a con�ança. Neste trabalho será usada a de�nição de con-
�ança adotada por Golbeck e Hendler [GH06]: �con�ar em uma pessoa é um compromisso a realizar
uma ação baseada na crença de que as futuras ações dessa pessoa levarão a um bom resultado�, pois
estamos focados nos aspectos sociais. A ação e o compromisso por parte da pessoa que con�a não têm
de ser signi�cativos, a ação pode ser considerar a recomendação de uma música, por exemplo.
3.2.2 Propriedades
A seguir são apresentadas as propriedades do termo con�ança.
3.2 CONFIANÇA 13
Transitividade
A con�ança não é perfeitamente transitiva no sentido matemático. Se Ana con�a altamente em
Bruno e este con�a altamente em Caio não signi�ca que Ana vai con�ar altamente em Caio. Há, no
entanto, uma noção de que a con�ança é transmitida entre pessoas. Quando pedimos a um amigo de
con�ança por uma opinião sobre um encanador, estamos considerando a opinião do amigo e a incorpo-
ramos para ajudar a formar uma opinião preliminar do assunto. Geralmente, quando nos encontramos
com alguma pessoa desconhecida, é comum perguntar a amigos de con�ança por opiniões sobre o quanto
con�ar nessa nova pessoa [Gol05].
Existem dois tipos de con�ança que uma pessoa deve expressar: a con�ança em alguém e a con�ança
nas recomendações de terceiros acerca de outras pessoas. Ana pode con�ar em Bruno para recomen-
dar um encanador, mas pode não con�ar completamente em Bruno se ele recomendar a opinião de
outras pessoas sobre encanadores. Segundo Golbeck [Gol05], apesar dessa dicotomia, nas redes sociais
é preferível deixar que um único valor represente essas duas ideias. Um sistema de classi�cação único
é também mais compatível com a maneira tradicional de participação dos usuários nas redes sociais.
A de�nição de con�ança apoia a ideia de transitividade, a con�ança envolve a crença de que a
pessoa de con�ança terá uma ação que irá produzir um bom resultado. Seguindo com o exemplo do
encanador, se Ana pergunta a Bruno se Caio é um bom encanador, Ana vai usar a resposta de Bruno
para apoiar a sua ação de contratar ou não o trabalho de Caio, a razão é que Ana acredita que Bruno
vai dar informações que conduzirão a um bom resultado. Assim, se Bruno diz para Ana que deve con�ar
em Caio, Ana conta com a con�ança que tem em Bruno para desenvolver um pouco de con�ança em
Caio. A recomendação de Bruno se torna a base para o começo da con�ança em Caio. Ana terá um
pouco de con�ança em Caio, pois acredita em Bruno e sabe que ele irá tomar as medidas necessárias
para produzir um bom resultado.
A mesma argumentação pode ser estendida para criar cadeias maiores. A transitividade pode ser
representada na Figura 3.1, em que Ana tem uma opinião sobre Caio baseada na informação que Denise
compartilha com Bruno e que Bruno passa a Ana. No caso de Bruno, este con�a que as ações futuras
de Denise terão um bom resultado, por isso, pode informar a Ana sobre quão bom encanador é Caio,
pois Denise conhece diretamente Caio e ela pode lhe dar uma informação verdadeira. Assim há uma
cadeia de con�ança de pessoas, porém, o valor de con�ança pode ser degradada ao longo da cadeia de
conhecidos.
Composição
As recomendações acerca da integridade de uma pessoa desconhecida são usadas para gerar um
valor de con�ança. Na Figura 3.2, várias pessoas conhecem Caio e fornecem recomendações por meio
da rede de con�ança. Nesse caso, Ana tem de realizar uma composição de toda a informação que recebe,
e decidir se con�a ou não em Caio. Essa composição de con�ança é outra importante característica
para realizar o cálculo de con�ança.
14 SISTEMAS DE CONFIANÇA E REPUTAÇÃO 3.2
Figura 3.1: Exemplo da propriedade de transitividade de con�ança. Adaptação de [Gol05]
Figura 3.2: Exemplo da propriedade de composição de con�ança. Adaptação de [Gol05]
Personalização
Con�ança é uma opinião pessoal, por isso, diferentes pessoas podem ter opiniões distintas sobre a
integridade de um mesmo indivíduo. A de�nição de con�ança inclui a crença de que as ações das pessoas
de con�ança conduzirão a um bom resultado. O signi�cado de bom resultado muda de pessoa para
pessoa. Por exemplo, uma recomendação de uma mulher romântica sobre um �lme romântico vai ser
diferente de uma mulher que gosta de �lmes de terror. Uma vez que todos têm interesses, prioridades e
opiniões e que podem entrar em con�ito com os interesses, as prioridades e opiniões dos outros, quando
e quanto con�ar em uma pessoa varia de pessoa a pessoa. Raramente existe uma absoluta con�ança em
alguma pessoa. Porém, a con�abilidade deve ser calculada a partir da perspectiva de cada indivíduo e
a partir de seus próprios interesses.
Assimetria
A con�ança também tem assimetria, e re�ete um tipo especí�co de personalização. Para duas
pessoas envolvidas em um relacionamento, a con�ança não é necessariamente idêntica em ambos os
3.3 REPUTAÇÃO 15
sentidos. Por exemplo, pais e �lhos con�am claramente um no outro, mas em níveis diferentes. Assime-
tria pode surgir em qualquer relacionamento, e representações de relações de con�ança em modelos de
redes sociais devem permitir essas diferenças.
3.3 Reputação
A reputação de uma entidade usualmente é estimada com base em um histórico de relacionamentos
com outras entidades [Gom09, CGdMS07]. A reputação representa a opinião geral de um grupo sobre
alguém. Normalmente uma entidade com boa reputação tem in�uência em outras entidades, e induz
a ter uma alta con�ança nas interações com essa entidade. Não existe uma regra especí�ca para rela-
cionar con�ança com reputação, às vezes existem interesses particulares que podem in�uenciar esses
conceitos, por exemplo, um indivíduo pode con�ar em uma má pessoa, além de ter uma má reputação,
esse tipo de cenário existe pela propriedade de personalização em termos de con�ança. Como no con-
texto anterior, a con�ança é de�nida como um fator pessoal e subjetivo. A con�ança de um indivíduo
é derivada de uma combinação de referências recebidas e experiência pessoal, enquanto a reputação é
uma medida de con�ança coletiva, calculada com base nas referências ou quali�cações dos membros de
uma comunidade.
A diferença entre con�ança e reputação é ilustrada nas seguintes sentenças:
1. Eu con�o em você pela sua boa reputação.
2. Eu con�o em você apesar de sua má reputação.
Esta observação indica que con�ança é um fenômeno pessoal e subjetivo e que se baseia em vários
fatores ou evidências, e que alguns desses têm mais peso do que outros. A experiência pessoal nor-
malmente tem mais peso do que as referências de con�ança de segunda mão (como amigos, parentes,
entre outros) ou a reputação, mas, na falta de experiência pessoal, muitas vezes a con�ança tem que
ser baseada em referências de outros.
Os sistemas de reputação já são usados em aplicações comerciais bem-sucedidas online [JIB07], em
que, a con�ança que gera um vendedor com boa reputação é tão importante quanto a reputação dos
consumidores. Nesse cenário, a reputação tem uma grande in�uência nos preços dos serviços oferecidos,
especialmente com entidades de alto valor [MM02].
3.3.1 Desa�os para sistemas de con�ança e reputação
O fornecimento de apoio aos usuários na tomada de decisões é o objetivo principal dos sistemas de
con�ança e reputação. O valor dessa função de apoio à decisão depende da con�abilidade e precisão das
avaliações produzidas de con�ança e reputação. Segundo a IEEE [oEI90], a con�abilidade é a capaci-
dade de um sistema ou componente para executar suas funções requeridas sob condições estabelecidas
durante um período de tempo especi�cado. Entretanto, os sistemas de con�ança e reputação têm muitos
16 SISTEMAS DE CONFIANÇA E REPUTAÇÃO 3.3
tipos de vulnerabilidades que os torna alvos relativamente fáceis para ataques e manipulação [Jøs10].
Como exemplos de algumas vulnerabilidades que são encontradas na literatura temos:
• Computação Ad hoc: signi�ca que o algoritmo ou modelo para derivar os valores de con�ança
e reputação é fraco, o que signi�ca que o algoritmo pode produzir valores errôneos.
• Playbooks: consiste de uma sequência de ações que maximiza o ganho de um participante de
acordo com determinados critérios.
• Avaliações falsas: as avaliações fornecidas não re�etem a verdadeira opinião do avaliador.
• Discriminação: signi�ca que uma entidade fornece serviços de alta qualidade a um grupo e
serviços de baixa qualidade para outro grupo.
• Conspiração: signi�ca que um grupo de entidades coordena o seu comportamento e, por exem-
plo, fornece recomendações injustas ou falsas, ou pratica a discriminação.
• Proliferação: signi�ca que um agente oferece o mesmo serviço por vários canais diferentes,
aumentando assim a probabilidade de ser escolhido por um terceiro.
• Reputação tardia: signi�ca que o atacante usa o intervalo de tempo entre uma instância
de uma prestação de serviços e efeito de avaliação pelo correspondente serviço, por exemplo,
fornecendo vários serviços de baixa qualidade em um curto período antes que sua avaliação sofra
uma degradação signi�cativa.
• Reentrada/troca de identidade: signi�ca que uma entidade com baixa pontuação deixa uma
comunidade e, posteriormente, ingressa em outra comunidade com uma identidade diferente,
assim evita as consequências da baixa pontuação associada com a identidade anterior.
• Desequilíbrio no valor: este tipo de ataque é possível quando o peso de uma avaliação não
está relacionado ao valor da transação.
• O ataque Sybil: é quando uma única entidade estabelece múltiplas identidades falsas dentro
de um domínio dos sistemas de con�ança e reputação para fornecer múltiplas avaliações sobre o
mesmo serviço.
• Nenhum incentivo para fornecer avaliações: as entidades têm poucos incentivos para fornecer
avaliações.
• Di�culdade para obter feedback1 negativo: em alguns casos pode ser desa�ante obter feed-
backs negativos, porque podem temer algum tipo de represália por parte do avaliado.
1Tradução da autora. feedback: retorno de informação.De�nição de feedback : �é o procedimento que consiste no provimento de informação a uma pessoa sobre o desempenho,conduta, eventualidade ou ação executada por esta, objetivando orientar, reorientar e/ou estimular uma ou mais açõesde melhoria, sobre as ações futuras ou executadas anteriormente�. Fonte: Wikipédia
3.3 REPUTAÇÃO 17
• Atacantes notórios: existência de participantes cuja única �nalidade é perturbar a ordem em
uma comunidade, para quem os incentivos por bom comportamento ou a sanção por um mau
comportamento não têm efeito nenhum.
3.3.2 Mecanismos de imunidade
Cruz et al. [CGdMS07] fazem um compendio do trabalho de Dellarocas [Del04] sobre mecanismos de
imunidade e os efeitos de avaliações falsas (não con�áveis, não reais) em sistemas de leilão na internet e
propõem mecanismos de imunidade para mitigar as vulnerabilidades de sistemas de reputação e falsos
positivos e negativos.
• Anonimato: anonimato pode ser usado de uma maneira controlada. Em uma rede pode-se saber
as identidades de todos os participantes, mas manter a sua identidade oculta durante as transações
ou atribuir pseudônimos aos participantes previne as ações de má-fé entre eles e, assim, elimina
ou reduz os falsos negativos (bad-mouthing). No entanto, este mecanismo não é muito e�caz com
comportamentos discriminatórios ou falsos positivos produzidos por favoritismo entre os usuários
conhecidos (usuários conhecem o pseudônimo dos seus amigos).
• Mediana: o uso da media aritmética torna o sistema vulnerável para os usuários mal-intencionados
que tentam distribuir estrategicamente suas avaliações para maximizar a sua própria reputação
e minimizar as dos outros. A utilização da media no cálculo de reputação torna esse tipo de ação
mais difícil de realizar.
• Análise Frequente: se a reputação de um usuário é calculada por períodos de tempo, uma
mudança repentina nas suas avaliações mais recentes pode ser rapidamente identi�cada. Neste
caso, possíveis avaliadores desleais podem ser identi�cados por este mecanismo. Este mecanismo
pode ser usado contra o comportamento discriminatório dos falsos negativos.
3.3.3 Métodos para o cálculo de reputação
Segundo Jøsang et al. [JIB07], a pontuação de con�ança e reputação é calculada com base na
própria experiência, com referências de outras pessoas ou com uma combinação de ambos. Os sistemas
de reputação são tipicamente baseados em informações públicas, a �m de re�etir a opinião da comu-
nidade em geral, mas alguns sistemas usam como fonte de dados tanto as informações públicas quanto
as privadas. A informação privada é, normalmente, considerada mais con�ável do que a pública ou de
terceiras pessoas.
Alguns princípios para o cálculo de con�ança e reputação são descritos a seguir [JIB07]. Alguns
deles são utilizados em aplicações comerciais, enquanto outros têm sido propostos pela comunidade
acadêmica.
18 SISTEMAS DE CONFIANÇA E REPUTAÇÃO 3.3
Soma simples ou média das avaliações
A forma mais simples do cálculo da pontuação de reputação é a soma das avaliações positivas menos
a soma das avaliações negativas. Esse princípio é usado no fórum de comentários do eBay, descrito com
mais detalhe na seção 4.1.6. A vantagem desse princípio é que qualquer pessoa pode entendê-lo, e a
desvantagem é que é primitivo, portanto, brinda uma imagem pobre da reputação [Mil09]. Um esquema
um pouco mais avançado de calcular a reputação é a média das classi�cações, esse princípio é utilizado
em sistemas como Epinions e Amazon, descritos na seção 4.1.6.
Modelos mais avançados nessa categoria calculam um peso médio das avaliações, em que os pesos
das avaliações podem ser determinados por fatores como avaliadores de con�abilidade/reputação, idade
da avaliação entre outros.
Sistemas bayesianos
Os sistemas bayesianos tomam valores binários como entrada (positivo ou negativo) e são baseados
no cálculo de pontuação de reputação por meio de atualizações de estatística da função de densidade
de probabilidade, ou PDF (em inglês, Probability Density Function). A pontuação de reputação do
�a� a posteriori (ou seja, a atualização de �a�) é calculada por meio da combinação de �a� a priori (a
pontuação de �a� anterior) com a nova avaliação.
Modelos de con�ança discreta
Algumas vezes os seres humanos são melhores avaliando o desempenho na forma de declarações ver-
bais discretas que em medidas contínuas. Isso também é válido para determinar medidas de con�ança.
Por exemplo, a credibilidade de um agente x pode ser referenciada como muito con�ável, con�ável,
pouco con�ável ou não con�ável. Um grupo de usuários avaliadores y pode aplicar sua própria per-
cepção sobre a con�abilidade do agente x antes de tomar alguma referência em conta. Sempre que y
tenha uma experiência pessoal com x, isso pode ser usado para determinar a verdadeira con�ança nos
usuários avaliadores. A suposição é que, a experiência pessoal re�ete a verdadeira con�ança em x, e
que as avaliações sobre x que diferem da experiência pessoal indicam se alguns dos usuários avaliadores
subestimam ou superestimam suas avaliações.
Modelos de crença
Modelos de Crença são estruturas relacionadas com a Teoria das Probabilidades2, em que a soma
das probabilidades de todos os possíveis resultados não necessariamente resulta em 1, e a probabilidade
restante é interpretada como incerta.
Jøsang [JIB07, Jøs99] propôs um modelo de crença/con�ança chamado de opinion e denotado por
wAx = (b, d, u, a), o qual expressa a crença de �A� na verdade da declaração x. Nesse modelo, b, d e u
representam a crença, descrença e incerteza, respectivamente, e onde b, d e u ∈ [0,1] e b + d + u = 1.
2Fonte Wikipédia: pt.wikipedia.org/wiki/Teoria das probabilidades. Último acesso: 18 maio 2011.
3.4 REPUTAÇÃO 19
O parâmetro a ∈ [0,1] é chamado de atomicidade relativa e representa a taxa de probabilidade em
ausência de evidência, o qual é usado para calcular o valor da probabilidade de expectação de uma
opinião E(wAx ) = b+ au, o que signi�ca que a determina como a incerteza contribui em E(wA
x ). Como
exemplo, para a sentença x = �David é honesto e con�ável�, a opinião pode ser interpretada como
con�ança em David. Assim, assumindo que Ana precisa ter o carro reparado, ela pede para Bruno uma
recomendação de um bom mecânico. Quando Bruno recomenda David, Ana pergunta por uma segunda
opinião, assim procura Caio e pede sua opinião sobre David (essa situação é visualizada na Fig. 3.3).
Quando a con�ança e a referência de con�ança são expressas como opiniões, cada caminho de
con�ança transitiva é calculado com o operador de desconto, esses caminhos podem ser: Ana → Bruno
→ David e Ana → Caio → David. A ideia é que as referências de Bruno e Caio são descontadas em
função da con�ança de Ana em Bruno e em Caio. Com essas informações, ambos os caminhos podem
ser combinados usando um operador de consenso.
Figura 3.3: Derivação de con�ança a partir de cadeias transitivas paralelas. Adaptação de [JIB07]
Modelos fuzzy
A con�ança e a reputação podem ser representadas como conceitos linguísticos fuzzy, em que as
funções de membro descrevem até que ponto um agente é considerado con�ável. A lógica fuzzy provê
regras para o raciocínio como medidas fuzzy desse tipo.
Modelos de �uxo
Estes modelos calculam a con�ança e reputação por iterações transitivas por meio de loops (ciclos)
ou longas cadeias que podem ser chamadas de modelos de �uxo. Alguns modelos de �uxo assumem um
peso de con�ança/reputação constante para toda a comunidade, e esse peso pode ser distribuído entre
os membros da comunidade. Os participantes só podem incrementar seus pesos de con�ança/reputação
as custas de outros.
20 SISTEMAS DE CONFIANÇA E REPUTAÇÃO 3.4
3.4 Considerações �nais
A con�ança e a reputação são conceitos importantes na vida cotidiana das pessoas e esses conceitos
também foram adotados nas comunidades online.
A con�ança, além das propriedades descritas na Seção 3.2.2, possui as propriedades de autopreser-
vação e autoampliação [Gom09]. Segundo Golbeck e Hendler [GH06], essas propriedades se incrementam
em função de ações exitosas (por exemplo, um bom comentário, uma boa pergunta, uma boa resposta,
um bom conteúdo etc.), e se decrementam em caso de ações ruins (por exemplo, um comentário sem ló-
gica, conteúdo impróprio etc.). Algumas redes sociais, como LinkedIn 3, têm o conceito de con�ança na
sua rede de conexões, seu lema re�ete isso: �Encontrar as pessoas que precisas por meio das pessoas nas
quais con�as�. Nesse caso, criar um link com uma pessoa implica ter certa quantidade de con�ança nela.
Os sistemas de con�ança concernem uma visão particular, enquanto os sistemas de reputação são
uma visão do grupo. Os usuários (entidades) não precisam interagir várias vezes com um mesmo usuário
para obter reputações consistentes. Não existe a necessidade de procurar uma entidade para obter re-
comendações do comportamento de outras entidades.
Neste capítulo foram abordados os principais conceitos utilizados na literatura sobre con�ança e
sistemas de reputação, ademais, apresentamos a importância desses conceitos para o cenário da internet.
3Disponível em: www.linkedin.com/. Último acesso: 26 abr. 2011.
Capítulo 4
Trabalhos relacionados
Neste capítulo estabelecemos uma descrição de alguns dos trabalhos correlatos no cálculo de con-
�ança, reputação e classi�cação e seus respectivos métodos de cálculo.
4.1 Trabalhos relacionados no cálculo de con�ança e reputação
4.1.1 Con�ança em redes sociais baseadas na web
No trabalho apresentado por Golbeck [Gol05] como parte de sua tese de Doutorado, Computing and
Applying Trust in Web-Based Social Networks, o autor mostra como o uso das redes de con�ança em
redes sociais ajuda no cálculo de reputação e recomendação dos usuários da própria rede. Seu algoritmo
de inferência de con�ança, denominado TidalTrust, calcula o grau de con�ança de um usuário (um
usuário é representado como um nó numa rede) a partir da avaliação feita pelos seus vizinhos. Para
fazer a inferência do nó A (chamado de source) para o nó C (chamado de sink) o algoritmo começa
com o nó A, e considera cada um de seus vizinhos considerados bons (ou com boa reputação), os outros
são ignorados. Cada bom vizinho retorna um valor de avaliação do nó C. Então o nó A faz uma média
dessas avaliações e arredonda o valor �nal. Assim, dependendo da avaliação dos vizinhos, um valor de
reputação é inferido de A até C. O algoritmo descrito foi utilizado para cálculo de reputação em um
sistema de e-mail chamado de TrustMail. Nessa aplicação são mostradas as avaliações de con�ança dos
remetentes de cada mensagem. Os usuários podem classi�car suas caixas de entrada de acordo com a
con�abilidade do remetente. Em outra aplicação é utilizado seu modelo em um sistema de recomendação
de �lmes chamada de FilmTrust, em que a con�ança é usada para personalizar o sítio web de cada
usuário, exibindo as avaliações dos �lmes recomendados e ordenando por relevância de opiniões.
4.1.2 Recomendação por con�ança
DuBois et al. [DGKS09], usa o termo similaridade relacionado-o com con�ança. A con�ança entre
os usuários em uma rede social indica similaridade em suas opiniões. Milhares de pessoas são membros
de redes sociais online, e muitas dessas redes contêm informação de con�ança. Com o acesso a toda essa
informação, a con�ança é potencial para melhorar a maneira como as recomendações são feitas entre os
usuários. Se um usuário é agrupado em grupos de con�ança, esses agrupamentos podem ser úteis para
21
22 TRABALHOS RELACIONADOS 4.1
melhorar a qualidade das recomendações. Esse trabalho decorre do fato de que as pessoas tendem a
criar relacionamentos com quem têm interesses similares, seguindo a premissa �enquanto maior a con-
�ança maior é a similaridade�. Nos experimentos realizados foram usados dois componentes básicos: o
primeiro foi uma rede social com avaliações de con�ança entre os indivíduos, o segundo foi um conjunto
de avaliações dos itens realizados pelos membros da rede. O objetivo do trabalho não era criar o melhor
algoritmo de recomendação, mas demonstrar que o uso de agrupamentos baseados na con�ança tem
o potencial de melhorar a precisão das recomendações. Esse algoritmo foi testado na rede FilmTrust
comentada anteriormente, na qual foram comparados os resultados obtidos das recomendações usando
algoritmos tradicionais de recomendação e os resultados gerados a partir dos agrupamentos por con-
�ança. A comparação mostrou que as recomendações reforçadas com agrupamentos são estatisticamente
mais precisas que aquelas que não as utilizam.
4.1.3 Reputação em comunidades de prática
Atualmente, os sistemas de reputação mais utilizados estão na área de comércio eletrônico, assim,
diversos modelos foram propostos para obter algum valor de reputação. No trabalho apresentado por
Cruz et al. [CGdMS07, Cru08] propõe-se um modelo para o Cálculo de Reputação em Comunidades de
Prática1. Esse modelo considera possíveis tipos de interação usados em ambientes virtuais, estima es-
tratégias aplicáveis a esses tipos de interação e adota alguns mecanismos de imunidade2 contra possíveis
avaliações desonestas. A implementação é feita no ambiente ActivUFRJ3. O objetivo desse trabalho é
desenvolver um modelo para o cálculo de reputação em comunidades de prática para incentivar seus
membros a construir redes de con�ança (compartilhando entre os membros da comunidade artefatos
de interesse, conhecimentos e experiências sobre um tema).
4.1.4 Cálculo de reputação de agentes de software baseado em testemunhos
No trabalho apresentado por Guedes [dSPG07], propõe-se um modelo de reputação híbrido para
sistemas multiagentes abertos que reúnem as características de abordagens de Modelos de Reputação
centralizadas e descentralizadas. As reputações são promovidas pelos próprios agentes e também o sis-
tema centralizado fornece reputações seguras baseadas em testemunhas sobre comportamentos fora das
normas do sistema. Nesse modelo, os agentes são aptos a avaliar o comportamento de outros agentes,
tendo a capacidade de armazenar as reputações daqueles com os quais interagiram (modelo descentral-
izado). Na sua abordagem, assume que os sistemas multiagentes são compostos por organizações, em
que os agentes desenvolvem papéis. Assim, as organizações avaliam a reputação dos seus participantes a
partir de dados fornecidos (testemunhos) por outros que interagiram com os primeiros. Os testemunhos
fornecidos indicam o mau comportamento dos participantes no sistema. Um subsistema de julgamento
determina se o testemunho é verdadeiro. Com base no veredicto, o subsistema de reputação pune ao
1Comunidades de prática: são grupos sociais que compartilham uma paixão por algo que eles fazem e aprendem comofazê-lo melhor na medida que eles interagem regularmente. Matéria completa sobre Comunidades de Prática disponívelem: www.ewenger.com.
2Alguns mecanismos de imunidade são descritos na seção 3.3.23ActivUFRJ � sistema que apoia a formação de comunidades de prática no contexto acadêmico
4.1 TRABALHOS RELACIONADOS NO CÁLCULO DE CONFIANÇA E REPUTAÇÃO 23
agente que violou as regras, caso contrário, quem fez um mau testemunho é punido. Esse valor de repu-
tação é mantido como disponível para qualquer indivíduo do sistema. Se um agente �A� quer interagir
com outro �B�, então solicita o valor da sua reputação, tendo como resposta tanto o valor de reputação
do indivíduo em questão fornecido pelo próprio agente e outro pelo sistema, assim o �A� pode decidir
se interagir ou não.
4.1.5 Avaliação da posição dos usuários em redes sociais
Kazienko et al.[KMZ09] estudam um problema cientí�co interessante em redes sociais, a avaliação
da posição dos nós em um grafo dirigido e ponderado que representa uma rede social, em que os nós são
os usuários e os enlaces descrevem o �uxo de informações. A posição de um nó é usada para descobrir os
usuários fundamentais da rede, que são os mais importantes na população e que são potencialmente os
de maior in�uência e, provavelmente, os de mais alto nível de con�ança. Nesse trabalho, são consideradas
tanto a posição dos vizinhos dos nós como a força da conexão entre eles na rede. Na experimentação,
é usada uma rede de usuários de correio eletrônico para calcular a posição dos usuários e descobrir os
nós mais relevantes. Nessa abordagem usa-se uma modi�cação do algoritmo PageRank, cuja medida de
posição de nós leva em consideração não só suas conexões diretas, mas também a qualidade da conexão.
Essa variação está dada pela Equação 4.1:
NP (x) = (1− ε) + ε(NP (y1) ∗ C(y1 → x) + ...+NP (ym) ∗ C(ym → x)) (4.1)
Onde ε é um coe�ciente constante no intervalo de [0; 1], C(y → x) está de�nida como C(y → x) =A(y→x)∑m
j=1 A(y→xj), e A(y → x) é a função que denota a atividade do nó y dirigido ao nó x, por exemplo,
o número de correios eletrônicos encaminhados por y para x; m denota o número de todos os nós da
rede social.
Essa medida de posição viabiliza a análise do comportamento dos usuários na rede. No trabalho
subsequente [MKB09], a variação é comparada com outros métodos que são usados para avaliar a
posição dos usuários (chamada também de prestígio) em uma rede social. Nesse trabalho são usados
os seguintes métodos: prestígio ou centralidade por grau de entrada, centralidade por grau de saída,
centralidade por proximidade, centralidade por excentricidade e posição de nó. De acordo com os
experimentos realizados nesse trabalho, o cálculo de medidas, como excentricidade, centralidade por
proximidade ou posição de nó é o mais preciso, porém pode ser ine�caz em redes maiores. O método
posição de nó tem uma vantagem frente aos outros devido à �exibilidade que o coe�ciente constante
outorga.
4.1.6 Sistemas de reputação na web
Existem algumas aplicações online que têm sistemas de reputação com arquitetura centralizada
[JIB07], só para fazer menção:
24 TRABALHOS RELACIONADOS 4.1
1. Sites de comércio eletrônico Atualmente, os sistemas de reputação (como os sistemas de
recomendação) mais frequentemente utilizados estão presentes no comércio eletrônico. O sítio
�Mercado Livre�4 utiliza no seu processo de cálculo de reputação a quanti�cação, em que, as
avaliações são feitas após a compra ou venda de produtos. Aqui é utilizada uma arquitetura
centralizada e não leva em conta o histórico de operações dos usuários, pois cada usuário tem o
mesmo peso quando faz as avaliações (não importando se o usuário é antigo ou novo) [Lag07].
O Fórum de Comentários do eBay possibilita tanto aos consumidores como aos vendedores avaliar-
se mutuamente em positivo, negativo ou neutro (1, -1, 0) depois de completada cada transação,
tendo a possibilidade adicional de adicionar comentários (positivos ou negativos). O resultado do
cálculo de reputação é a soma das avaliações positivas menos a soma das avaliações negativas. O
sistema de reputação do eBay é um pouco primitivo e pode, algumas vezes, ser enganador.
2. Sítios web especialistas
Existem sítios web especializados que têm um conjunto de usuário que estão dispostos a respon-
der perguntas em suas áreas de especialização. Dependendo da qualidade da resposta, a pessoa
que fez a pergunta pode avaliar diversos aspectos como clareza e atualidade.
O sistema de reputação em AllExperts5 usa os aspectos: clareza, conhecimento da resposta e
oportunidade e polidez, em que as avaliações são dadas no intervalo [1, 10]. A pontuação de
cada aspecto é uma média numérica das avaliações recebidas. O número de perguntas que um
especialista recebeu também é apresentado para indicar a pontuação do prestígio geral que é a
soma de todas as avaliações que recebeu o especialista.
O sítio web AskMe6 é um sistema restrito para grupos de usuários de empresas e seus funcionários.
Basicamente oferece um serviço de busca online, que ajuda aos usuários compradores encontrar
informações detalhadas sobre as empresas que satisfaçam suas necessidades, e às empresas a al-
cançar os clientes, melhorando a e�cácia dos gastos em marketing. AskMe possibilita a adição de
fotos vídeos, catálogos, registro de popularidade entre outros.
Advogato7 é uma comunidade para desenvolvedores de software livre. O mecanismo de cálculo
é por meio do �uxo de reputação, em que os membros são os nós e as arestas são as avaliações
entre os nós. Os membros são classi�cados como observer (a reputação mais baixa), apprentice
(reputação média baixa), journeyer (reputação média alta) ou master (reputação alta).
3. Sítios web de revisão de produto
4Disponível em: www.mercadolivre.com.br.5Disponível em: www.allexperts.com.6Disponível em: www.askme.com.7Disponível em: www.advogato.org.
4.2 CONSIDERAÇÕES FINAIS 25
Sítios web de revisão de produtos têm um conjunto de usuários que proporcionam informação
a outros consumidores com o propósito de fazer melhores eleições de compra. Os sistemas de
reputação nesses sítios web se aplicam tanto aos produtos quanto aos revisores. Alguns exemplos
são: Epinions8, BizRate9, Amazon10 entre outros.
Também existem outras aplicações que utilizam sistemas de reputação, por exemplo, o software
antivírus Avast11, que possui um esquema de reputação de sítios web. A funcionalidade WebRep do
Avast está baseada em informações fornecidas pela comunidade de usuários do software relacionadas
ao conteúdo e/ou segurança dos sítios web visitados. Com este software é possível ver a reputação dos
sítios navegados por meio de motores de busca populares.
4.2 Considerações �nais
Neste capítulo foram expostos alguns dos trabalhos relacionados encontrados na literatura e que
apresentam modelos para o cálculo de reputação e algumas vantagens do cálculo de con�ança para
encontrar recomendações mais exatas e personalizadas.
8Disponível em: www.epinions.com.9Disponível em: www.bizrate.com.
10Disponível em: www.amazon.com.11Disponível em: www.avast.com.
26 TRABALHOS RELACIONADOS 4.2
Capítulo 5
Um modelo para reputação e classi�cação
Neste capítulo é proposto um modelo para o cálculo de reputação em Redes Sociais, as principais
fontes de dados, a classi�cação dos usuários e os métodos para avaliar o ferramental desenvolvido. No
�nal do capítulo são abordados os métodos de coleta de informação.
5.1 Descrição
O modelo proposto parte da premissa de que, dentro de uma comunidade, os participantes intera-
gem, compartilham conteúdo e têm critérios de avaliação da qualidade dos dados que, dependem do
grau de familiaridade ou domínio de conhecimento na área. Nesse sentido podemos considerar que cada
usuário tem um grau de reputação que re�ete sua interação no sistema.
Em sistemas colaborativos, as fontes de informação são diversas, desde a criação de um novo con-
teúdo, até sua avaliação. Além disso, os usuários conhecem e interagem com outros usuários, compar-
tilham atividades e, em alguns casos, criam laços de amizade (rede de relacionamento).
A con�ança cumpre um papel importante no compartilhamento de conteúdo, os dados que são
criados por usuários com boa reputação são mais valorados no sentido de qualidade. Cada item criado
pode ser avaliado mediante algum mecanismo, por exemplo, os comentários, as fotos, as perguntas e as
respostas podem ser avaliados mediante o uso de estrelinhas, gostou não gostou e até mesmo por meio
de uma denúncia. Outros tipos de ações, como visita a uma página ou uso de tags, podem ser avaliados
pela quantidade.
Nesse cenário, foi idealizado o esquema da Figura 5.1 que combina tanto abordagens quantitativas
como qualitativas. Nesse modelo, o ponto de partida é a informação fornecida pelos usuários, que está
dividida em dois tipos de entrada:
1. Mediante a rede de con�ança: os próprios usuários designam valores de con�ança aos usuários
da sua rede de amizade ou relacionamento.
27
28 UM MODELO PARA REPUTAÇÃO E CLASSIFICAÇÃO 5.2
2. Mediante mecanismos de interação: os mecanismos de interação são aqueles que capturam as
ações dos usuários, como quando realizam: comentários, fazem upload de fotos, avaliam itens, entre
outros. Esses mecanismos podem ser de avaliação ou de contribuição. Foi realizada uma análise
de domínio (Apêndice A) em sítios web que utilizam sistemas de reputação, para a identi�cação
desses mecanismos.
Com toda essa informação é possível criar uma abordagem para o cálculo de reputação dos parti-
cipantes.
Figura 5.1: Esquema do modelo proposto que combina abordagens dos sistemas de interação e con�ança
5.2 Estimativa de cálculo de reputação
Neste trabalho é usada uma modi�cação do algoritmo PageRank do Google para o cálculo de repu-
tação dos usuários de uma rede social, com base na qualidade e quantidade das interações, assim como
nas avaliações de con�ança feitas pelos participantes.
O algoritmo original, introduzido por Brin e Page [BP98], calcula o valor e importância ou qualidade
de páginas da web, usa o número de ligações a uma página como um voto para o sítio web, quanto
mais votos tenha uma página, a página deve ser mais importante. Além disso, a importância da página
que outorga o voto determina o quão importante é o voto em si. A Equação 5.1 é a original que foi
publicada quando o PageRank foi proposto.
PR(A) = (1− d) + d
(PR(t1)
C(t1)+ ...+
PR(tn)
C(tn)
)(5.1)
Onde t1...tn são páginas que ligam à página A, a função C, ou função de compromisso, representa
o número de enlaces de saída que uma página tem, a variável d é um fator de amortecimento.
5.2 ESTIMATIVA DE CÁLCULO DE REPUTAÇÃO 29
Neste trabalho é realizada uma modi�cação do algoritmo PageRank, seguindo como base o trabalho
desenvolvido por Musiaª et al. [MKB09, KMZ09]. A estimativa da proposta está dividida em três partes:
na primeira, de�ne-se o sistema de con�ança, nesta seção é indicado como será realizado a designação
dos valores de con�ança aos usuários a partir da sua rede de relacionamento. Na segunda, apresenta-se
o sistema de interação, aqui são de�nidos os dois tipos de interações presentes no modelo. Na terceira,
indica-se a formulação geral do sistema de reputação.
5.2.1 Sistema de con�ança
Parte da fonte de dados do modelo deste trabalho é a rede de con�ança dos participantes. Um
usuário tem um conjunto de amigos na sua rede de amizade. O laço de amizade criado por ele com
outros pode ser produto de algum acontecimento prévio como, por exemplo, ambos os participantes se
conheciam anteriormente na vida real, eles são colegas em algum curso, se conheceram na rede e decidi-
ram adicionar-se, entre outras coisas. Na criação dessa rede de con�ança, os usuários designam valores
de con�ança aos membros da sua rede de relacionamento, a faixa de valores está dentro do intervalo
de [0...1] (Tabela 5.1). Esses valores indicam quanto um participante con�a em outro e está sujeito
à premissa geral: �Compartilhar informação de qualidade�. Essa premissa de�ne que: �Eu, o usuário
y, con�o que o usuário x compartilhará informação de qualidade e relevância para a comunidade�. A
con�ança, nesse caso, é de�nida como um valor de probabilidade de que a ação do usuário x levará
a um bom resultado; no entanto, a premissa pode ser aprofundada ainda mais, como, por exemplo,
compartilhar comentários de qualidade, compartilhar boas fotos, avaliar conteúdo, editar informação,
criar perguntas, fornecer respostas, entre outros, que podem servir para re�nar os resultados no cálculo
de reputação (realizando o cálculo por cada habilidade), mas para os �ns deste trabalho, será utilizada
só uma medida de con�ança - a premissa geral.
Con�ança Faixa (c)
Nenhuma con�ança c = 0
Con�ança baixa 0 < c ≤ 0, 2
Con�ança moderada 0, 2 < c ≤ 0, 4
Con�ança alta 0, 4 < c ≤ 0, 6
Con�ança muito alta 0, 6 < c ≤ 0, 8
Con�ança absoluta 0, 8 < c ≤ 1, 0
Tabela 5.1: Faixas de valores de avaliação de con�ança
Na Figura 5.2(a) é apresentado um esquema de rede de con�ança, em que os usuários são repre-
sentados pelos nós w, x, y e z, cada um deles tem um conjunto de amigos na sua rede de amizade (os
relacionamentos são representados pelas setas bidirecionais) e as avaliações efetuadas pelos usuários são
usadas para calcular o valor da reputação. O sistema de con�ança tem como objetivo o fornecimento
desses valores ao sistema de reputação.
30 UM MODELO PARA REPUTAÇÃO E CLASSIFICAÇÃO 5.2
5.2.2 Sistema de interação
O sistema de interação obtém os dados por meio dos mecanismos de interação (veja a Seção 5.5.1).
Essas interações podem ser de contribuição ou avaliação. As interações de contribuição não pre-
cisam de mecanismos de avaliação para medir a qualidade da contribuição, pois simplesmente indicam
que o usuário fez contribuições no sistema e são capturadas mediante mecanismos de contribuição.
Exemplos desse tipo de interação são: adicionar comentário, fazer upload de foto, avaliar binômios,
criar novas perguntas, iniciar nova discussão, criar novos tags, entre outros.
Na Figura 5.2(b) é apresentado um esquema desse tipo de interação, em que a quantidade de in-
terações realizadas por cada usuário é armazenada em cada nó do grafo.
Por intermédio dos mecanismos de avaliação são capturados os valores das interações de avalia-
ção, esses valores representam a qualidade das interações de contribuição. Cada participante pode ter
realizado diferentes contribuições, que chamaremos de itens, e cada item pode ser avaliado por diversos
participantes, assim está garantido que a estimativa de reputação dos itens seja baseada em opiniões
distintas.
Na Figura 5.2(c) é apresentada uma rede baseada nas avaliações de interações realizadas pelos
usuários, neste tipo de rede não existe a necessidade de os usuários avaliadores dos itens estarem
relacionados a alguma rede de relacionamento ao usuário do item avaliado. Outro aspecto a ser levado
em consideração é que qualquer usuário y pode avaliar os k itens de qualquer outro usuário x, onde k
é o número de itens compartilhados pelo usuário x.
5.2.3 Reputação do usuário
Os dados originados a partir da rede de con�ança e dos mecanismos de interação são considerados.
Na Figura 5.2 são apresentados as relações dos usuários e os diferentes valores que podem ser obtidos,
como os de con�ança, contribuição e avaliação. Os enlaces de con�ança são aqueles em que os usuários
designam valores de con�ança aos usuários da sua rede de relacionamento. Os dados de contribuição
constituem o valor das contribuições dos usuários. Os enlaces de tipo avaliação são aqueles em que os
usuários designam valores de qualidade de algum item de outro usuário. No último grafo da �gura é
apresentada a integração dos grafos anteriores.
A modi�cação do algoritmo PageRank para o cálculo de reputação dos usuários (RU) usa os valores
das fontes de dados descritas anteriormente. Na Equação 5.2 é apresenta essa modi�cação, em que
RU(x) é a reputação do usuário x; trust(x) deriva das redes de con�ança; rate(x), provém das avaliações
dos usuários; e contribution(x) representa o valor da contribuição de x:
RU(x) = (1− d) + αd(trust(x)) + βd(rate(x)) + γd(contribution(x)) (5.2)
A soma dos pesos de cada fonte de dados �ca a critério do sistema em que o modelo será usado, mas
5.2 ESTIMATIVA DE CÁLCULO DE REPUTAÇÃO 31
Figura 5.2: Grafos das fontes de dados. No grafo a) designação de valores de con�ança, b) designação devalores nas interações de contribuição, c) designação de valores nas interações de avaliação e no último grafo éapresentada a integração das anteriores
a soma desses pesos α, β e γ tem de ser igual a 1, assim o algoritmo não sofre maiores alterações.
Cada fonte de dados tem pesos diferentes, que dependem dos objetivos e prioridades do sistema, por
exemplo, em sistemas de leilão, o valor das interações de tipo avaliação (rate) pode ser mais impor-
tante do que o valor das contribuições (contribution), uma vez que para eles pode ser mais relevante
os depoimentos dos usuários. Neste trabalho, o valor dos pesos levado em consideração será o seguinte:
α = 0, 2; β = 0, 4; γ = 0, 4. Isso porque se dará maior importância aos dados qualitativos e quantita-
tivos fornecidos pelos usuários na sua interação pela rede social, pois parte dos objetivos é incentivar
aos usuários a compartilhar em maior quantidade e qualidade. Os dados da rede de con�ança, por
serem pouco frequentes terão um peso menor.
A de�nição desse mecanismo de designação de pesos teve como base o trabalho desenvolvido por
Ludwig et al. [LPH09], em que se de�nem os pesos para cada fonte de dados.
O valor de trust, para o usuário x, está de�nido pela seguinte equação:
trust(x) = RU(y1) ∗ C(y1 → x) + ...+RU(yn) ∗ C(yn → x) (5.3)
Em que y1, ..., yn são conhecidos de x que estão em relação direta com ele e forneceram um valor
de con�ança nas habilidades de x. Aqui é modi�cada a função de compromisso C(y → x), com base
no trabalho de Musiaª et al. [MKB09, KMZ09]. Essa modi�cação está de�nida pela Equação 5.4:
32 UM MODELO PARA REPUTAÇÃO E CLASSIFICAÇÃO 5.2
C(y → x) =
∑Av(y → x)
q(y)(5.4)
Em que∑Av(y → x) representa a soma dos valores das avaliações do usuário y aos itens do usuário
x; q(y) representa o número total de avaliações feitas pelo usuário y. Em nossa abordagem, são feitas al-
gumas variações aos critérios originais da função C(y → x) [KMZ09], e estas são descritas na Tabela 5.2.
Critério original Critério modi�cado
1. O valor da função de compromisso estáno intervalo [0...1] : ∀ (x, y ∈ N), C(y →x) ∈ [0...1], onde N é o conjunto de todosos nós da rede.
O valor da função de compromisso, alémde estar no intervalo [0...1], pode assumirvalores negativos, isto porque as avalia-ções dos usuários podem ser de chamadasde atenção a conteúdo inapropriado, porexemplo.
2. A soma de todas as funções de compro-misso tem de ser igual a 1, para cada nóda rede. ∀(x ∈ N),
∑x∈N C(x→ y) = 1.
A soma de todas as funções de compro-misso tem de ser menor ou igual a 1, paracada nó da rede. ∀(x ∈ N),
∑x∈N C(x→
y) ≤ 1. Isto é devido ao uso das interaçõesde avaliação, o valor das avaliações variamno intervalo de [0...1].
3. Se não existe uma relação de y para x,então C(y → x) = 0.4. Se um membro y não é ativo paraninguém e outros n membros xi, i =1, ..., n são ativos para y, então, para sa-tisfazer o critério 3, a soma 1 é distribuídaequitativamente entre todos os conhecidosde y. ∀(xi ∈ N), C(y → xi) = 1/n.5. As relações não são re�exivas e, a res-peito do critério 3, a função de compro-misso de um nó para ele mesmo é igual a0: ∀ (x ∈ N), C(x→ x) = 0.
Permite relações re�exivas. A função decompromisso do nó x para ele mesmo estáde�nida pela Equação 5.8, isto devido àpresença das interações de contribuição,em que não intervêm as avaliações de ou-tros usuários e só depende do usuário x.
Tabela 5.2: Comparativa de critérios da função de compromisso
Na Equação 5.5 é de�nido o valor da variável rate. Um parâmetro adicional para obter o valor de
rate é a similaridade ou o grau de concordância do per�l do usuário que faz uma avaliação referente
ao conteúdo avaliado, por exemplo, o valor da avaliação de um usuário especialista em arquitetura
moderna, que avalia uma foto de arquitetura antiga, não pode ser a mesma que a avaliação de outro
usuário que é especialista em arquitetura antiga. Esse parâmetro de similaridade ou concordância está
fora do alcance deste trabalho, mas pode ser considerado em um estudo futuro na melhora do modelo.
Por enquanto, o valor de sim(z → x) = 1, onde z é um nó que avalia o nó x (Equação 5.6).
5.2 ESTIMATIVA DE CÁLCULO DE REPUTAÇÃO 33
rate(x) = RU(z1) ∗ C(z1 → x) ∗ sim(z1 → x) + ...+RU(zn) ∗ C(zn → x) ∗ sim(zn → x) (5.5)
rate = RU(z1) ∗ C(z1 → x) + ...+RU(zn) ∗ C(zn → x) (5.6)
O último parâmetro do algoritmo modi�cado é contribution, ele representa o valor das contribuições
feitas pelo usuário x, ao respeito dos outros usuários. Na Equação 5.7 apresenta-se esse valor.
contribution(x) = RU(x) ∗ C ′(x) (5.7)
Note que, neste caso, é usada outra função C ′(x) que é diferente da função de compromisso descrita
anteriormente. A função de compromisso C ′(x) está de�nida pela Equação 5.8. Em que contribution(x)
representa o valor das contribuições que o usuário x fez. Para normalizar os dados, utilizamos o valor
de∑j
i=1 contribution(xi) que representa o valor de todas as contribuições dos usuários da comunidade.
C ′(x) =
∑contribution(x)∑j
i=1 contribution(xi)(5.8)
Então, a Equação 5.2 �ca da seguinte forma:
RU(x) = (1− d) + αd(trust(x)) + βd(rate(x)) + γd(contribution(x))
RU(x) = (1− d) + αd(RU(y1) ∗ C(y1 → x) + ...+RU(yn) ∗ C(yn → x))
+βd(RU(z1) ∗ C(z1 → x) + ...+RU(zn) ∗ C(zn → x))
+γd(RU(x) ∗ C ′(x))
Para calcular a reputação de uma pessoa dentro de uma rede social, o algoritmo é usado iterati-
vamente. Em que, o valor inicial RU(xi) = 1, ∀(xi ∈ N) e N é o conjunto de todos os nós da rede.
O número de iterações pode ser ajustado pela aplicação por meio de uma condição de parada que
denote uma diferença máxima aceitável de RUk(x)−RUk−1(x) para cada membro x da rede, onde k
representa o número da iteração.
5.2.4 Mecanismos de imunidade
Dentre os mecanismos de imunidade a serem levados em consideração estão:
• Regras para o cálculo de reputação.
• Controle de peso dos avaliadores por meio da reputação.
• Mecanismos de login de usuário.
• Período de tempo, a �m de evitar favorecer os membros mais antigos do sistema e discriminar os
membros novos, no cálculo de reputação será considerado as interações dos usuários dos n dias
34 UM MODELO PARA REPUTAÇÃO E CLASSIFICAÇÃO 5.4
anteriores à data do cálculo de reputação. O valor de n �ca a critério do sistema em que o modelo
será usado.
5.3 Classi�cação
Durante o processo do cálculo de reputação, uma lista de usuários é gerada. Essa lista possui, em
ordem decrescente, os usuários que melhor contribuíram para o sistema. Em reconhecimento ao esforço
dos usuários são outorgados alguns distintivos de acordo ao seu grau de reputação. Esses distintivos
podem ser:
• Ouro: usuários com esse distintivo são os administradores do sistema. Eles gerenciam as regras
do negócio.
• Prata: usuários com esse distintivo são moderadores do sistema, aos quais são oferecidos dife-
rentes responsabilidades e privilégios.
• Bronze: demais usuários que tenham realizado algumas tarefas como fazer upload de fotos,
avaliar comentários, etc.
Com esta simples classi�cação se espera poder viabilizar a sustentabilidade da rede social pelos
próprios usuários. A classi�cação vem com o propósito de estimular e incentivar a participação ativa
dos membros, e os distintivos são criados com a �nalidade de tornar a experiência do usuário mais
amigável.
5.4 Avaliação da abordagem
Além de calcular a reputação dos usuários de uma rede social baseada em dados qualitativos e
quantitativos, o algoritmo deve ser e�ciente, tolerante e robusto contra manipulações. Para avaliar a
proposta, será adotada uma rede social baseada na web - o ambiente Arquigra�a - e sobre ela serão
comparados os algoritmos, o primeiro calcula a reputação dos usuários com base nas avaliações de
outros usuários e o segundo calcula o prestígio dos usuários a partir de seus relacionamentos.
1. O modelo ReCoP [Cru08], é para o cálculo de reputação em Comunidades de Prática. Esse modelo
adota alguns mecanismos de imunidade contra possíveis avaliações desonestas.
2. O modelo de�nido por Musiaª et al. [KMZ09] calcula o posição dos usuários uma rede. Essa posição
pode ser usada para descobrir os usuários fundamentais da rede, que são os mais importantes na
população e que têm potencialmente uma maior in�uência sobre outros.
5.4.1 Comparando a ordenação
Depois de ordenar a lista de usuários pelo grau de reputação, estas serão comparadas usando o
coe�ciente de concordância Kendall [Ken48]. Ele determinará a similaridade entre as listas ordenadas.
5.5 COLETA DE INFORMAÇÃO 35
5.4.2 Tolerância a ruídos
Para examinar a tolerância dos algoritmos contra ruídos, serão medidas as mudanças na pontuação
e na ordenação quando adicionadas ou removidas avaliações aleatoriamente. Essas avaliações correspon-
dem a avaliações falsas ou perdidas. Os valores obtidos a partir do grafo modi�cado são comparados
com os do grafo original, medindo o impacto Is na pontuação, o impacto está dado pela Equação 5.9:
Is =N∑i
|S′i − Si| (5.9)
Onde Si e S′i correspondem aos escores obtidos a partir do grafo original e o modi�cado.
5.4.3 Robustez contra ataques
As atividades maliciosas são comuns nas redes sociais, em particular quando os usuários manipulam
os dados para ganhar reputação [MZ04]. Um exemplo de manipulação é chamado de Sybil Attack
[Dou02] ou ataque sybil, em que alguns usuários deliberadamente criam entidades falsas dentro de um
domínio de con�ança e reputação para fornecer múltiplas avaliações sobre o mesmo objeto. Para lidar
com esse problema, será simulada uma situação em que um usuário cria n identidades falsas e realiza
um conjunto de avaliações, depois serão comparados os valores de reputação dos algoritmos.
5.5 Coleta de informação
Para a coleta de informação, trabalharemos sobre o projeto Groupware Workbench, nesta situação
usaremos como estudo de caso o Arquigra�a (Apêndice B).
Na Tabela 5.3 é apresentada a lista de componentes que será usada na realização do objetivo do
trabalho, assim como a lista de atividades referentes a cada componente a ser tomado em consideração.
Os componentes Georeference, Upload, Category, Management, Pro�le, Role, Album e Recommend
não serão considerados para o cálculo de reputação. No caso do componente Rating, está incluído na
lista, pois por meio dele são realizadas as avaliações dos outros componentes. O componente Friends
será utilizado para a obtenção dos dados da rede de con�ança de usuários e o componente User é o
principal componente usado, pois será ele o objeto de cálculo de reputação e classi�cação.
O valor de karma presente na Tabela (ref. 5.3) é quantitativo e indica a pontoação obtida por um
usuário ao realizar uma ação de contribuição na sua interação com o sistema, é preciso destacar que
esse valor não indica a qualidade da contribuição.
5.5.1 Mecanismos de interação
Estes mecanismos capturam os valores das interações dos usuários (contribuição e avaliação) no
sistema, e podem ser:
36 UM MODELO PARA REPUTAÇÃO E CLASSIFICAÇÃO 5.6
3C Componente InteraçãoPontuação
Karma+ -
ComunicaçãoComment
Adicionar comentário x +5Avaliar comentário x +1Denunciar comentário x -2/-1
Tag Adicionar tag x +1
CooperaçãoBinomial Adicionar avaliação x +5Rating
CoordenaçãoFriends xUser
Outros
Photo
Upload de foto x +5Editar informação x +3Avaliar foto x +1Denunciar foto x -2/-1
FaqCriar tópico x +5Avaliar tópico x +1Denunciar tópico x -2/-1
Tabela 5.3: Lista de componentes usados no modelo
Mecanismos de contribuição
Esse tipo de mecanismo captura os dados das interações de contribuição. Quando um usuário
adiciona um novo comentário, relaciona um objeto com uma tag, faz upload de uma foto, entre outros,
realiza esse tipo de interação. Os componentes encarregados de capturar esses dados estão presentes
na Tabela 5.3 como Comment, Tag, Binomial, etc.
Mecanismos de avaliação
As interações de avaliação podem ser feitas mediante mecanismos de avaliação, dentre os mais
usuais estão: as estrelinhas, gostou ou não gostou e a denúncia (Figura 5.3). O valor dessas interações
será chamado de avaliação, as quais têm um diferente peso, como descrito na Tabela 5.4, em que uma
avaliação de três estrelinhas indica um valor de qualidade de 0, 6, ou uma denúncia signi�ca que o
conteúdo carece de qualidade ou é inapropriado.
Figura 5.3: Mecanismos de avaliação
5.6 Considerações �nais
Apesar das redes sociais proporcionarem interação em todos os seus componentes, grande parte da
interação pode ser perdida devido à falta de visibilidade no próprio sistema; muitas vezes, a quantidade
5.6 CONSIDERAÇÕES FINAIS 37
Qualidade Valor (q) Representação(q)
Qualidade negativa −0, 2 Denúncia
Nenhuma qualidade 0
Qualidade baixa 0, 2 ?
Qualidade moderada 0, 4 ??
Qualidade alta 0, 6 ? ? ?
Qualidade muito alta 0, 8 ? ? ??
Qualidade absoluta 1, 0 ? ? ? ? ?,
Tabela 5.4: Faixas de valores de avaliação
de informação disponível di�culta o processo de identi�cação de usuários com boa reputação, por tanto,
a implementação de bons mecanismos que mostrem estes conteúdos são necessários.
Os usuários são fontes de conhecimento contínuo, com a ajuda dos mecanismos corretos é possível
aproveitar esse conhecimento pelo bem da comunidade, incentivando-os a participar e contribuir na
criação de conteúdo de boa qualidade.
Esse capítulo apresentou um modelo de solução para o cálculo de reputação em redes sociais, que
não tem somente como objetivo a identi�cação de usuários com boa reputação, senão incentivar a
geração de conteúdo de boa qualidade.
38 UM MODELO PARA REPUTAÇÃO E CLASSIFICAÇÃO 5.6
Capítulo 6
Plano de trabalho e cronograma
As atividades descritas e as que são almejadas para o presente trabalho estão na Tabela 6.1. A seção
seguinte apresenta a descrição das tarefas a serem realizadas durante o desenvolvimento do projeto até
o término do mestrado.
6.1 Plano de trabalho
1. Análise de domínio para mecanismos de interação social
Análise de domínio de alguns sítios da Web 2.0 que apresentam entre as suas características
mecanismos de avaliação para o cálculo de reputação. Com esse estudo, pretende-se determinar
os limites, as características comuns e variáveis de aplicações do domínio.
2. Análise dos pesos dos mecanismos de interação e avaliação que serão usados no
cálculo de reputação
Os mecanismos de interação que serão utilizados no processo são: comentário, foto (adicionar,
editar), binômios, fórum de discussão e, principalmente, avaliações aos mecanismos anteriores.
Nesta fase é determinada a in�uência que cada mecanismo exerce no cálculo de reputação. Por
exemplo, adicionar um comentário pode incrementar o valor de contribuição de um usuário em �x�
pontos, receber uma avaliação do comentário realizado in�uencia o valor de avaliação do usuário
em �y� pontos (onde −0, 2 <= y <= 1, pois uma avaliação pode ser positiva ou negativa, e indica
a qualidade do conteúdo; no entanto, adicionar um comentário só indica interação no sistema,
mas não garante que o conteúdo seja bom).
3. Implementação de mecanismos de interação dos mecanismos propostos no item an-
terior
O desenvolvimento dos mecanismos faltantes indicados no item anterior será realizado nesta etapa
da pesquisa em forma de componentes.
4. Implementação de algoritmos de con�ança, reputação e classi�cação
Com alguns dos mecanismos propostos acima já implementados, proceder-se-á ao desenvolvi-
mento do(s) algoritmo(s) para o cálculo de con�ança e posteriormente a reputação.
39
40 PLANO DE TRABALHO E CRONOGRAMA
Terminada a tarefa de desenvolvimento dos algoritmos para o cálculo de con�ança e reputação,
os resultados serão usados para determinar e classi�car os usuários do Arquigra�a de acordo com
as contribuições feitas no projeto e, assim, distribuir privilégios aos usuários.
5. Coleta de dados
Nesta etapa serão coletados dados reais dos usuários do projeto Arquigra�a-Brasil, estes dados
serão analisados e avaliados com os algoritmos implementados previamente.
6. Artigo: Modelo de cálculo de reputação, abordagem baseada na interação
Após ter dados do experimento, os resultados servirão para a redação de outro artigo destacando
o modelo proposto e os resultados obtidos.
7. Redação da dissertação
Durante o desenvolvimento do projeto esta tarefa é constante, a documentação durante as fases
do projeto servirão para manter fresco o conhecimento obtido. A redação do texto de defesa
indicará os resultados desta pesquisa.
8. Defesa
A data prevista para a defesa da pesquisa é no mês de dezembro.
6.2 Cronograma
AtividadesMeses - 2011
1 2 3 4 5 6 7 8 9 10 11 12
Levantamento Bibliográ�co x x x x x x x x x xAnálise de domínio para mecanismos deinteração social, avaliação e cálculo de re-putação em sistemas web 2.0
x x
Análise dos pesos dos mecanismos de inte-ração e avaliação
x
Redação da quali�cação x xQuali�cação xImpl. de mecanismos de interação x xImpl. de algoritmos de con�ança, reputa-ção e classi�cação
x x x
Coleta de dados x xArtigo: cálculo de reputação, abordagembaseada na interação
x x
Redação da dissertação x x xDefesa x
Tabela 6.1: Cronograma de atividades
Apêndice A
Análise de domínio: Avaliação e cálculo de
reputação em sistemas Web 2.0
Neste capítulo, é apresentada uma avaliação de alguns sítios da Web 2.0 que utilizam a reputação
como parte de suas funcionalidades para classi�car usuários. A avaliação será realizada com a técnica
denominada FODA, assim, as informações obtidas a partir desta análise determinarão os limites, as
características comuns e as variáveis de aplicações do domínio. Com esta informação é possível gerar
modelos para a representação de tais características.
A.1 FODA
O termo domínio, em engenharia de software, é usado para denotar um conjunto de sistemas
ou áreas com as mesmas funcionalidades e a análise de domínio é uma das etapas da engenharia de
domínio. Segundo Prieto e Rango [PDA91], a engenharia de domínio possibilita que características
comuns e variáveis sejam identi�cadas e organizadas utilizando um processo previamente de�nido. A
análise de domínio identi�ca, coleta e organiza informações relevantes do domínio, utilizando para tal
o conhecimento existente e as técnicas para modelagem de informação [KCH+90].
Segundo Oliveira [dO10], as aplicações de um mesmo domínio que possuem funcionalidades reco-
rrentes, as quais podem ser identi�cadas e analisadas, promovem o reúso por meio de componentes.
Neste trabalho, foi escolhida a técnica FODA ou Feature-Oriented Domain Analysis [KCH+90], que é o
método de engenharia de domínio mais conhecido e é orientado a características. Ele identi�ca, coleta
e organiza informações relevantes do domínio, assim, as informações obtidas na análise possibilitam
determinar os limites que norteiam o domínio, as características comuns e variáveis de aplicações e
gerar como resultados modelos para a representação de tais características. De acordo com Kang et al.
[KCH+90], essas características são atributos do sistema que afetam diretamente os usuários �nais.
A abordagem da técnica FODA é importante do ponto de vista do desenvolvimento baseado em
componentes, uma vez que a captura das funcionalidades relevantes ao domínio auxilia na identi�cação
41
42 APÊNDICE A
de possíveis componentes de software [WB05].
A.2 Estudo: Avaliação e cálculo de reputação em sistemas web 2.0
Para classi�car as características levantadas, será utilizado o modelo 3C de colaboração de�nido na
Seção 2.2.1. A análise de domínio é feita de modo similar à apresentada nos trabalhos de Oliveira e
Gerosa [dOG10] e Michalsky et al. [MMG10], nas quais foram feitas uma análise tendo como domínio
a colaboração em redes sociais e em sítios web de jornalismo online respectivamente.
A análise realizada neste trabalho está restrita a sistemas colaborativos da Web 2.0 que tenham
dentre suas funcionalidades algum tipo de cálculo de reputação ou classi�cação de usuários a partir da
interação. Foram avaliados um total de 17 sistemas, dentre os quais se destacam os fóruns de discussão.
As características encontradas são descritas utilizando o padrão proposto por Schummer e Lukosch
[SL07].
Os campos de�nidos para caracterizar os padrões para interação mediada por computador estão
descritos na Tabela A.1.
Nome O nome sintetiza o padrão. É usado na comunicação diáriadentro do projeto.
Intenção Descreve o ponto central de uma solução em apenas umafrase.
Contexto Descreve a situação em que o padrão é usado.
Tabela A.1: Modelo de descrição de padrão de interação mediada por computador
Cada característica foi avaliada em cada sítio web em que aparece e classi�cada de acordo com sua
função na colaboração: comunicação, coordenação, cooperação. Foram também avaliadas suas variabi-
lidades e as características consideradas como Interação Individual. Finalmente, são incluídas algumas
particularidades de caráter adicionais. Essas são utilizadas para algumas observações e nas conclusões
do capítulo.
A lista de sítios web obtidos utilizando os critérios de�nidos anteriormente pode ser visualizada na
Tabela A.2.
A descrição das características como um padrão de interação mediada por computador, considerada
para a análise de domínio, é apresentado no trabalho de Michalsky et al. [MMG10]. Essas característi-
cas são: comentário, enquete, lista de discussão, denúncia, seguir tópico, atividades recentes, avaliação,
busca, categorização, compartilhamento, navegação, produção, recomendação, tags, upload, �ltragem
colaborativa, salvar e versão de impressão; contudo, foram adicionadas as características de estatística
e favoritos.
ESTUDO: AVALIAÇÃO E CÁLCULO DE REPUTAÇÃO EM SISTEMAS WEB 2.0 43
Link do sítio web Nome do sítio
1o www.stackover�ow.com Stackover�ow2o www.guj.com.br GUJ3o www.shutterasia.com Shutterasia4o www.osqa.net Osqa5o www.daniweb.com Daniweb6o slashdot.org Slashdot7o www.reddit.com Reddit8o news.ycombinator.com Hacker news9o br.kekanto.com Kekanto10o www.ratemyprofessors.com Rate my professor11o launchpad.net Launchpad12o www.allvoices.com Allvoices13o wave.google.com Google wave14o www.scribophile.com Scribophile15o www.colourlovers.com ColourLovers16o www.dihitt.com.br Dihitt17o visible.me Visible.me
Tabela A.2: Lista de sítios web avaliados
Na Tabela A.3 estão descritas algumas características não consideradas na de�nição do modelo 3C
de colaboração, mas aportam dados que indicam como os sítios web gerenciam os dados de reputação
obtidos na colaboração.
Nome Descrição (Possibilita aos participantes ...)
Rede de amigos Adicionarem usuários a sua rede a amigos.Privilégios Terem acesso a características especí�cas sobre o sistema a
partir de seu grau de reputação (karma) no sistema.Distintivos Terem diversos distintivos (emblemas, símbolos, medalhas,
insígnias, estrelinhas, entre outros) a partir de seu grau dereputação ou karma no sistema.
Moderação Terem acesso a atividades de moderação do conteúdo com-partilhado no sistema a partir do grau de reputação.
Tabela A.3: Lista das características dependentes da reputação
Apenas algumas das características levantadas possuem variabilidades, que serão apresentadas nesta
subseção, indicando seus diferentes usos e contextos nas características pertinentes.
Um termo considerado importante nesta análise é o termo karma. Nos sistemas avaliados, esse
termo é representado por um número, o qual é um re�exo da contribuição que o usuário fez no sistema
e usualmente é referido como pontos de reputação. Ele pode ser calculado por meio de algum dos
métodos para o cálculo de reputação apresentados na Seção 3.3.3, mas, usualmente, é utilizada a soma
44 APÊNDICE A
simples ou média das avaliações. Esse tipo de representação pode ser observado na Figura A.1 onde
é indicado o valor quantitativo da reputação dos usuários por meio de números. Na mesma �gura, é
apresentado outro tipo de representação de karma além de distintivos do usuário.
Figura A.1: Representação da reputação dos usuários nos sítios web Stackover�ow e Reddit
Entre as características adicionais está os Distintivos, esta característica é apresentada em forma
de símbolos que são outorgados aos usuários como recompensa pela sua contribuição no sítio web. Esses
símbolos podem representar desde qualidade do conteúdo até tempo de participação. Na Figura A.2
são apresentados alguns dos distintivos, encontrados nos sítios web avaliados, outorgados aos usuários
na sua qualidade de colaborador.
A.3 Análise das características
Na Tabela A.4 é apresentado o resultado da análise em que é classi�cada cada característica, in-
cluindo as características adicionais como Rede de amigos, Privilégios, Distintivos e Moderação. Cada
interseção marcada representa que a característica está implementada no sítio web. As marcadas com
X indicam que não in�uenciam no cálculo de reputação; as marcadas com O in�uenciam no cálculo de
reputação dos usuários (a in�uência pode ser positiva ou negativa).
Algumas características como Produção contemplam funcionalidades adicionais como: iniciar, edi-
tar e fechar post, criar novas wikis, links, opiniões, notícias e atualizar dados. Na análise feita, pode-se
observar que a característica que in�ui diretamente no cálculo de reputação é a Avaliação, que pode
ser positiva ou negativa; no caso de ser negativa, indica que a contribuição é de baixa qualidade ou
inapropriada. Outras características como Comentário, Denúncia e Produção apoiam no cálculo de
reputação, mas não diretamente, pois estas contribuições são depois avaliadas e, assim, passam pelo
�ltro dos usuários.
Pouco mais de 50% dos sítios web avaliados na Tabela A.4 permite a criação de redes de usuários.
Como nas redes sociais Facebook, Orkut, etc., estas redes de amigos possibilitam espalhar o conteúdo
produzido e compartilhado no sítio web para chegarem a outros usuários que, possivelmente, tenham
interesse na informação. Somente em alguns casos o nível ou grau de reputação indica algum nível de
ANÁLISE DAS CARACTERÍSTICAS 45
Figura A.2: Distintivos nos sítios web Kekanto e Stackover�ow
status no sistema, os sítios web que possuem a característica de Brindar Privilégios utilizam o grau
de reputação (karma) para outorgar funcionalidades adicionais aos usuários do sistema, por exemplo,
em um dos sistemas avaliados existe uma lista das funcionalidades que podem ser feitas, mas para
poder realizá-las é preciso ter um mínimo de reputação (a reputação é representada numericamente):
• 15 Possibilitam aos usuários avaliarem.
• 15 Possibilitam aos usuários sinalizarem um conteúdo não apropriado.
• 50 Possibilitam aos usuários deixarem comentários.
• 100 Possibilitam editar as mensagens da comunidade.
• 125 Possibilitam denunciar conteúdo (mas custa 1 ponto de reputação).
• 250 Possibilitam aos usuários fecharem, reabrirem perguntas.
• 1500 Possibilitam aos usuários criarem tags.
• 2000 Possibilitam aos usuários editarem conteúdo postado por outros usuários, entre outras.
46 APÊNDICE A
Tabela A.4: Avaliação das características
Os usuários que tiverem suas contribuições julgadas de forma positiva pela comunidade ganham
pontos e distintivos de destaques, esta característica está presente em alguns dos sítios web avaliados
com o nomeDistintivos. Muitos usuários ganham distintivos conforme realizam atividades no sistema,
CONSIDERAÇÕES FINAIS 47
como, por exemplo, indicar a classi�cação do usuário a respeito dos outros usuários.
Outra característica que é avaliada além das classi�cadas no modelo 3C é a de Moderação. Os
sítios web colaborativos têm uma importante quantidade de dados, que ingressam diariamente por
usuários das mais diversas franjas culturais. Para preservar a qualidade da informação compartilhada
o papel de moderador cumpre uma tarefa importante, que é a de manter o conteúdo limpo de in-
formação inapropriada para o sistema. A totalidade dos sítios web avaliados possui a funcionalidade
de moderação, mas esta não está aberta para toda a comunidade. Os sítios web indicados com X
nesta característica possibilitam aos usuários com melhores níveis de reputação serem colaboradores
ativos na moderação dos conteúdos. Esta característica possibilita que o sistema seja autossustentável,
e gerenciado pelos próprios usuários que têm maior atividade e interesse na colaboração.
A.4 Considerações �nais
Neste capítulo, foi realizada uma análise de domínio em sistemas Web 2.0 que incluem cálculo de
reputação dos usuários a partir da interação com o sistema. Além disso, foram avaliadas outras carac-
terísticas, como Privilégios, Distintivos e Moderação, que permitiram uma visão de como são tratados
os usuários no sistema.
O termo karma é considerado por alguns usuários como uma pontuação que re�exa a quantidade
de pontos que um participante tem em um jogo de colaboração, pois eles não consideram muito re-
levante o valor, uma vez que são encontrados casos nos quais os usuários com alto valor no karma e
com distintivos altos colaboram pobremente no sistema, com conteúdo de baixa qualidade, porém em
grande quantidade.
Em redes especializadas, cujos usuários têm interesses comuns, o valor de reputação destes pode
ser de ajuda na �ltração de indivíduos que aportam conteúdo de baixa qualidade. Aqui a expectativa
é incentivar os usuários na produção de conteúdo de boa qualidade e em boa quantidade.
No próximo capítulo apresentamos o projeto Groupware Workbench, cujo objetivo é a construção
de sistemas Web 2.0 a partir de um kit de componentes implementados sob a perspectiva do modelo
3C de Colaboração.
48 APÊNDICE A
Apêndice B
Groupware Workbench
No capítulo anterior foi realizada a análise de domínio em sítios da Web 2.0, foram identi�cadas
e limitadas as características que atuam no cálculo de reputação. Neste capítulo, é coberta a abor-
dagem proposta pelo Groupware Workbench, apresentando os componentes em função do modelo 3C
de colaboração. Também são abordados os mecanismos de coleta de informação que serão usados na
proposta.
B.1 Especi�cações do Groupware Workbench
Apesar de os sítios da Web 2.0 terem diversas funcionalidades colaborativas recorrentes, o desen-
volvimento destes usualmente começa do zero. No panorama dos sistemas colaborativos ou Groupware,
este problema existe, muitas vezes reinventando código que faz a mesma coisa, não existindo o reúso.
Para Greenberg [Gre07], o desenvolvimento de sistemas colaborativos está posicionado na fase de repli-
cação do modelo BRETAM [Gai99], veja a Figura B.1, que descreve como uma tecnologia evolui ao
longo do tempo.
Figura B.1: Modelo BRETAM para o desenvolvimento de uma tecnologia. Adaptação de [Gai99]
A fase de Replicação ocorre quando o pessoal envolvido (desenvolvedores ou pesquisadores) imita
as ideias uns dos outros, seja por replicação ou por alterar de forma criativa a ideia original. Replicação
é a pesquisa em que a comunidade ganha maior compreensão e experiência por trás da tecnologia, o
que sugere a geração de novas ideias.
49
50 APÊNDICE B
Uma alternativa apara atingir a composição de aplicações e o encapsulamento de funcionalidades é
a componentização. A tecnologia de componentes é vista como apropriada para o desenvolvimento de
groupware, e há diversos sistemas e plataformas que disponibilizam blocos modulares e relativamente
independentes para a construção das aplicações colaborativas [Ger06].
Como introduzido na Seção 2.2.1, foram identi�cados três pilares interligados e sobre os quais está
um sistema groupware: comunicação, coordenação e cooperação [EGR91]. Neste trabalho, é utilizada
a plataforma Groupware Workbench [Wor11], na sua abordagem os componentes são organizados em
função do modelo 3C de colaboração, ilustrado na Figura 2.2.
Para dar suporte ao desenvolvimento de groupware, foram estabelecidos dois níveis de componen-
tização. O primeiro nível é constituído de ferramentas colaborativas que, por sua vez, são montadas
com componentes 3C (segundo nível) que implementam funcionalidades relacionadas à colaboração.
Esses componentes são distribuídos em component kits organizados em função do modelo 3C para que
desenvolvedores montem aplicações colaborativas. Nessa abordagem, cada ferramenta usa componentes
de comunicação, coordenação e de cooperação independentemente da sua classi�cação 3C [Ger06].
O Groupware Workbench é fornecido em duas partes: o núcleo e os kits de componentes. A tec-
nologia utilizada na bancada oferece suporte ao padrão MVC, à propagação de eventos, à persistência
de dados e à criação de elementos de interface. Os componentes chamados de collablets compõem a
aplicação e são utilizados de forma hierárquica para construir as ferramentas podendo ser manipulados
por meio do sistema de arquivos e customizados por meio de descritores. Atualmente, o Groupware
Workbench disponibiliza 14 collablets: faqMgr, photoMgr, commentMgr, geoReference, recommend-
Mgr, tag, binomialMgr, categoryMgr, friendsMgr, pro�leMgr, roleMgr, userMgr, coutingMgr e rating.
Uma das funcionalidades frequentemente utilizada é a do Comentário, a qual é instanciada como
o collablet CommentMgr, a implementação deste componente pode ser visualizada na Figura B.2.
A classe CommentMgrInstance implementa a interface Business, o Object é o objeto que está sendo
comentado, o User é o usuário que efetua o comentário, o Collablet é a instância do collablet que está
gerando os comentários e, �nalmente, o Comment é o objeto resultante [dO10].
O CommentMgr implementa dois widgets de interface, um para atribuir um comentário de um
usuário a um conteúdo e outro que retorna a lista de comentários atribuída a esse conteúdo. Os widgets
são inseridos na página JSP do Collablet, como, por exemplo, um gerenciador de fotos, adicionando os
fragmentos JSTL exempli�cados no seguinte código:
1 <comment:addComment commentMgr="${commentMgr}" idObject="${photo . id }" user="${
se s s i onScope . userLogin }" ed i t o rC l a s s=" ed i t o rC l a s s " wrapClass="
comments_create_internal " />
2 <comment:getComments commentMgr="${commentMgr}" en t i t y="${photo}" wrapClass="
comments_show_internal" />
APLICAÇÕES 51
Figura B.2: Componente CommentMgr
Na Figura B.3 é exempli�cado o uso dos widgets do CommentMgr em um sistema colaborativo que,
neste caso, é a rede social para compartilhamento de imagens Arquigra�a. Juntamente com o compo-
nente CommentMgr, estão compondo essa interface os collablets tag, binomialMgr, descriptionMgr,
counterMgr e photoMgr.
B.2 Aplicações
Em parceria com outros institutos da USP, foram montadas três aplicações com a utilização do
Groupware Workbench:
• Balcão de Dúvidas: balcão de dúvidas para o Centro de Competência em Software Livre
(CCSL-IME)1. Neste sistema, os usuários podem enviar perguntas que serão respondidas por
especialistas voluntários.
1Disponível em: ccsl.ime.usp.br/duvidas. Último acesso: 26 abr. 2011.
52 APÊNDICE B
Figura B.3: Widgets do componente Comentário no Arquigra�a
• AUN: implantação do suporte à inteligência coletiva e interação social no sistema de notícias do
curso de jornalismo da Escola de Comunicações e Artes (ECA)2. Atualmente o sistema não conta
com recursos colaborativos como comentários, avaliações, lista de notícias similares entre outros.
• Arquigra�a: é uma rede social construída para o estudo colaborativo da arquitetura brasileira,
por meio do compartilhamento de conteúdo (imagens). Concebido em parceria com a Faculdade
de Arquitetura e Urbanismo (FAU-USP) e com a utilização do ferramental disponível do Group-
ware Workbench. Na Figura B.4 são apresentados os protótipos descritos anteriormente, como
Balcão de Dúvidas, AUN e Arquigra�a. Atualmente, Arquigra�a3 encontra-se na sua versão alfa.
Com este protótipo se pretende compor um amplo acervo público de imagens digitais originais
da arquitetura brasileira, imagens cedidas e catalogadas (com palavras-chave ou tags, conceitos
plástico-espaciais, descrições entre outros) pelos próprios usuários do sistema.
B.3 Componentes existentes
Algumas das funcionalidades identi�cadas na análise de domínio foram implementadas como com-
ponentes pela equipe de desenvolvimento do Groupware Workbench, na qual a autora desta proposta
está inclusa. Por ser um projeto de software livre, esses componentes estão disponíveis.
2Disponível em: www.usp.br/aun. Último acesso: 26 abr. 2011.3Disponível em: www.arquigra�a.org.br. Último acesso: 26 abr. 2011.
COMPONENTES EXISTENTES 53
Figura B.4: Protótipo de Arquigra�a, AUN e Balcão de Dúvidas
Comentário
Este componente representa uma opinião sobre alguma entidade ou objeto no sistema, por exem-
plo, uma pergunta. Implementado pelo componente commentMgr, é possível adicionar, listar, apagar
comentários no sistema. Na Figura B.5 é apresentado um widget implementado por este componente.
Figura B.5: Widget de adição de comentários em Arquigra�a
Tag
Este componente representa uma palavra-chave (tag), que é associada a uma entidade (que pode
ser uma foto, uma notícia, uma pergunta), com o objetivo de descrevê-la e classi�cá-la. Representado
pelo collablet tagMgr, este componente implementa alguns widgets, como a nuvem de tags - que pode
ser observada na Figura B.6.
54 APÊNDICE B
Figura B.6: Widget de nuvem de tags
Avaliação
Este componente se encarrega da avaliação de um usuário sobre um determinado objeto. Imple-
mentado pelo collablet ratingMgr, pode ser usado como um meio para encontrar os objetos de boa
qualidade. Na Figura Figura B.7 pode ser visualizado um exemplo de um widget implementado por
este componente.
Figura B.7: Componente de avaliação
Contador de visitas
Este componente se encarrega do número de visitas que tem um objeto, por exemplo, uma notícia.
Este componente é implementado pelo collablet counterMgr e pode ser usado para recomendar objetos
pela quantidade de visitas. Na Figura B.8, apresenta-se um exemplo do widget implementado por este
componente.
Figura B.8: Componente Contador de visitas
Dentre outros componentes que também estão implementados, temos: Usuário, Per�l de Usuário,
Papéis, Amigos, Gerenciador de Aplicações, Recomendação, Categorização, Georreferenciamento e Up-
load.
B.4 Considerações �nais
O objetivo da aprendizagem colaborativa é fazer que os usuários se tornem participantes ativos na
de�nição do conhecimento.
Referências Bibliográ�cas
[Ala08] Satnam Alag. Collective Intelligence in Action. Manning Publications, primeira edição,Outubro 2008. Citado na página 5, 8
[BP98] Sergey Brin e Lawrence Page. The anatomy of a large-scale hypertextual web searchengine. Computer Networks and ISDN Systems, 30(1�7):107�117, 1998. Citado na página 28
[Bud05] Andy Budd. What is web 2.0?. clearleft ltd. http://www.andybudd.com/presentations/dcontruct05/, Novembro 2005. Último acesso em 04/08/2011. Citado na página vii, 6
[CF05] Alice Cheng e Eric Friedman. Sybilproof reputation mechanisms. Em P2PECON '05:
Proceedings of the 2005 ACM SIGCOMM workshop on Economics of peer-to-peer systems,páginas 128�132, New York, NY, USA, 2005. ACM. Citado na página 1
[CGdMS07] Claudia C. P. Cruz; Maria Teresa A. Gouvêa; Claudia Lage Rebello da Motta eFlavia Maria Santoro. A proposal for recognizing reputation within communities of prac-tice. Em CSCWD (Selected Papers)'07, páginas 443�454, 2007. Citado na página 1, 2, 15, 17,22
[CN06] Marcos Cavalcanti e Carlos Nepomuceno. O Conhecimento em Rede. Campus, 2006. Citadona página 8
[Cru08] Claudia Cristina Paranhos Cruz. Recop: Um modelo para reputação em comunidades deprática. Dissertação de Mestrado, Programa de Pós-Graduação em Informática, Univer-sidade Federal do Rio de Janeiro, Brasil, Fevereiro 2008. Citado na página 22, 34
[dC05] Rogério da Costa. Por um novo conceito de comunidade: redes sociais, comunidadespessoais, inteligência coletiva. Revista Interface - Comunicação, Saúde, Educação, 17,2005. Citado na página 11
[dCR05] Raquel da Cunha Recuero. Um estudo do capital social gerado a partir das redes sociaisno orkut e nos weblogs. Revista FAMECOS, 28, 2005. Citado na página 6
[Del04] Chrysanthos Dellarocas. Building trust online: The design of robust reputation reportingmechanisms for online trading communities, 2004. Citado na página 17
[Deu62] Morton Deutsch. Cooperation and trust. some theoretical notes, 1962. Citado na página 12
[DGKS09] Tom DuBois; Jennifer Golbeck; John Kleint e Aravind Srinivasan. Improving recommen-dation accuracy by clustering social networks with trust. Em ACM RecSys'09 Workshop
on Recommender Systems & the Social Web, Outubro 2009. Citado na página 21
55
56 REFERÊNCIAS BIBLIOGRÁFICAS
[dO10] Lucas Santos de Oliveira. Funcionalidades colaborativas no compartilhamento de conteúdoem redes sociais na web 2.0: Uma engenharia de domínio baseada no modelo 3c de cola-boração. Dissertação de Mestrado, Instituto de Matemática e Estatística, Universidadede São Paulo, Brasil, Dezembro 2010. Citado na página 7, 41, 50
[dOG10] Lucas Santos de Oliveira e Marco Aurélio Gerosa. Uma engenharia de domínio baseada empadrões de interação e no modelo 3c de colaboração para redes sociais de compartilhamentona web 2.0. Simpósio Brasileiro de Sistemas Multimídia e Web (WebMedia 2010), 2:49�52,2010. Citado na página 42
[Dou02] John R. Douceur. The sybil attack. Em Revised Papers from the First International Work-
shop on Peer-to-Peer Systems, IPTPS '01, páginas 251�260, London, UK, 2002. Springer-Verlag. Citado na página 35
[dSPG07] José de Souza Pinto Guedes. Um framework para o cálculo de reputações de agentes desoftware baseado em testemunhos. Dissertação de Mestrado, Departmento de Informática,Pontifícia Universidade Católica do Rio de Janeiro, Brasil, Março 2007. Citado na página 22
[EGR91] Clarence A. Ellis; Simon J. Gibbs e Gail Rein. Groupware: some issues and experiences.Commun. ACM, (1):39�58, Janeiro 1991. Citado na página 7, 50
[FRGL05] Hugo Fuks; Alberto B. Raposo; Marco A. Gerosa e Carlos J. P. Lucena. Applying the3c model to groupware development. International Journal of Cooperative Information
Systems(IJCIS). World Scienti�c, 14(2-3):299�328, Junho-Setembro 2005. Citado na página
7
[Fuk95] Francis Fukuyama. Trust: The Social Virtues and the Creation of Prosperity. Free Press,New York, primeira edição, 1995. Citado na página 11
[Gai99] Brian R. Gaines. Modeling and forecasting the information sciences, 1999. Citado na página
vii, 49
[Ger06] Marco Aurélio Gerosa. Desenvolvimento de Groupware Componentizado com Base no
Modelo 3C de Colaboração. Tese de Doutorado, Departamento de Informática, PontifíciaUniversidade Católica do Rio de Janeiro, Brasil, Março 2006. Citado na página vii, 7, 50
[GH04] Jennifer Golbeck e James Hendler. Accuracy of metrics for inferring trust and reputationin semantic web-based social networks. Em In International Conference on Knowledge
Engineering and knowledge Management (EKAW), Northamptonshire, UK, 2004. Citado na
página 11
[GH06] Jennifer Golbeck e James Hendler. Inferring trust relationships in web-based social net-works. ACM Transactions on Internet Technology, 6, 2006. Citado na página 12, 20
[Gol05] Jennifer Golbeck. Computing and Applying Trust in Web-based Social Networks. Tese deDoutorado, Department of Computer Science, University of Maryland, USA, 2005. Citadona página vii, 6, 11, 12, 13, 14, 21
[Gom09] Edeyson A. Gomes. Segurança em aplicações p2p através de reputação inferidade redes sociais. http://edeyson.com.br/Arquivos/Doutorado/Redes%20Sociais%20e%20Aplicacoes%20Ubiquas.pdf, 2009. Último acesso em 02/02/2011. Citado na página 1, 6,15, 20
REFERÊNCIAS BIBLIOGRÁFICAS 57
[Gre07] Saul Greenberg. Toolkits and interface creativity. J Multimedia Tools and Applications,32:139�159, 2007. Citado na página 49
[Gru94] Jonathan Grudin. Computer-supported cooperative work: History and focus. IEEE Com-
puter, 27(5):19�26, Maio 1994. Citado na página 6
[JIB07] Audun Jøsang; Roslan Ismail e Colin Boyd. A survey of trust and reputation systems foronline service provision, 2007. Citado na página vii, 15, 17, 18, 19, 23
[Jøs99] Audun Jøsang. Trust-based decision making for electronic transactions, 1999. Citado na
página 18
[Jøs10] Audun Jøsang. Trust management in online communities. Workshop on New Forms of
Collaborative Production and Innovation:Economic, Social, Legal and Technical Charac-
teristics and Conditions-SOFI, Maio 2010. Citado na página 16
[KCH+90] Kyo C. Kang; Sholom G. Cohen; James A. Hess; William E. Novak e A. Spencer Peterson.Feature-Oriented Domain Analysis (FODA) Feasibility Study. 1990. Citado na página 41
[Ken48] Maurice G. Kendall. Rank correlation methods. Gri�n, London, 1948. Citado na página 34
[KMZ09] Przemysªaw Kazienko; Katarzyna Musiaª e Aleksander Zgrzywa. Evaluation of node po-sition based on email communication. Em Control and Cybernetics, páginas 67�86, 2009.Citado na página 23, 29, 31, 32, 34
[Lag07] Alexandre Gomes Lages. Um sistema para o aumento da con�abilidade da utilizaçãode serviços através de sistemas de reputação. Dissertação de Mestrado, Instituto deMatemática, Universidade Federal do Rio de Janeiro, Brasil, Dezembro 2007. Citado na
página 24
[LPH09] Simone A. Ludwig; Venkat Pulimi e Andriy Hnativ. Fuzzy approach for the evaluation oftrust and reputation of services. FUZZ-IEEE, páginas 20�24, Agosto 2009. Citado na página
31
[Lév03] Pierre Lévy. Inteligência Coletiva por uma Antropologia do Ciberespaço. Loyola, 2003.Citado na página 8
[Mar94] Stephen Paul Marsh. Formalising Trust as a Computational Concept. Tese de Doutorado,University of Stirling, Abril 1994. Citado na página 12
[Mil09] Evan Miller. How not to sort by average rating. http://www.evanmiller.org/how-not-to-sort-by-average-rating.html, 2009. Último acesso em 09/08/2011. Citado na
página 18
[MKB09] Katarzyna Musiaª; Przemysªaw Kazienko e Piotr Bródka. User position measures in socialnetworks. Em SNA-KDD '09: Proceedings of the 3rd Workshop on Social Network Mining
and Analysis, páginas 1�9, New York, NY, USA, 2009. ACM Press. Citado na página 23, 29,31
[MM02] Lik Mui e Mojdeh Mohtashemi. A computational model of trust and reputation. Em In
Proceedings of the 35th Hawaii International Conference on System Science (HICSS, 2002.Citado na página 15
58 REFERÊNCIAS BIBLIOGRÁFICAS
[MMG10] Straus Michalsky; Edith Z. Sonco Mamani e Marco Aurélio Gerosa. A inteligência coletivana web: Uma análise de domínio para o jornalismo online. Simpósio Brasileiro de Sistemas
Multimídia e Web (WebMedia 2010), 2:45�48, 2010. Citado na página 7, 42
[MZ04] Hassan Masum e Yi-Cheng Zhang. Manifesto for the Reputation Society. First Monday,9(7), 2004. Citado na página 35
[oEI90] Institute of Electrical e Electronics Ehgineers (IEEE). IEEE 90: IEEE Standard Glossary
of Software Engineering Terminology. Institute of Electrical and Electronics Engineers,New York, Setembro 1990. Citado na página 15
[O'R05] Tim O'Reilly. O'Reilly Network: What Is Web 2.0, Setembro 2005. Citado na página 5
[PDA91] Rubén Prieto-Díaz e Guillermo Arango. Domain analysis concepts and research directions.Domain Analysis and Software Systems Modeling., 1991. Citado na página 41
[Pri06] Alex Primo. O aspecto relacional das interações na Web 2.0, 2006. Citado na página 5
[Seg07] Toby Segaran. Programming Collective Intelligence: Building Smart Web 2.0 Applications.O'Reilly, Beijing, primeira edição, 2007. Citado na página 5, 8
[Sha87] Susan P. Shapiro. The social control of impersonal trust. The American Journal of
Sociology, 93:623�658, 1987. Citado na página 12
[SL07] Till Schummer e Stephan Lukosch. Patterns for Computer-Mediated Interaction (Wiley
Software Patterns Series). Wiley, Agosto 2007. Citado na página 42
[WB05] Cláudia Maria Lima Werner e Regina Maria Marciel Braga. A Engenharia de Domínio e
o Desenvolvimento Baseado em Componentes. Editora Ciência Moderna, Rio de Janeiro,RJ Brasil, 2005. Citado na página 42
[Wor11] Groupware Workbench. Groupware workbench. http://www.groupwareworkbench.org.br/, 2011. Último acesso em 19/05/2011. Citado na página 50
Índice Remissivo
análise de domínio, 41, 42arquigra�a, 52assimetria, 14
coleta de informação, 35componentes, 52composição, 13con�ança, 11
de�nição, 11propriedades, 12
considerações �naisalgoritmos, 25análise de domínio, 47con�ança e reputação, 19proposta, 36redes sociais, 9sistemas colaborativos, 54
contribuições, 3cronograma, 40
distintivos, 43
especi�caçõesgroupware workbench, 49
estimativa de reputação, 28
FODA, 41
inteligência coletiva, 8interação individual, 42interações de avaliação, 30interações de contribuição, 30
karma, 43
mecanismo de interação, 35mecanismos de avaliação, 36mecanismos de contribuição, 36modelo 3c
comunicação, 7cooperação, 7
coordenação, 7moderação, 43moderador, 47
objetivos, 2
personalização, 14plano de trabalho, 39proposta, 27
redessociais, 5
redes sociais, 6reputaçao, 15
sistema de con�ança, 29sistema de interação, 30sistemas colaborativos, 6social
networks, 5
trabalhos relacionados, 21transitividade, 13
WBSN, 6Web 2.0, 5
59