Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Pasteur’s Quadrant Bridging the Gap between Basic and Use-Inspired Research in Software Engineering (Invited Talk - VEM 2015)

ASERG, DCC, UFMG
September 28, 2015

Pasteur’s Quadrant Bridging the Gap between Basic and Use-Inspired Research in Software Engineering (Invited Talk - VEM 2015)

Pasteur’s Quadrant is a classification proposed to describe research that is fundamental for the advancement of knowledge (basic research) but at the same time seeks for immediate solutions to real-world problems (use-inspired research). The name is a tribute to Louis Pasteur, whose scientific discoveries changed the way we view and prevent many diseases. In this talk, we first advocate that software engineering research should always target Pasteur’s Quadrant. Software engineering researchers should constantly look for hard, novel, and fundamental solutions (basic research) but that have an immediate contribution to software practitioners (use-inspired research). We then list some strategies that can help to deliver basic, but use-inspired scientific results. Finally, we share our experience on using these strategies in two recent projects from our research group, in the areas of software maintenance, evolution, and visualization.

ASERG, DCC, UFMG

September 28, 2015
Tweet

More Decks by ASERG, DCC, UFMG

Other Decks in Research

Transcript

  1. Pasteur’s Quadrant
    Bridging the Gap between Basic and Use-
    Inspired Research in Software Engineering
    Marco Tulio Valente
    VEM Workshop, BH, Sept 2015

    View Slide

  2. 2

    View Slide

  3. 3
    Basic vs Applied: false dichotomy

    View Slide

  4. 4
    Research Classification
    http://blogs.nature.com/thescepticalchymist/2013/06/s
    peaking-frankly-the-allure-of-pasteurs-quadrant.html

    View Slide

  5. 5
    Research Classification
    http://blogs.nature.com/thescepticalchymist/2013/06/s
    peaking-frankly-the-allure-of-pasteurs-quadrant.html

    View Slide

  6. Software Engineering Research
    should target Pasteur’s Quadrant
    6

    View Slide

  7. Software Engineering Research
    7
    We need to make progress on both fronts

    View Slide

  8. Software Engineering Research
    • Basic Research
    – Expand our knowledge on software engineering
    principles and techniques
    • Use-Inspired Research
    – Change the way people develop software
    8
    We need to make progress on both fronts

    View Slide

  9. Two strategies to
    make our research more effective
    (including examples from our research group)
    9

    View Slide

  10. #1: Incremental research has its
    value
    (specially to transfer results)
    10

    View Slide

  11. JSCity
    11
    • Code City (Lanza & Wettel): OO language

    View Slide

  12. JSCity
    12
    • Code City (Lanza & Wettel): OO language
    • JSCity: Code City for (and by) JavaScript
    https://github.com/aserg-ufmg/JSCity

    View Slide

  13. JSCity
    • Yes, incremental
    – New language, minor adaptations
    13

    View Slide

  14. JSCity
    • Yes, incremental
    – New language, minor adaptations
    • But, we promoted code city among practitioners
    – 30K page views, +400 stars, many tweets
    14

    View Slide

  15. JSCity
    • Yes, incremental
    – New language, minor adaptations
    • But, we promoted code city among practitioners
    – 30K page views, +400 stars, many tweets
    • And, received valuable feedback
    – Cool to see isomer[0] on here :) Does the
    visualization mean I'm doing good?
    15

    View Slide

  16. #2: We can (and should) involve
    practitioners early in research
    projects
    16

    View Slide

  17. Truck Factor
    • Heuristics to compute the truck factor of a project
    17

    View Slide

  18. Truck Factor
    • Heuristics to compute the truck factor of a project
    • Truck Factor (aka bus factor)
    – Number of developers that have to be hit by a
    truck (or quit) before a project is incapacitated
    18

    View Slide

  19. Example: Truck Factor
    • Blog post and preprint promoting our first heuristic
    19
    https://peerj.com/preprints/1233/
    http://mtov.github.io/Truck-Factor/

    View Slide

  20. Truck Factor
    • Great attention on social media sites
    – Slashdot, Hacker News, etc
    • Audience
    – Blog: 30K page views
    – Preprint: +4,500 downloads
    20

    View Slide

  21. Truck Factor
    21
    • Survey with developers
    • Response ratio of 70%, some answers with +4 pages

    View Slide

  22. Truck Factor
    22
    https://github.com/elastic/elasticsearch/issues/12726
    • Survey with developers
    • Response ratio of 70%, some answers with +4 pages

    View Slide

  23. Truck Factor
    23
    https://github.com/elastic/elasticsearch/issues/12726
    Your preprint generated some interesting
    discussion internally when it first came out
    • Survey with developers
    • Response ratio of 70%, some answers with +4 pages

    View Slide

  24. Pasteur’s is our quadrant
    Basic && Use-inspired Research
    24
    Take-Away Message

    View Slide

  25. Thanks!
    Marco Tulio Valente
    UFMG, Brazil
    VEM Workshop, BH, Sept 2015

    View Slide