What Do Practitioners Ask about Code Clone A
What Do Practitioners Ask about Code Clone? A Preliminary Investigation of Stack Overflow Eunjong Choi 1, Raula Gaikovina Kula 2, Norihiro Yoshida 2, Katsuro Inoue 1 1 Graduate School of Information Science and Technology, Osaka University, Japan 2 Graduate School of Information Science, Nagoya University, Japan 1 Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
Motivation of This Study Very little is known about practitioner’s needs on the detection and analysis of code clones. practitioners researcher Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 2
Stack Overflow (SO) 3 Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
The Data That We Analyzed from July 31, 2008 to July 31, 2012 4 Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
The Data That We Analyzed from July 31, 2008 to July 31, 2012 Choose keywords related code clones 5 Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
The Data That We Analyzed 'code clone' 'code cloning' 'code redundancy' 'code duplicate' 'code duplication' 'duplicate code' 'duplicated code' from July 31, 2008 to July 31, 2012 Choose keywords related code clones Select questions based on the chosen keywords 6 Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
The Data That We Analyzed 'code clone' 'code cloning' 'code redundancy' 'code duplicate' 'code duplication' 'duplicate code' 'duplicated code' from July 31, 2008 to July 31, 2012 Choose keywords related code clones Select questions based on the chosen keywords 1, 654 questions Manually validate Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 7
The Data That We Analyzed 'code clone' 'code cloning' 'code redundancy' 'code duplicate' 'code duplication' 'duplicate code' 'duplicated code' from July 31, 2008 to July 31, 2012 Choose keywords related code clones Select questions based on the chosen keywords 1, 654 questions 925 questions Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Manually validate 8
The Data That We Analyzed 'code clone' 'code cloning' 'code redundancy' 'code duplicate' 'code duplication' 'duplicate code' 'duplicated code' from July 31, 2008 to July 31, 2012: Choose keywords related code clones Select questions based on the chosen keywords 925 questions Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Manually validate 9
Research Question 1 • RQ 1: What Kinds of Programming Languages/Techniques were Appeared in Questions on Clones? 10 Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
Methodology 11 Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
Methodology Tags related to programming language ? Tags related to development techniques? 12 Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
Methodology 13 Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
Methodology Tags related to programming language ? Tags related to development techniques? Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 14
Finding (1/2) c# java c++ asp. net jquery php javascript. net ruby-on-rails python 0 20 40 60 80 100 120 140 160 180 Tags related to programming language Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 200
Finding (2/2) refactoring design-patterns inheritance templates design dry generics unit-testing architecture mvc 0 20 40 60 Tags related to development techniques Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 80
Finding (2/2) refactoring design-patterns inheritance templates The most design frequently appeared tags in the questions dry are about object-oriented programming generics languages and web programming languages. unit-testing Moreover, tags about clone management also architecture frequently appear mvc 0 20 40 60 Tags related to development techniques Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 80
Research Question 2 RQ 2: Were Questions on Clones Asked by Trusted Practitioners? Novice? Expert? Practitioners that are interested in handling code clones 18 Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
Methodology 19 Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
Finding 3 000 2 500 2 000 Asked 1 500 Answered 1 000 500 0 Reputations(Clone) Reputations(General) The average reputations of practitioners who asked answered questions on clones, and other questions 20 Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
Finding 3 000 2 500 2 000 1 500 1 000 Asked Practitioners who asked about clones Answered are trusted by the others in SO. 500 0 Reputations(Clone) Reputations(General) The average reputations of practitioners who asked answered questions on clones, and other questions 21 Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
Discussion 22 Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
Discussion 23 Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
Discussion 24 Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
Discussion 25 Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
Summary 26 Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
- Slides: 26