tool choice matters
play

TOOL CHOICE MATTERS Kavaler, Trockman, Vasilescu, Filkov SOFTWARE - PowerPoint PPT Presentation

TOOL CHOICE MATTERS Kavaler, Trockman, Vasilescu, Filkov SOFTWARE DEVELOPMENT KEEPS CHANGING Waterfall OOP Alexa, Good Morning. flexible o ff the shelf - sets thermostat to 69F modular - turn on lights - play


  1. TOOL CHOICE MATTERS Kavaler, Trockman, Vasilescu, Filkov

  2. SOFTWARE DEVELOPMENT KEEPS CHANGING ➤ Waterfall ➤ OOP Alexa, Good Morning. 
 ➤ flexible o ff the shelf - sets thermostat to 69F 
 ➤ modular - turn on lights 
 - play “Thank u, next” ➤ collaborative ➤ agile ➤ platform independence ➤ containers ➤ automation, independence ➤ DevOps, CI, CD time

  3. SOFTWARE DEVELOPMENT KEEPS CHANGING ➤ Waterfall ➤ OOP Alexa, Good Morning. 
 ➤ flexible o ff the shelf - sets thermostat to 69F 
 ➤ modular - turn on lights 
 - play “Thank u, next” ➤ collaborative ➤ agile ➤ platform independence Relies on Tools 
 More and more ➤ containers ➤ automation, independence ➤ DevOps, CI, CD time

  4. � � � � � � � � � � � � � NEW TECH INCREASES PRODUCTIVITY AND PREDICTABILITY Relative productivity Estimation error Precedented Component- COTS Very-high-level Agents, agility, based languages aspects, autonomy Unprecedented A B C D Time and domain understanding From Boehm and Valerdi, 2008

  5. I GOT TOOLS FOR THIS, I GOT TOOLS FOR THAT ➤ Tools available for many tasks ➤ QA: linters, package managers, coverage, testing, deployment COVERALLS

  6. I GOT MULTIPLE TOOLS FOR THIS ➤ Many tools available for the same task ➤ E.g., dependency managers ➤ Projects adopt tools with features needed, presumably

  7. WHICH ONES? ➤ But how are the tools chosen? ➤ What discussions precede the choices? ➤ Are any benefits seen/goals achieved after tool adoption?

  8. PROJECTS USE MULTIPLE TOOLS 50000 37500 Number of projects 25000 12500 0 1 2 3 4 5 6 7 8 9 10+ Number of tools

  9. PROJECTS SWITCH BETWEEN TOOLS ➤ Sometimes projects switch from one tools to another in the same task class ➤ Why do they switch? Is there a benefit?

  10. WE LOOKED AT DISCUSSIONS ➤ We expected to find at least some discussions of the choices ‘ish clipart-library.com

  11. RESEARCH QUESTIONS ➤ RQ1: How often do projects change between tools within the same task class? ➤ RQ2: Are there measurable changes, in terms of monthly churn, pull requests, number of contributors, and issues, associated with adopting a tool? Are different tools within an equivalence class associated with different outcomes? ➤ RQ3: Are certain tool adoption sequences more associated with changes in our outcomes of interest than others?

  12. STUDY DESIGN ➤ Research methodology ➤ Software Repository mining ➤ Quasi-experiments, modeling, hypothesis testing ➤ Case studies for triangulation, theory building ➤ Focus: 3 task classes (linters, dependency managers, code coverage) ➤ Data: 54,440 projects, 38,948 tool adoptions

  13. RQ1: TOOL SWITCHING ALLUVIAL DIAGRAMS 1 2 3 Dependency Manager 25000 800 20000 600 Tool 15000 400 bithound 200 david 10000 gemnasium 0 5000 1 2 3 0 1 2 3

  14. RQ1: TOOL SWITCHING ALLUVIAL DIAGRAMS 1 2 3 Dependency Manager 25000 800 20000 600 Tool 15000 400 bithound 200 david 10000 gemnasium 0 5000 1 2 3 0 1 2 3 Most projects choose one tool within a task class and stick with it. When projects adopt additional tools within the same task class, they go with the most popular choice.

  15. RQ2: EFFECTIVENESS BEFORE AND AFTER ADOPTION Effectiveness variables: churn, #pull requests, #unique authors, #issues

  16. INTERRUPTED TIME SERIES: REGRESSION DISCONTINUITY ɣ β β + δ time : 1 2 3 … … … 100 101 102 … … … 200 time after intervention : 0 0 0 … … … 1 2 3 … … … 100 intervention : 0 0 0 … … … 1 1 1 … … … 1 y i = α + β· time i + ɣ· intervention i + δ· time_after_intervention i + ε i

  17. SLOPE INCREASES OR DECREASES, AND DISCONTINUITY

  18. SOME RESULTS

  19. SOME RESULTS Control Variables

  20. RQ3: ON ADOPTION ORDER

  21. RQ3: SOME RESULTS

  22. CONCLUSION AND FUTURE ➤ Tool choice matters but it is not discussed much ➤ Projects can benefit from adopting the right tool ➤ The order in which tools are adopted matters ➤ Future goal: bespoke tool pipelines, depending on project context

  23. THANKS! ➤ NSF ➤ DECAL @ UCD ➤ Strudel @ CMU

Recommend


More recommend