Skip to main content
QUICK REVIEW

[논문 리뷰] Why Software Projects need Heroes (Lessons Learned from 1000+ Projects)

Suvodeep Majumder, Joymallya Chakraborty|arXiv (Cornell University)|2019. 04. 22.
Software Engineering Research인용 수 6
한 줄 요약

이 연구는 1,100개 이상의 오픈소스 GitHub 프로젝트를 분석하여 '히어로' 개발자—총 코드 기여의 80퍼센트 이상을 차지하는 자—의 역할을 조사한다. 그 결과, 히어로 개발자는 다른 기여자들보다 훨씬 적은 버그를 생성하는 것으로 나타났다. 병목 현상에 대한 우려와는 달리, 히어로 개발자는 흔하고 코드 품질 향상에 기여하므로, 이들이 소프트웨어 프로젝트에서 문제시된다는 개념을 도전한다.

ABSTRACT

A project is one where 80% or more of the contributions are made by the 20% of the developers. In the literature, such projects are deprecated since they might cause bottlenecks in development and communication. However, there is little empirical evidence on this matter. Further, recent studies show that such projects are very prevalent. Accordingly, this paper explores the effect of having heroes in project, from a code quality perspective. We identify the heroes developer communities in 1100+ open source GitHub projects. Based on the analysis, we find that (a) projects are majorly all projects; and (b) the commits from hero developers (who contribute most to the code) result in far fewer bugs than other developers. That is, contrary to the literature, heroes are standard and very useful part of modern open source projects.

연구 동기 및 목표

  • 오픈소스 소프트웨어 프로젝트에서 '히어로' 개발자의 보편성과 영향을 조사하는 것.
  • 히어로 개발자가 버그 밀도 측면에서 코드 품질을 높이는지 또는 낮추는지 평가하는 것.
  • 히어로 개발자가 잠재적 병목 현상으로 인해 문제시될 수 있다는 기존 문헌의 견해를 도전하는 것.
  • 특히 대규모 오픈소스 생태계에서 히어로 개발자의 역할에 대한 실증적 증거를 제공하는 것.

제안 방법

  • 연구는 GitHub에 호스팅된 1,100개 이상의 오픈소스 프로젝트를 분석하여 총 커밋의 80퍼센트 이상을 기여한 기여자를 식별하는 데 사용되었다.
  • 기여자 기여 분포를 활용하여 개발자를 '히어로'(상위 20퍼센트 기여자) 또는 '비히어로'(나머지 80퍼센트 기여자)로 분류하였다.
  • 버그 밀도는 히어로 및 비히어로 기여자로부터의 커밋에서 1,000줄당 도입된 버그 수를 세어 측정하였다.
  • 통계 분석을 통해 프로젝트 전반에서 히어로 및 비히어로 기여자 간 1,000줄당 평균 버그 수를 비교하였다.

실험 결과

연구 질문

  • RQ1오픈소스 소프트웨어 프로젝트에서 히어로 개발자는 얼마나 보편적인가?
  • RQ2히어로 개발자는 비히어로 기여자들보다 더 적은 수의 버그를 도입하는가?
  • RQ3히어로 개발자의 존재는 코드 품질 향상과 관련이 있는가?
  • RQ4히어로 개발자에 대한 의존성으로 인한 위험은 코드 품질 향상의 이점보다 더 크다고 볼 수 있는가?

주요 결과

  • 80퍼센트 이상의 코드를 기여하는 것으로 정의된 히어로 개발자는 분석된 대부분의 오픈소스 프로젝트에 존재한다.
  • 히어로 개발자는 비히어로 기여자들보다 1,000줄당 훨씬 적은 수의 버그를 생성한다.
  • 히어로 기여자로부터의 커밋에서 평균 버그 밀도는 비히어로보다 상당히 낮아, 더 높은 코드 품질을 나타낸다.
  • 연구 결과, 히어로 개발자가 코드 품질을 떨어뜨리거나 프로젝트 리스크를 증가시킨다는 증거는 없으며, 이는 기존 문헌에서 일반적으로 공유되는 가정와 정면으로 배치된다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.