Find Unique Usages: Helping Developers Understand Common Usages
Autor: | Thomas D. LaToza, Aaron Massey, Emad Aghayi |
---|---|
Rok vydání: | 2020 |
Předmět: |
FOS: Computer and information sciences
Computer science media_common.quotation_subject Exploratory research Computer Science - Human-Computer Interaction 020207 software engineering Context (language use) 02 engineering and technology Reuse Data science Task (project management) Human-Computer Interaction (cs.HC) Software Engineering (cs.SE) Computer Science - Software Engineering 020204 information systems Reading (process) Similarity (psychology) 0202 electrical engineering electronic engineering information engineering Cluster analysis Function (engineering) media_common |
Zdroj: | VL/HCC |
DOI: | 10.48550/arxiv.2005.11474 |
Popis: | When working in large and complex codebases, developers face challenges using \textit{Find Usages} to understand how to reuse classes and methods. To better understand these challenges, we conducted a small exploratory study with 4 participants. We found that developers often wasted time reading long lists of similar usages or prematurely focused on a single usage. Based on these findings, we hypothesized that clustering usages by the similarity of their surrounding context might enable developers to more rapidly understand how to use a function. To explore this idea, we designed and implemented \textit{Find Unique Usages}, which extracts usages, computes a diff between pairs of usages, generates similarity scores, and uses these scores to form usage clusters. To evaluate this approach, we conducted a controlled experiment with 12 participants. We found that developers with Find Unique Usages were significantly faster, completing their task in 35% less time. |
Databáze: | OpenAIRE |
Externí odkaz: |