SimplyHover: Improving Comprehension of else Statements
Code comprehension is a vital mental process in any maintenance activity. It becomes decisive in large code blocks, in particular those that are governed by if-else statements. These large blocks increase the spatial distance between the if statement and its else counterpart or other dependent else statements. This increased spatial complexity makes it hard for the developer to recall the if logical expression that he has just read and understood, so he needs to go back and read it again, then understand it, and eventually negate it to get the else implicit logical expression. In extreme cases the if-else pair might occur in different pages so the developer has to scroll back and forth to grasp them both. Furthermore, to understand the else implicit negated expression he might want to go back to the farthest if statement and understand the aggregated logical expression all the way to the else which makes the understanding of the else even harder. In this work, we introduce SimplyHover, a plug-in for the Eclipse IDE that brings the if condition next to its else counterpart or one of its descendants saving the developer to go back and forth over and over again. Furthermore, SimplyHover presents to the developer, when he hovers over else, the if conditions in their negated form and even lets him write his own simplification for that. In some cases, the tool even suggests its own simplification of the aggregated expression. To demonstrate the usage and usefulness of SimplyHover, a few code snippets from real software are presented.
Wed 15 JulDisplayed time zone: (UTC) Coordinated Universal Time change
00:00 - 01:00 | Session 9: For DevelopersTool Demonstration / Research / ERA at ICPC Chair(s): Anderson Oliveira PUC-Rio | ||
00:00 12mPaper | An Empirical Study on Dynamic Typing Related Practices in Python Systems Research Zhifei Chen Nanjing University, Yanhui Li Department of Computer Science and Technology, Nanjing University, Bihuan Chen Fudan University, Wanwangying Ma Nanjing University, Lin Chen Nanjing University, Baowen Xu Nanjing University Media Attached | ||
00:12 12mPaper | Performing Tasks Can Improve Program Comprehension Mental Model of Novice Research Amal A. Shargabi Qassim University, Syed Ahmad Aljunid Universiti Teknologi MARA, Muthukkaruppan Annamalai Universiti Teknologi MARA, Abdullah Mohd Zin Universiti Kebangsaan Malaysia Media Attached | ||
00:24 12mPaper | SimplyHover: Improving Comprehension of else Statements Tool Demonstration Ahmad Jbara Computer and Cyber Sciences, Augusta University, Georgia, USA, Bar Ben Michael , Or Shacham , Omer Tavor Media Attached | ||
00:36 12mPaper | Combining biometric data with focused document types classifies a success of program comprehension ERA Toyomi Ishida Nara Institute of Science and Technology, Hidetake Uwano National Institute of Technology, Nara College, Japan, Yoshiharu Ikutani Nara Institute of Science and Technology Media Attached | ||
00:48 12mPaper | Program Comprehension in Virtual Reality ERA James Dominic Clemson University, Brock Tubre Clemson Universtiy, Jada Houser Clemson University, Charles Ritter Clemson University, Deborah Kunkel Clemson University, Paige Rodeghero Clemson University Media Attached |