Abstract
In the past years, software reverse engineering dealt with source code understanding. Nowadays, it is levered to software requirements abstract level, supported by feature model notations, language independent, and simpler than the source code reading. The recent relevant approaches face the following insufficiencies: lack of a complete integrated methodology, adapted feature model, feature patterns recognition, and Graph based slicing. This work aims to provide some solutions to the above challenges through an integrated methodology. The following results are unique. Elementary and configuration features are specified in a uniform way by introducing semantics specific attributes. The reverse engineering supports feature pattern recognition and requirements feature model graph-based slicing. The slicing criteria are rich enough to allow answering questions of software requirements maintainers. A comparison of this proposed methodology, based on effective criteria, with the similar works, seems to be valuable and competitive: the enrichment of the feature model and feature pattern recognition were never approached and the proposed slicing technique is more general, effective, and practical.
Highlights
One of the main Software Product Lines (SPLs) purposes is to identify and to manage the variations between the whole products family requirements; these variants provide different functional and non functional requirements based on features [1]
Management operations have been established for reverse engineering, merging, slicing, or refactoring feature models from a group of configurations [3]
The Feature Model is generated from the requirements model
Summary
One of the main Software Product Lines (SPLs) purposes is to identify and to manage the variations between the whole products family requirements; these variants provide different functional and non functional requirements based on features [1]. SPLs are defined as a family of systems that share a common set of core technical assets, with a preplanned extensions and variations to address the requirements of specific customers and market [2]. Feature Models (FM) are the most popular ones. Their major aspect is a graph representation that includes a group of defined features and relations between them [3, 4, 5]. Management operations have been established for reverse engineering, merging, slicing, or refactoring feature models from a group of configurations [3]
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
More From: American Journal of Software Engineering and Applications
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.