z-logo
open-access-imgOpen Access
A diagnosis-based approach to software comprehension
Author(s) -
Alexandre Perez,
Rui Abreu
Publication year - 2014
Publication title -
portuguese national funding agency for science, research and technology (rcaap project by fct)
Language(s) - English
Resource type - Conference proceedings
DOI - 10.1145/2597008.2597151
Subject(s) - computer science , program comprehension , debugging , software engineering , software , visualization , software visualization , feature (linguistics) , reuse , component (thermodynamics) , process (computing) , software evolution , software bug , component based software engineering , software development , programming language , software construction , data mining , software system , ecology , linguistics , philosophy , physics , biology , thermodynamics
Program comprehension is a time-consuming task performed during the process of reusing, reengineering, and enhancing existing systems. Currently, there are tools to assist in program comprehension by means of dynamic analysis, but, e.g., most cannot identify the topology and the interactions of a certain functionality in need of change, especially when used in large, real-world software applications. We propose an approach, coined Spectrum-based Feature Comprehension (SFC), that borrows techniques used for automatic software-fault-localization, which were proven to be effective even when debugging large applications in resource-constrained environments. SFC analyses the program by exploiting run-time information from test case executions to compute the components that are important for a given feature (and whether a component is used to implement just one feature or more), helping software engineers to understand how a program is structured and what the functionality's dependencies are. We present a toolset, coined Pangolin, that implements SFC and displays its report to the user using an intuitive visualization. A user study with the open-source application Rhino is presented, demonstrating the efficiency of Pangolin in locating the components that should be inspected when changing a certain functionality.

The content you want is available to Zendy users.

Already have an account? Click here to sign in.
Having issues? You can contact us here
Accelerating Research

Address

John Eccles House
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom