• 제목/요약/키워드: 버그 트래킹 시스템

검색결과 2건 처리시간 0.014초

개발자 별 버그 해결 유형을 고려한 자동적 개발자 추천 접근법 (A Technique to Recommend Appropriate Developers for Reported Bugs Based on Term Similarity and Bug Resolution History)

  • 박성훈;김정일;이은주
    • 정보처리학회논문지:소프트웨어 및 데이터공학
    • /
    • 제3권12호
    • /
    • pp.511-522
    • /
    • 2014
  • 소프트웨어 개발 및 유지보수 과정에서 여러 종류의 버그가 발생된다. 버그는 소프트웨어의 개발 및 유지 보수 시간을 증가시키는 주요원인으로 소프트웨어의 품질 저하를 초래한다. 버그의 발생을 사전에 완벽하게 방지하는 것은 불가능하다. 대신 버그 질라(Bugzilla), 멘티스BT(MantisGBT), 트랙 (Trac), 질라 (JIRA)와 같은 버그 트래킹 시스템을 이용하여 버그를 효과적으로 관리하는 것이 가능하다. 개발자 또는 사용자가 발생된 버그를 버그 트래킹 시스템에 보고하면, 프로젝트 매니저에 의해서 보고된 버그는 버그 해결에 적합한 개발자에게 전달되어 해결될 때까지 버그 트래킹 시스템에 의해서 추척된다. 여기서 프로젝트 매니저가 버그 해결에 적합한 개발자를 선별하는 것을 버그 분류 작업 (Bug triaging)이라고 하며, 대량으로 발생되는 버그 리포트들을 수동으로 분류하는 것은 프로젝트 매니저에게 있어서 매우 어려운 문제가 된다. 본 논문에서는 버그 트래킹 시스템에 저장된 과거에 해결된 버그 리포트에서 개발자 별 버그 해결 유형을 추출하고, 이를 활용한 버그 분류 작업, 즉 개발자 추천 방법을 제안한다. 먼저 버그 트래킹 시스템에서 각 개발자가 해결한 버그 리포트들을 분류한 후, 자연 언어 처리 알고리즘과 TF-IDF (Term frequency-Inverse document frequency)를 활용하여 각 개발자 별 단어 리스트를 생성한다. 그 후, 새로운 버그가 발생되었을 때 코사인 유사도를 통해서 생성된 개발자 별 단어 리스트와 새로운 버그 리포트의 단어 리스트를 비교하여 가장 유사한 단어 리스트를 가지는 개발자를 추천하는 방법이다. 두 오픈 소스 프로젝트인 이클립스 JDT.UI와 CDT.CORE를 대상으로 수행한 개발자 추천 실험에서 기계 학습 모델 기반의 추천 방법보다 제안하는 방법이 더 우수한 결과를 얻은 것을 확인하였다.

다형의 버그 추적 시스템 마이닝 및 분석을 위한 저장소 독립 모델 설계 (Designing a Repository Independent Model for Mining and Analyzing Heterogeneous Bug Tracking Systems)

  • 이재권;정우성
    • 한국컴퓨터정보학회논문지
    • /
    • 제19권9호
    • /
    • pp.103-115
    • /
    • 2014
  • 본 논문은 다양한 버그 추적 시스템으로부터 추출한 데이터를 통합하여 단일 저장소 모델을 제공하는 UniBAS(Unified Bug Analysis System)를 제안한다. UniBAS는 MSR(Mining Software Repositories) 연구 과정에서의 저장소 추출, 데이터 가공이나 모델 생성과 같은 공통적인 반복 작업을 줄이고, 관련 연구자가 상위 수준의 연구에 보다 집중할 수 있도록 함으로써 해당 연구 수행에 발생하는 복잡도와 비용을 줄여준다. 또한, UniBAS는 데이터 추출 뿐 아니라 질의 기반 분석에 필요한 테이블, 뷰 및 저장 프로시저 등을 자동 생성하며, 수집한 데이터 관리와 외부 도구와의 연동을 위해 다양한 형식의 파일을 생성할 수 있다. 사례 연구로 UniBAS의 유용성을 검증하기 위해 Mozilla사이트의 Firefox프로젝트를 대상으로 실제 중복 버그 리포트를 탐지하는 실험을 진행하였다. 이 과정에서 자동 추출된 자료를 대상으로 질의와 분석이 유연하게 이루어질 수 있었으며, 다양한 자연어 처리 알고리즘 적용을 통해 유효한 실험 결과를 얻을 수 있었다.