Skip to main content
QUICK REVIEW

[논문 리뷰] Don't Tell Me What Is, Tell Me What Ought To Be! Learning Effective Changes for Software Projects.

Rahul Krishna|arXiv (Cornell University)|2017. 08. 15.
Software Engineering Research참고 문헌 22인용 수 1
한 줄 요약

이 논문은 소프트웨어 프로젝트 개선을 이끄는 실행 가능한 분석을 생성하기 위해 내부 및 다수의 프로젝트 간에서 효과적인 변경 사항을 학습하는 XTREE 및 BELLTREE 알고리즘을 제안한다. 예측에서 지침 중심으로 전환함으로써, 소프트웨어 품질을 향상시키는 구체적이고 영향력 있는 조치를 식별하여 의사결정자들에게 명확하고 증거 기반의 개입 계획을 제공한다.

ABSTRACT

The primary motivation of much of software analytics is decision making. How to make these decisions? Should one make decisions based on lessons that arise from within a particular project? Or should one generate these decisions from across multiple projects? This work is an attempt to answer these questions. Our work was motivated by a realization that much of the current generation software analytics tools focus primarily on prediction. Indeed prediction is a useful task, but it is usually followed by about what actions need to be taken. This research seeks to address the planning task by seeking methods that support actionable analytics that offer clear guidance on what to do. Specifically, we propose XTREE and BELLTREE algorithms for generating a set of actionable plans within and across projects. Each of these plans, if followed will improve the quality of the software project.

연구 동기 및 목표

  • 예측에만 초점을 맞추는 소프트웨어 분석 도구는 의사결정을 위한 실행 가능한 지침이 부족한 점을 보완하기 위해.
  • 실행 가능한 통찰이 한 프로젝트 내에서 유래되는 것인지 다수의 프로젝트를 통해 유래되는 것인지가 더 효과적인지 탐색하기 위해.
  • 소프트웨어 프로젝트 품질을 향상시키기 위한 명확하고 실행 가능한 계획을 생성하는 알고리즘 개발을 위해.
  • 단순히 예측 결과를 제공하는 것이 아니라 의사결정자들에게 지침 기반 추천을 제공하기 위해.

제안 방법

  • XTREE는 이력 데이터를 분석하고 품질 향상에 기여하는 간섭 지점을 식별함으로써 한 소프트웨어 프로젝트 내에서 효과적인 변경 사항을 학습하도록 설계되었다.
  • BELLTREE는 이 접근 방식을 확장하여 다수의 프로젝트에서 학습함으로써 효과적인 관행을 교차 프로젝트로 이전시키고 보편적으로 유익한 변경 사항을 식별한다.
  • 두 알고리즘 모두 변경 사항이 프로젝트 품질 메트릭에 미치는 영향을 모델링하기 위해 의사결정 트리 기반의 구조를 사용한다.
  • 알고리즘은 품질 향상 예측을 기반으로 변경 사항을 우선순위 정렬하여 영향력 있고 실행 가능한 간섭 조치에 집중한다.
  • 모델의 해석 가능성을 높이기 위해 프로젝트 특성과 변경 결과를 표현하는 기능 공학을 통합한다.
  • 방법은 이력 프로젝트 데이터를 기반으로 훈련되며, 결함 밀도나 기술적 부채와 같은 품질 향상 메트릭을 기준으로 결과를 평가한다.

실험 결과

연구 질문

  • RQ1구체적인 변경 사항을 제안하는 실행 가능한 분석이 예측만으로는 소프트웨어 프로젝트 결과를 더 효과적으로 향상시킬 수 있는가?
  • RQ2한 프로젝트 내에서 변경 사항 추천을 학습하는 것과 다수의 프로젝트를 통해 학습하는 것 중 어느 것이 더 효과적인가?
  • RQ3어떤 유형의 변경 사항이 적용되었을 때 소프트웨어 품질 메트릭에서 측정 가능한 향상이 이루어지는가?
  • RQ4어떻게 하면 프로젝트 매니저가 효과적인 간섭 조치로 이끌 수 있는 해석 가능한 실행 가능한 계획을 생성할 수 있는가?

주요 결과

  • XTREE 및 BELLTREE는 소프트웨어 프로젝트 품질 메트릭에 측정 가능한 향상이 이루어지는 실행 가능한 계획을 성공적으로 생성한다.
  • BELLTREE를 통한 교차 프로젝트 학습은 XTREE가 프로젝트별로 학습하는 것보다 더 넓은 범위의 효과적인 변경 사항을 식별한다.
  • 알고리즘은 어떤 변경 사항을 적용하고 어떤 조건에서 적용해야 하는지 명확히 나타내는 해석 가능한 의사결정 규칙을 생성한다.
  • 제안된 방법은 단순히 예측만 하는 기준 대비 직접적인 실행 가능한 지침을 제공함으로써 의사결정자들에게 더 나은 지침을 제공하여 슈퍼비전 성능을 뛰어넘는다.
  • 결과는 실행 가능한 분석이 실제 프로젝트 환경에서 소프트웨어 분석 도구의 유용성을 크게 향상시킬 수 있음을 보여준다.

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

연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.

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

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