서지주요정보
Recommending peer reviewers in open source environments by using social-network centrality analyses = 오픈소스 환경에서 소셜 네트워크 중심성 분석을 통한 동료 검토자 추천 방법
서명 / 저자 Recommending peer reviewers in open source environments by using social-network centrality analyses = 오픈소스 환경에서 소셜 네트워크 중심성 분석을 통한 동료 검토자 추천 방법 / Dae-Hee Han.
발행사항 [대전 : 한국과학기술원, 2013].
Online Access 원문보기 원문인쇄

소장정보

등록번호

8025232

소장위치/청구기호

학술문화관(문화관) 보존서고

MCS 13039

휴대폰 전송

도서상태

이용가능(대출불가)

사유안내

반납예정일

리뷰정보

초록정보

Code peer review is a way of software inspection in which product artifacts are examined by a group consisting of its author and relevant developers in order to assess its technical content and quality. Basically, a peer review process in an open source software project relies on the broadcasting mechanism in which code changes are communicated to a registered and potentially interested set of developers. A passive review mechanism cannot assign tasks to contributors and eventually could become inefficient. Also late peer review responses could produce additional bugs because the open source projects evolve continuously. To solve these issues, we propose a Graph-based analysis of the review contributions to recommend target developers for the peer review process. We collected commit history from twenty projects on Github and analyzed their peer review interaction between code changers and reviewers. In order to recommend target developers, we applied two approaches: (1) Peer Review Interaction and (2) Social Network Centrality Analysis. Regarding Social Network Centrality Analysis, we used closeness and betweenness metrics. The set of projects was divided by the number of merged pull requests. First, the projects with large number pull requests can adopt recommending notification method, whereas the projects with the small number pull requests cannot apply it since they do not have a rich training set for the model. We defined three types of stages (initializing, evolving, and stabilizing stage) for an open source project in terms of the number of defects to apply appropriate notification. As a result, we served a sophisticated notification for peer review during the project life cycle. Moreover, we proved our model is evolutionary model. Finally, we calculated how much overhead saves by our model. This research may enable open source software developers and their managers to enhance their code peer review process and save the time take to issue completions with proactive and efficient notification.

소프트웨어 동료 검토는 소프트웨어 검사의 한 종류로서, 제품의 산출물에 대하여 저자, 그리고 관련된 개발자들이 모여서 기술적인 내용과 질을 평가하는 것을 말한다. 기본적으로 오픈소스 프로젝트에서의 코드 변화의 동료 검토는 프로젝트에 등록되었거나 관심을 가진 개발자들에게 전파하는 브로드캐스팅 메커니즘에 의존한다. 그러나, 이러한 수동적인 검토 메커니즘은 오픈소스 프로젝트 참여자에게 책임감을 주지 못하며 너무 복잡하고 비효율적인 경우가 많다. 결국 지연된 동료 검토는 끊임없이 개발되고 성장하는 프로젝트에서 추가적인 버그를 만들 수 있다. 이를 해결하기 위해서 우리는 동료 검토를 위한 타겟 개발자를 추천할 수 있는 그래프 기반의 검토 기여 분석 (Graph-based analysis of review contribution)을 제안했다. 우리는 20개의 Gihub프로젝트에서 커밋히스트리 (commit history)를 모으고 그 프로젝트에서 코드 수정자와 검토자의 상호 영향을 분석하였다. 타겟 개발자를 추천하기 위하여 우리는 두가지 접근법 (Peer Review Interaction and Social Network Centrality Analysis)을 적용하였고, 소셜 네트워크 중심성 분석을 위해선 Closeness, Betweenness를 이용하였다. 선택된 20개의 프로젝트는 병합된 요청의 수에 따라서 나눠질 수 있는데 먼저, 많은 수가 병합된 프로젝트는 추천 알림 방법을 적용할 수 있는 반면에 적은 수가 병합된 프로젝트는 추천방법을 적용하기 어려웠다. 왜냐하면 적은 수가 병합된 프로젝트는 접근법을 적용하기 위한 충분한 트레이닝세트가 없었기 때문이다. 그러나 우리는 오픈소스 소프트웨어를 결함의 관점에서 3가지 단계 (초기단계, 진화단계, 안정화단계)로 나누었고, 그 결과 프로젝트 생명 주기 동안에 정교한 알림 방법을 제공하였다. 그리고 우리의 모델은 진화할 수 있는 모델임을 증명하였고, 최종적으로 우리 모델을 통해서 얼마나 오버헤드를 줄일 수 있는지 확인하였다. 이 연구는 오픈소스 소프트웨어 개발자와 관리자들이 코드 검토 프로세스를 향상시키고 적극적이고 효율적인 알림을 통해 이슈 해결의 시간을 절약할 수 있게 해 줄 것이다.

서지기타정보

서지기타정보
청구기호 {MCS 13039
형태사항 v, 40 p. : 삽화 ; 30 cm
언어 영어
일반주기 저자명의 한글표기 : 한대희
지도교수의 영문표기 : In-Young Ko
지도교수의 한글표기 : 고인영
학위논문 학위논문(석사) - 한국과학기술원 : 전산학과,
서지주기 References : p. 34-37
QR CODE

책소개

전체보기

목차

전체보기

이 주제의 인기대출도서