Smell-driven performance analysis for end-user programmers

Christopher P. Chambers, Christopher Scaffidi · 2013

End-user programmers such as scientists and engineers often adopt a visual domain-specific language due to its easy learnability, but then they later encounter problems when trying to create high-performance programs. In response, they typically have had to resort to learning and using general textual languages such as C or Fortran as a supplement or replacement for the visual language. This paper proposes a technique, called Smell-driven performance analysis, for helping end-user programmers to overcome performance problems without leaving the visual dataflow paradigm. The technique involves statically analyzing programs to heuristically detect areas with potential performance problems (“bad smells”), alerting enduser programmers about problems, and advising on how to fix those problems. We have implemented a prototype for applying this technique and conducted a user study in which end-user programmers diagnosed performance problems. The experiment showed our technique increased participants' success rates at finding problems and decreased the time required for finding solutions. Qualitatively, 92% of participants said our technique was helpful, and they listed numerous specific benefits provided.

Read the paper · More papers on PaperTik