What if Clippy Would Criticize Your Code? (benevol2015)

What if Clippy Would Criticize Your Code? (benevol2015)

Comparison study between intrusive and on-demand recommendation systems for software development based on static analysis.

9847702de1f7f19db8c3e158325baa8e?s=128

Yuriy Tymchuk

December 04, 2015
Tweet

Transcript

  1. 2.

    @yuriy_tymchuk What if Clippy Would Criticize Your Code? R A

    E E L V Sometimes I just popup for no reason at all. Like now.
  2. 5.

    Code Quality How easy it is to understand modify test

    the software ISO/IEC, ISO/IEC 9126. Software Engineering – Product quality 6.5. ISO/IEC, 2001 (maintainability)
  3. 6.

    Code Review A. Bacchelli, C. Bird. Expectations, outcomes, and challenges

    of modern code review. In Proceedings of ICSE’13, pp. 712–721, IEEE, 2013
  4. 12.
  5. 13.

    Visual Design Inspection Y. Tymchuk, A. Mocci, and M. Lanza.

    Code Review: Veni, ViDI, Vici. In Proceedings of SANER’15, pp. 151-160, IEEE, 2015
  6. 14.

    Y. Tymchuk, A. Mocci, and M. Lanza. Code Review: Veni,

    ViDI, Vici. In Proceedings of SANER’15, pp. 151-160, IEEE, 2015 Y. Tymchuk, A. Mocci, and M. Lanza. Vidi: The Visual Design Inspector. In Proceedings of ICSE’15, to be published, IEEE, 2015 ViDI
  7. 15.
  8. 17.

    Pharo 4: patches / months ≈ patches/day 1726 12 5

    Pharo 5: patches / months ≈ patches/day 1560 7.5 7 packages 400 classes 5.5k methods 90k
  9. 33.

    Pharo 4: patches / months ≈ patches/day 1726 12 5

    Pharo 5: patches / months ≈ patches/day 1560 7.5 7 packages 400 classes 5.5k methods 90k
  10. 34.

    Pharo 4: patches / months ≈ patches/day 1726 12 5

    Pharo 5: patches / months ≈ patches/day 1560 7.5 7 packages 400 classes 5.5k methods 90k
  11. 45.
  12. 46.

    31% 10% 31% 7% 3% 17% 48% 14% 21% 17%

    Don’t know QA Negative Slightly Negative Neutral Slightly Positive Positive removal of “Missing yourself” addition of “notNilDo: -> notNil:” QualityAssistant-In!uenced Changes
  13. 49.

    38% 24% 14% 3% 3% 17% 48% 14% 21% 17%

    “!nd QualityAssistant very useful” “!nd introduction of a new rule in"uenced by QualityAssistant to be positive” Developers Like QualityAssistant
  14. 50.

    38% 24% 14% 3% 3% 17% 48% 14% 21% 17%

    “!nd QualityAssistant very useful” “!nd introduction of a new rule in"uenced by QualityAssistant to be positive” Developers Like QualityAssistant
  15. 51.

    @yuriy_tymchuk 38% 24% 14% 3% 3% 17% 48% 14% 21%

    17% “!nd QualityAssistant very useful” “!nd introduction of a new rule in"uenced by QualityAssistant to be positive” Developers Like QualityAssistant