Naming the Identified Feature Implementation Blocks from Software Source Code
Abstract
Identifying software identifiers that implement a particular feature of a software product is known as feature identification. Feature identification is one of the most critical and popular processes performed by software engineers during software maintenance activity. However, a meaningful name must be assigned to the Identified Feature Implementation Block (IFIB) to complete the feature identification process. The feature naming process remains a challenging task, where the majority of existing approaches manually assign the name of the IFIB. In this paper, the approach called FeatureClouds was proposed, which can be exploited by software developers to name the IFIBs from software code. FeatureClouds approach incorporates word clouds visualization technique to name Feature Blocks (FBs) by using the most frequent words across these blocks. FeatureClouds had evaluated by assessing its added benefit to the current approaches in the literature, where limited tool support was supplied to software developers to distinguish feature names of the IFIBs. For validity, FeatureClouds had applied to draw shapes and ArgoUML software. The findings showed that the proposed approach achieved promising results according to well-known metrics in terms of Precision and Recall.
Keywords
feature naming, feature implementation blocks, Software engineering, word cloudsThis work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.
R. Al-Msie'Deen, H. Salman, A. Blasi and M. Alsuwaiket, "Naming the Identified Feature Implementation Blocks from Software Source Code," in Journal of Communications Software and Systems, vol. 18, no. 2, pp. 101-110, April 2022, doi: https://doi.org/10.24138/jcomss-2021-0155
@article{al-msiedeen2022namingidentified, author = {Ra'Fat Al-Msie'Deen and Hamzeh Eyal Salman and Anas H. Blasi and Mohammed A. Alsuwaiket}, title = {Naming the Identified Feature Implementation Blocks from Software Source Code}, journal = {Journal of Communications Software and Systems}, month = {4}, year = {2022}, volume = {18}, number = {2}, pages = {101--110}, doi = {https://doi.org/10.24138/jcomss-2021-0155}, url = {https://doi.org/https://doi.org/10.24138/jcomss-2021-0155} }