[논문 리뷰] On the Popularity of GitHub Applications: A Preliminary Note
이 논문은 별점 수를 활용해 GitHub 소프트웨어의 인기 정도를 평가하기 위한 프레임워크를 제안하며, 종단별 별점 추세를 기반으로 지속 가능한, 빠른, 느린, 바이러스성의 네 가지 성장 패턴을 규명한다. 별점, 포크 수, 클라이언트 사용량 간에 강한 상관관계가 있음을 발견하였으며(예: NPM 종속자와의 피어슨 상관계수 ρ = 0.68), 별점이 실질적 인기 지표로 신뢰할 수 있음을 입증한다. 특히 자바스크립트가 가장 인기 있는 레포지토리에서 지배적이다.
GitHub is the world's largest collection of open source software. Therefore, it is important both to software developers and users to compare and track the popularity of GitHub repositories. In this paper, we propose a framework to assess the popularity of GitHub software, using their number of stars. We also propose a set of popularity growth patterns, which describe the evolution of the number of stars of a system over time. We show that stars tend to correlate with other measures, like forks, and with the effective usage of GitHub software by third-party programs. Throughout the paper we illustrate the application of our framework using real data extracted from GitHub.
연구 동기 및 목표
- GitHub에 호스팅된 오픈소스 소프트웨어의 인기 정도를 평가하기 위한 프레임워크를 개발하는 것.
- 별점 수 변화 추세를 기반으로 시간에 따른 인기 성장 패턴을 정의하고 분류하는 것.
- 포크 수 및 클라이언트 사용과의 상관관계를 통해 별점 수가 실질적 인기 지표로 신뢰할 수 있는지 검증하는 것.
- 프로그래밍 언어별로 인기 있고 매우 인기 있는 레포지토리의 분포를 분석하는 것.
- 소프트웨어의 채택 및 성숙도 추적에 도움이 되는 실질적인 통찰을 제공하는 것.
제안 방법
- 2015년 5월 1일 기준 별점 수 상위 10% 이상(≥1,459개 별점)인 레포지토리를 '인기 있는'으로 정의하고, 상위 1% 이상(≥19,570개 별점)인 경우를 '매우 인기 있는'으로 정의한다.
- 고도로 영향력 있는 레포지토리의 분포 기울기를 줄이기 위해 별점 기반 순위를 이진 로그 기반으로 변환하여 정규화한다.
- 52주간의 역사적 데이터를 기반으로 순위 변화를 기준으로 성장 패턴을 분류한다: 지속 가능한(│R_BOTTOM - R_TOP│ < 0.25), 빠른, 느린, 바이러스성.
- 별점 수와 포크 수, 클라이언트 사용량(노드.js 모듈의 경우 NPM API를 통해) 간 상관관계를 분석하여 인기 지표의 타당성을 검증한다.
- GitHub의 2015년 5월 1일 데이터를 기반으로 24개의 주요 프로그래밍 언어에 걸쳐 총 24,000개의 레포지토리 스냅샷을 분석한다.
- 피어슨 상관계수와 같은 통계적 방법을 적용하여 인기 지표 간의 관계를 평가한다.
실험 결과
연구 질문
- RQ1시간에 따른 별점 수 추세를 기반으로 GitHub 레포지토리의 인기 정도를 체계적으로 분류할 수 있는 방법은 무엇인가?
- RQ2오픈소스 소프트웨어에서 주로 나타나는 인기 성장 패턴(예: 지속 가능한, 바이러스성)은 무엇인가?
- RQ3별점 수가 포크 수 및 클라이언트 사용과 같은 다른 지표와 얼마나 강하게 상관되는가?
- RQ4어떤 프로그래밍 언어가 GitHub에서 가장 인기 있고 매우 인기 있는 레포지토리에서 지배적인가?
- RQ5GitHub 소프트웨어의 실질적 사용 및 채택 정도를 나타내는 데 별점 수가 신뢰할 수 있는 대체 지표인가?
주요 결과
- 자바스크립트는 가장 인기 있는 GitHub 레포지토리에서 지배적이며, 매우 인기 있는 시스템의 35%와 모든 인기 있는 시스템의 46%를 차지한다.
- 2,138개의 인기 있는 시스템 중 22%(466개)는 지속 가능한 성장을 보이며, 1년 동안 안정적인 순위를 유지한다.
- 5%의 인기 있는 시스템은 빠른 성장을 보이며, 1% 미만은 느린 성장을 보이며, 37개의 시스템은 바이러스성 성장 패턴을 보인다.
- NPM에서 사용되는 노드.js 라이브러리의 경우, 별점 수와 종속자 수 간에 강한 양의 상관관계가 존재한다(Spearman의 ρ = 0.68).
- 별점 수는 포크 수와도 유의미한 상관관계를 보이며, 이는 별점 수가 인기 지표로서의 타당성을 강화한다.
- 상위 3개의 레포지토리—twbs/bootstrap, angular/angular.js, mbostock/d3—는 각각 10만 개 이상의 별점을 확보하며 가장 높은 별점 수를 기록했다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.