View
81
Download
0
Category
Preview:
Citation preview
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
Aluno: William Horta Rufino da Silva
Orientador: Prof. Dr. Orlando Abreu Gomes
Coorientador: Prof. Dr. Fernando Silva Parreiras
Linha de Pesquisa: Sistemas de Informacao.
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
2
Introducao
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
3
Introducao
• Repositorios de software nao sao utilizados para tomadas de decisao. (HASSAN,2008)
• Um problema que atinge o desenvolvimento de software como um todo e a quantidade de projetos que falham ou sao entregues fora do prazo, causando prejuizos na escala de bilhoes no mundo todo. (CHARETTE, 2005)
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
4
Introducao – Analise em Redes Sociais
• Descobrir padroes e comunidades• Detectar anormalidades• Prever tendências
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
5
Problema
• Diante dessa situacao, surge a seguinte pergunta: quais sao os componentes de um arcabouco conceitual que permitem a criacao e analise de redes sociais em linked data sobre engenharia de software?
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
6
Objetivo Geral
• O objetivo geral do trabalho e propor um arcabouco conceitual para analise de redes sociais sobre bases de dados abertos e vinculados de engenharia de software.
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
7
Objetivos Especificos
1. Identificar os componentes necessarios para construcao do arcabouco conceitual.
2. Propor um arcabouco conceitual.
3. Construir consultas a fim de extrair os dados e montar a(s) rede(s) a ser(em) analisada(s).
4. Testar o arcabouco conceitual proposto.
5. Executar analise de redes sociais sobre os resultados.
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
8
Web Semântica
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
9
Exemplo de tripla RDF
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
10
RedesUma rede, em sua forma mais simples, e uma colecao de pontos ligados em par por linhas (NEWMAN, 2010).
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
11
Redes SociaisUma rede social acontece quando ha interacao social entre individuos, como em uma amizade, casamento ou comunicacao. (XU; CHRISTLEY; MADEY, 2006)
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
12
Metricas
• Intermediacao (Betweeness)• Autovetor (Eigenvector)• Aglomeracao (Cluster)
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
13
Aplicacoes de ARS na engenharia de softwareFonte de dados para ARS
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
14
Metodologia
Abordagem Qualitativa
Tipo ExplicativaMétodo ExperimentalNatureza Pesquisa Aplicada
Validação Avaliação - Prova de Conceito
William Rufino
15
Origem dos Dados
SeCold
William RufinoColaboracao em software de codigo
aberto: um framework para analise em redes sociais
• Primeira base online em linked data sobre artefatos de software.
• Criado na universidade de Concordia, CA.
• Disponivel na nuvem LOD.
Fatos
16
Origem dos Dados
Projeto Chromium
William RufinoColaboracao em software de codigo
aberto: um framework para analise em redes sociais
• Codigo aberto• Grande número de
colaboradores• Muito ativo
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
17
Arcabouco Conceitual
William Rufino
18
Implementacao
William RufinoColaboracao em software de codigo
aberto: um framework para analise em redes sociais
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
19
Validacao
• Dados sobre bugs. • Segundo tipo mais utilizado segundo
revisao sistematica da literatura.
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
20
Validacao – Caso 1Um usuario esta conectado a outro usuario caso os dois tenham feito algum comentario em um bug comum.
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
21
Validacao – Caso 2 Combinacao de comentarios por palavras-chave atraves da API AlchemyAPI.
Dois comentarios com a mesma palavra-chave estao conectados entre si.
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
22
Rede gerada – Caso 1
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
23
Comunidades da Rede
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
24
Nos com maior relevância
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
25
Por que Autovetor e nao grau?
• Nos que tenham conexao a nos mais relevantes sao mais relevantes que nos que tenham conexoes a nos poucos relevantes.
• Metricas de relevância como o Pagerank Page, Lawrence; Brin, Sergey; Motwani, Rajeev and Winograd, Terry (1998) sao derivadas do Autovetor.
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
26
Intermediacao
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
27
Por que Intermediacao?
• Um ator com alta intermediacao pode controlar o fluxo de colaboracao.
• Alta intermediacao significa um caminho mais curto para conectar a outros atores.
• Sua remocao pode quebrar a rede.
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
28
Intermediacao por AutovetorQuem serve de ponto e e relevante...
William Rufino
Inte
rmed
iaçã
o
Relevância
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
29
Intermediacao por AutovetorQuem serve de ponto e e relevante...
William Rufino
Inte
rmed
iaçã
o
Relevância
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
30
Rede Gerada – Caso 2
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
31
Comunidades da Rede
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
32
Nos com maior relevância
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
33
Intermediacao
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
34
Intermediacao por AutovetorQuem serve de ponto e e relevante...
William Rufino
Inte
rmed
iaçã
o
Relevância
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
35
Intermediacao por AutovetorQuem serve de ponto e e relevante...
William Rufino
Inte
rmed
iaçã
o
Relevância
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
36
Estudo da Colaboracao
• Identificacao de principais atores.• Identificacao de comunidades dentro da
rede.• Identificacao de atores pouco eficientes.• Treinamento de equipes• Melhoria da comunicacao• Identificacao de papeis dentro da rede.
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
37
Objetivos Alcancados
Identificar os componentes necessarios para construção do arcabouço conceitual.
Revisão da literatura
Propor um arcabouço conceitual. Arcabouço ConceitualConstruir consultas a fim de extrair os dados e montar a(s) rede(s) a ser(em) analisada(s).
Implementação – Scripts de processamento
Testar o arcabouço conceitual proposto.
Implementação e Validação
Executar analise de redes sociais sobre os resultados.
Validação
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
38
Consideracoes Finais
A construcao do arcabouco para esse experimento mostra que as bases de dados em linked data podem ser exploradas para estudos na engenharia software, gerando, assim, novos conhecimentos e mais dados abertos, de forma que possam ser disponibilizados para uso de outros pesquisadores.
William Rufino
Colaboracao em software de codigo aberto: um framework para analise em redes sociais
39
Obrigado!
William Rufino
williamhrs@gmail.com
William Rufino
Recommended