Predicting Code Comprehension: A Novel Approach to Align Human Gaze with Code Using Deep Neural Networks
The better the code quality and the less complex the code, the easier it is for software developers to comprehend and evolve it. Yet, how do we best detect quality concerns in the code? Existing measures to assess code quality, such as McCabe’s cyclomatic complexity, are decades old and neglect the human aspect. Research has shown that considering how a developer reads and experiences the code can be an indicator of its quality. In our research, we built on these insights and designed, trained, and evaluated the first deep neural network that aligns a developer’s eye gaze with the code tokens the developer looks at to predict code comprehension and perceived difficulty. To train and analyze our approach, we performed an experiment in which 27 participants worked on a range of 16 short code comprehension tasks while we collected fine-grained gaze data using an eye tracker. The results of our evaluation show that our deep neural sequence model that integrates both the human gaze and the stimulus code, can predict (a) code comprehension and (b) the perceived code difficulty significantly better than current state-of-the-art reference methods. We also show that aligning human gaze with code leads to better performance than models that rely solely on either code or human gaze. We discuss potential applications and propose future work to build better human-inclusive code evaluation systems.
Fri 19 JulDisplayed time zone: Brasilia, Distrito Federal, Brazil change
14:00 - 15:30 | Software Maintenance and Comprehension 4Research Papers / Demonstrations / Ideas, Visions and Reflections / Industry Papers at Pitomba Chair(s): Timo Kehrer University of Bern | ||
14:00 18mTalk | EyeTrans: Merging Human and Machine Attention for Neural Code Summarization Research Papers Yifan Zhang Vanderbilt University, Jiliang Li Vanderbilt University, Zachary Karas Vanderbilt University, Aakash Bansal University of Notre Dame, Toby Jia-Jun Li University of Notre Dame, Collin McMillan University of Notre Dame, Kevin Leach Vanderbilt University, Yu Huang Vanderbilt University | ||
14:18 18mTalk | Predicting Code Comprehension: A Novel Approach to Align Human Gaze with Code Using Deep Neural Networks Research Papers Tarek Alakmeh University of Zurich, David Reich University of Potsdam, Lena Jäger University of Zurich, Thomas Fritz University of Zurich DOI Pre-print | ||
14:36 18mTalk | R2I: A Relative Readability Metric for Decompiled Code Research Papers Haeun Eom Sungkyunkwan University, Dohee Kim Sungkyunkwan University, Sori Lim Sungkyunkwan University, Hyungjoon Koo Sungkyunkwan University, Sungjae Hwang Sungkyunkwan University | ||
14:54 9mTalk | CognitIDE: An IDE Plugin for Mapping Physiological Measurements to Source Code Demonstrations Fabian Stolp Hasso Plattner Institute, University of Potsdam, Malte Stellmacher Hasso Plattner Institute, University of Potsdam, Bert Arnrich Hasso Plattner Institute, University of Potsdam Link to publication DOI Media Attached | ||
15:03 9mTalk | The lion, the ecologist and the plankton: a classification of species in multi-bot ecosystems Ideas, Visions and Reflections Dimitrios Platis Neat, Linda Erlenhov Chalmers | University of Gothenburg, Francisco Gomes de Oliveira Neto Chalmers | University of Gothenburg Link to publication | ||
15:12 18mTalk | S.C.A.L.E: a CO2-aware Scheduler for OpenShift at ING Industry Papers |