Please use this identifier to cite or link to this item: http://hdl.handle.net/1843/BIRC-BBLN2S
Type: Tese de Doutorado
Title: Characterizing and predicting the popularity of github projects
Authors: Hudson Silva Borges
First Advisor: Marco Tulio de Oliveira Valente
First Referee: Eduardo Magno Lages Figueiredo
Second Referee: Fabricio Benevenuto de Souza
Third Referee: Ingrid Oliveira de Nunes
metadata.dc.contributor.referee4: Leonardo Gresta Paulino Murta
Abstract: Popularidade é uma informação valiosa para desenvolvedores de projetos de código aberto, que querem constantemente saber se seus projetos estão atraindo novos usuários ou se novas releases estão atendendo às expectativas dos usuários. Contudo, poucos estudos investigam a popularidade de projetos de código aberto. Nesta tese, propomos e avaliamospor meio de estudos quantitativos e qualitativosum conjunto de diretrizes e informações práticas para ajudar gestores de projetos a entender e melhorar a popularidade de seus projetos. Primeiro, conduzimos uma investigação em larga escala com 791 desenvolvedores para revelar as motivações que os levam a estrelar um projeto e para verificar se eles consideram o número de estrelas antes de usarem ou contribuirem com projetos GitHub. Os resultados revelam que três em cada quatro desenvolvedores consideram o número de estrelas e a maioria estrelam repositórios para mostrar apreciação e para adicionar projetos em bookmarks. Em seguida, caracterizamos os principais fatores que afetam o número de estrelas de 5,000 projetos GitHub. Revelamos como a popularidade varia e se correlaciona com outras características dos repositórios. Também investigamos com que frequência os repositórios perdem popularidade, quão cedo eles se tornam populares e qual é o impacto de novas funcionalidades em sua popularidade. Em seguida, propomos, caracterizamos e validamos um conjunto de padrões de crescimento de popularidade, que são obtidos após clusterização das séries temporais que descrevem o número de estrelas dos projetos. Depois disso, investigamos os canais mais comuns usados pelos desenvolvedores para promover projetos de código aberto. Nós descrevemos os principais canais de promoção e analisamos a frequência com que desenvolvedores promovem seus projetos. Também mostramos como projetos populares diferem de outros projetos no uso dos canais de promoção e qual é o impacto da promoção em sites sociais de compartilhamento de notícias. Finalmente, usamos modelos de regressão linear múltipla para prever a popularidade de repositórios de código aberto. Os resultados mostram que podemos usar os dados dos últimos seis meses para prever o número de estrelas dos próximos seis meses. Além disso, modelos de previsão que consideram os padrões de crescimento propostos podem reduzir o erro médio e a quantidade de dados necessários para fornecer previsões.
Abstract: Software popularity is a valuable information to modern open source developers, who constantly want to know whether their projects are attracting new users, whether new releases are gaining acceptance, or whether they are meeting users expectations. However, we still have few studies about the popularity of open source projects. To tackle this problem, in this thesis, we propose and evaluatethrough a set of quantitative and qualitative studiespractical guidelines and insights to help project managers understand and improve the popularity of their projects. First, we conduct a largescale investigation with 791 developers to reveal their motivations for starring projects and to check whether they consider the number of stars before using or contributing to GitHub projects. The results reveal that three out four developers consider the number of stars and most developers star repositories to show appreciation and to bookmark projects. Next, we characterize the main factors that impact the number of stars of 5,000 GitHub projects. We reveal how popularity varies and correlates with other characteristics of a repository. We also investigate how often repositories lose popularity, how early they become popular, and what is the impact of new features in their popularity. Then, we propose, characterize, and validate a set of popularity growth patterns, which are derived after clustering the time series that describe the number of stars of the projects. After that, we address the most common channels used by developers to promote open source projects. We study these promotion channels and how often developers promote their projects. We also show how popular projects differ from random ones on the usage of promotion channels and what is the impact of promotion on news media sites. Finally, we use multiple linear regression models to predict the popularity of open source repositories. The results show that we can rely on the past six months to predict the number of stars six months ahead. Moreover, prediction models that consider the proposed growth patterns can reduce the average prediction error and reduce the amount of data needed to provide predictions.
Subject: Open Source Software
Github
Computação
Popularity Growth Patterns
language: Inglês
Publisher: Universidade Federal de Minas Gerais
Publisher Initials: UFMG
Rights: Acesso Aberto
URI: http://hdl.handle.net/1843/BIRC-BBLN2S
Issue Date: 3-Sep-2018
Appears in Collections:Teses de Doutorado

Files in This Item:
File Description SizeFormat 
hudsonsilvaborges.pdf2.87 MBAdobe PDFView/Open


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.