Fex: Assisted Identification of Domain Features from C Programs
Patrick M\"uller, Krishna Narasimhan, Mira Mezini

TL;DR
Fex is a novel method combining information retrieval and program analysis to help domain experts identify feature-specific modules in legacy C software using natural language search terms.
Contribution
The paper introduces a new approach that enables extraction of feature modules from legacy C code through natural language queries, aiding software comprehension.
Findings
Successfully extracted modules from open source C projects.
Demonstrated effectiveness of combining IR and program analysis.
Provided a proof of concept tool for feature identification.
Abstract
Modern software typically performs more than one functionality. These functionalities or features are not always organized in a way for modules representing these features to be used individually. Many software engineering approaches like programming language constructs, or product line visualization techniques have been proposed to organize projects as modules. Unfortunately, much legacy software suffer from years or decades of improper coding practices that leave the modules in the code almost undetectable. In such scenarios, a desirable requirement is to identify modules representing different features to be extracted. In this paper, we propose a novel approach that combines information retrieval and program analysis approaches to allow domain experts to identify slices of the program that represent modules using natural language search terms. We evaluate our approach by building a…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
