Characterizing and predicting the popularity of github projects
Hudson Silva Borges · Americanae (AECID Library) · 2018
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.