이 연구는 아키텍처 침식의 가장 직접적인 증상인 위반 증상을 자동으로 식별하기 위해 수행되었다. 연구진은 OpenStack(Nova, Neutron) 및 Qt(Qt Base, Qt Creator) 커뮤니티의 4개 대규모 오픈 소스 프로젝트에서 수집한 코드 리뷰 댓글을 대상으로 15개의 기계 학습 기반 및 4개의 딥 러닝 기반 분류기를 개발하였다.
실험 결과, word2vec 기반 SVM 분류기가 가장 좋은 성능을 보였다(F1-score 0.779). 대부분의 경우 fastText 사전 훈련 단어 임베딩 모델을 사용한 분류기가 비교적 좋은 성과를 달성했다. 또한 200차원 사전 훈련 단어 임베딩 모델이 100차원 및 300차원 모델보다 우수한 성능을 보였다.
추가로 다수 투표 전략을 기반으로 한 앙상블 분류기는 개별 분류기를 능가하는 성능을 보였다.
마지막으로 참여 개발자를 대상으로 한 온라인 설문 조사와 인터뷰 결과, 개발자들은 제안된 접근법이 실제 실무에서 유용하다고 평가했다. 특히 이러한 분류기는 개발자들이 아키텍처 관련 위반 문제를 찾고, 우선순위를 지정하고, 처리하는 데 도움을 줄 수 있다.
翻譯成其他語言
從原文內容
arxiv.org
深入探究