Skip to main content
QUICK REVIEW

[논문 리뷰] Analyzing Web Search Behavior for Software Engineering Tasks

Nikitha Rao, Chetan Bansal|arXiv (Cornell University)|2019. 12. 19.
Web Data Mining and Analysis참고 문헌 38인용 수 4
한 줄 요약

이 논문은 빙 검색 로그를 활용하여 소프트웨어 공학(Software Engineering, SE) 작업을 위한 웹 검색 행동에 대한 최초의 대규모 분석을 제시하며, 93%의 F1 스코어를 달성하는 원거리 감독(distant supervision)을 사용해 SE 관련 쿼리를 분류한다. 연구에서는 API, 디버그, HowTo, 학습, 설치, 탐색과 같은 여섯 가지 핵심 검색 의도를 규명하였고, SE 쿼리가 더 낮은 효율성, 더 높은 노력 수준을 요구하며 전체 웹 검색 트래픽의 2.6% 이상을 차지하고 있음을 확인하여, 개발자를 위한 전용 검색 도구의 필요성을 강조한다.

ABSTRACT

Web search plays an integral role in software engineering (SE) to help with various tasks such as finding documentation, debugging, installation, etc. In this work, we present the first large-scale analysis of web search behavior for SE tasks using the search query logs from Bing, a commercial web search engine. First, we use distant supervision techniques to build a machine learning classifier to extract the SE search queries with an F1 score of 93%. We then perform an analysis on one million search sessions to understand how software engineering related queries and sessions differ from other queries and sessions. Subsequently, we propose a taxonomy of intents to identify the various contexts in which web search is used in software engineering. Lastly, we analyze millions of SE queries to understand the distribution, search metrics and trends across these SE search intents. Our analysis shows that SE related queries form a significant portion of the overall web search traffic. Additionally, we found that there are six major intent categories for which web search is used in software engineering. The techniques and insights can not only help improve existing tools but can also inspire the development of new tools that aid in finding information for SE related tasks.

연구 동기 및 목표

  • 소프트웨어 공학(SE) 관련 웹 검색이 일반 웹 검색과 행동 및 효율성 측면에서 어떻게 다를지 이해하는 것.
  • 라벨이 없는 데이터 상황에서도 확장 가능한 방법으로 대규모로 SE 관련 검색 쿼리를 식별하는 방법을 개발하는 것.
  • 도구 및 검색 엔진 설계를 안내하기 위해 소프트웨어 공학 작업에서의 사용자 검색 의도에 대한 종합적인 분류 체계를 제안하는 것.
  • 성공률, 노력 수준, 기기 유형 등의 지표를 기반으로 SE 검색 의도의 분포, 인기, 추세를 분석하는 것.
  • 더 나은 검색 도구와 개인화된 경험을 통해 개발자 생산성을 향상시키기 위한 실질적 통찰을 제공하는 것.

제안 방법

  • 핵심 키워드와 히ュ리스틱을 활용한 원거리 감독을 적용해 기계학습 분류기 모델을 학습시켜, SE 관련 쿼리와 비SE 쿼리를 구분함으로써 93%의 F1 스코어를 달성함.
  • 빙 로그에서 추출한 100만 개의 검색 세션을 분석하여, SE 쿼리와 비SE 쿼리의 재구성, 클릭률, 체류 시간 측면에서 행동 패턴을 비교함.
  • 의도 분석을 기반으로 API, 디버그, HowTo, 학습, 설치, 탐색, 기타의 일곱 가지 검색 의도 카테고리로 구성된 분류 체계를 제안함.
  • 쿼리 패턴과 키워드를 기반으로 히ュ리스틱 기반 모델을 개발하여 SE 쿼리를 제안된 의도 카테고리로 자동 분류함.
  • 600만 개의 SE 쿼리에 대한 대규모 분석을 통해 인기, 성공률, 노력 수준, 기기 유형, 시간 추세 등 다양한 지표에서 의도 분포를 연구함.
  • 시간, 기기 수준, 세션 기반 분석을 통해 다양한 맥락에서 SE 검색 사용 패턴을 규명함.

실험 결과

연구 질문

  • RQ1소프트웨어 공학 관련 검색 쿼리와 세션은 일반 웹 검색 쿼리와 비교해 행동 및 효율성 측면에서 어떻게 다를까?
  • RQ2소프트웨어 공학 작업을 위한 웹 검색 뒤에 도사리는 주요 사용자 의도는 무엇인가?
  • RQ3인기, 성공률, 노력 수준 등의 검색 지표가 다양한 SE 검색 의도 간에 어떻게 달라지는가?
  • RQ4SE 검색 패턴은 기기 및 하루 중 시간대에 따라 어떻게 다를까?
  • RQ5SE 관련 쿼리가 전체 웹 검색 트래픽의 어느 정도를 차지하는가?

주요 결과

  • SE 관련 쿼리는 전체 웹 검색 세션의 2.6% 이상을 차지하며, 상당히 크고도 인식되지 않은 웹 검색 트래픽의 일부임을 시사한다.
  • SE 관련 쿼리는 일반 쿼리보다 효율성이 떨어지며, 쿼리 재구성 빈도가 높고, 클릭 수가 적고, 체류 시간이 짧아 사용자 불만과 작업 난이도를 반영한다.
  • API, 디버그, HowTo, 학습, 설치, 탐색의 여섯 가지 주요 검색 의도가 SE 검색 행동의 대부분을 차지하며, 시간과 기기 유형에 따라 뚜렷한 패턴을 보인다.
  • 디버그, HowTo, API, 설치 쿼리는 데스크톱 기기에서 더 흔한 반면, 학습 및 탐색 쿼리는 모바일 기기에서 더 흔하다.
  • 시간 추세 분석 결과, HowTo 및 API 쿼리는 낮에 정점에 도달하는 반면, 설치 및 탐색 쿼리는 밤에 점점 증가하여 정점에 도달하며, 이는 작업 수행 시간 선호도의 차이를 시사한다.
  • 기존의 일반 웹 검색 엔진이 SE 작업에 최적화되어 있지 않음을 입증하며, 개발자를 위한 전용 검색 엔진과 맥락 인식 기반 도구의 필요성을 강조한다.

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

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

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

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