Reverse Engineering Feature Models

TitleReverse Engineering Feature Models
Publication TypeConference Paper
Year of Publication2011
AuthorsShe, S., R. Lotufo, T. Berger, A. Wąsowski, and K. Czarnecki
Conference NameICSE 2011

Feature models describe the common and variable characteristics of a product line. Their advantages are well recognized in product line methods. Unfortunately, the task of creating a feature model for an existing project is both daunting and time-consuming, requiring substantial effort from a modeler.

We present procedures for reverse engineering feature models, based on a crucial heuristic for identifying parents---the major challenge of this task. We also automatically recover constructs such as feature groups, mandatory features, and implies/exclude edges. We evaluate the technique on two large-scale software product lines with existing reference feature models---the Linux and eCos kernels---and FreeBSD, a project without a feature model. Our heuristic is effective across all three projects. It ranks the correct parent among the top results for vast majority of features. We effectively reduce the information a modeler has to consider from thousands of choices to typically five or less.

Refereed DesignationRefereed
icse2011.pdf460.13 KB
icse2011-slides.pdf664.58 KB