COSPEX: A Program Comprehension Tool for Novice Programmers
Developers often encounter unfamiliar code during software maintenance which consumes a significant amount of time for comprehension, especially for novice programmers. Researchers have come up with automated techniques that can provide effective code comprehension and summaries by analyzing a source code and present key information to the developers. Existing debuggers represent the execution states of the program but they do not show the complete execution at a single point. Studies have revealed that the effort required for program comprehension can be reduced if novice programmers are provided with worked examples. Hence, we propose COSPEX (Comprehension using Summarization via Program Execution) - an Atom plugin that dynamically extracts key information for every line of code executed and presents it to the developers in the form of an interactive example-like dynamic information instance. As a preliminary evaluation, we presented 14 undergraduates having Python programming experience up to 1 year with a code comprehension task in a user survey. We observed that COSPEX helped novice programmers in program comprehension and improved their understanding of the code execution. The source code and tool are available at: https://github.com/rishalab/COSPEX, and the demo on Youtube is available at: https://youtu.be/QQY-8KuDaEM
Wed 11 MayDisplayed time zone: Eastern Time (US & Canada) change
11:00 - 12:00 | Program ComprehensionDEMO - Demonstrations at ICSE Demo room 1 Chair(s): Xiaoyin Wang University of Texas at San Antonio | ||
11:00 15mDemonstration | CIDER: Concept-based Interactive Design Recovery DEMO - Demonstrations Hongzhou Fang Drexel University, Yuanfang Cai Drexel University, Rick Kazman University of Hawai‘i at Mānoa, Jason Lefever Drexel University | ||
11:15 15mDemonstration | NaturalCC: An Open-Source Toolkit for Code Intelligence DEMO - Demonstrations Yao Wan Huazhong University of Science and Technology, Yang He University of Technology Sydney, Zhangqian Bi Huazhong University of Science and Technology, Jian-Guo Zhang University of Illinois at Chicago, Yulei Sui University of Technology Sydney, Hongyu Zhang University of Newcastle, Kazuma Hashimoto Google Research, Hai Jin Huazhong University of Science and Technology, Guandong Xu University of Technology, Sydney, Caiming Xiong Salesforce Research, philip yu University of Illinois at Chicago Media Attached | ||
11:30 15mDemonstration | COSPEX: A Program Comprehension Tool for Novice Programmers DEMO - Demonstrations Nakshatra Gupta Indian Institute of Technology Tirupati, Ashutosh Rajput Indian Institute of Technology Tirupati, Sridhar Chimalakonda Indian Institute of Technology Tirupati Pre-print Media Attached | ||
11:45 15mDemonstration | A Tool for Rejuvenating Feature Logging Levels via Git Histories and Degree of Interest DEMO - Demonstrations Yiming Tang Concordia University, Allan Spektor City University of New York (CUNY) Hunter College, Raffi Khatchadourian City University of New York (CUNY) Hunter College, Mehdi Bagherzadeh Oakland University Pre-print Media Attached |