An Empirical Study of How Developers Use - Results - Discussion - - PowerPoint PPT Presentation

an empirical study of how developers use
SMART_READER_LITE
LIVE PREVIEW

An Empirical Study of How Developers Use - Results - Discussion - - PowerPoint PPT Presentation

Outline - Introduction - Dataset An Empirical Study of How Developers Use - Results - Discussion Autocompletion Sheldon Chi and Abdul Khader Naik Autocomplete Research Questions - Standard in modern IDEs - RQ1: What are the common


slide-1
SLIDE 1

An Empirical Study of How Developers Use Autocompletion

Sheldon Chi and Abdul Khader Naik Outline

  • Introduction
  • Dataset
  • Results
  • Discussion

Autocomplete

  • Standard in modern IDEs
  • MS Visual Studio’s Intellisense in our dataset

Research Questions

  • RQ1: What are the common autocompletion targets for developers?
  • RQ2: What are the differences in autocomplete targets for developers across

roles?

  • RQ3: What is the autocomplete rate of developers?
  • RQ4: How does autocomplete rate of developers compare across roles?
slide-2
SLIDE 2

Dataset

  • MSR 2018
  • 11MM events
  • Collected using FeedBag++
  • Visual Studio
  • 81 developers
  • 43 professional developers
  • 4 researchers
  • 5 students
  • 6 hobby programmers
  • 24 unknown

Data cleaning

224054 - autocompletion events Student: 3 Software Engineer: 36 Unknown: 19 Researcher Academic: 3 Hobby Programmer: 5

Sample data

RQ1: What are the common autocompletion targets for developers

slide-3
SLIDE 3

RQ2: What are the differences in autocomplete targets for developers across roles RQ3: What is the autocomplete rate of developers

Autocomplete - 7th most common event. 3.09 % of total events

RQ3: What is the autocomplete rate of developers

0.7% of all events are applied autocompletes events 23.56% of autocompletes are applied the rest are Filtered/cancelled

RQ4: How does autocomplete rate compare across roles

slide-4
SLIDE 4

Conclusions

  • Threats to validity

○ Small sample set for students (3) researchers (3) - might not be true representation. ○ We are not aware of the nature of projects (frontend or backend) that the developers were working on so might be difficult to generalize

  • Future Work

○ Further evaluate context information to get more details about types of methods etc ○ Research can be done towards time taken for developers to apply a code-suggestion and try to optimize it.

Questions?