TY - GEN
T1 - Cloned Code Clustering for the Software Product Line Engineering Approach to Developing a Family of Products
AU - Kim, Taeyoung
AU - Lee, Jihyun
AU - Kang, Sungwon
N1 - Publisher Copyright:
© 2024 IEEE.
PY - 2024
Y1 - 2024
N2 - Cloned code clustering identifies identical or similar code fragments, i.e., cloned code, from products of a product family, and then constructs cloned code clusters, a set of files, each of which contains the same cloned code. It is an essential step for migrating from the Clone-And-Own (CAO) approach to the Software Product Line Engineering approach for developing a family of products. This paper proposes a method for cloned code clustering based on files that share cloned code. The method proposed in this paper identifies clusters to use for constructing a product line platform at the source code level in such a way that it works regardless of cloning-in-the-small or cloning-in-the-large; it does not need to know what code is original or what code is cloned; and its results remain consistent regardless of the comparison order or the relative similarity of products of a product family. For evaluation we applied our method to Apo-Games and ArgoUML developed with the CAO approach and confirmed that our method correctly constructs code clusters.
AB - Cloned code clustering identifies identical or similar code fragments, i.e., cloned code, from products of a product family, and then constructs cloned code clusters, a set of files, each of which contains the same cloned code. It is an essential step for migrating from the Clone-And-Own (CAO) approach to the Software Product Line Engineering approach for developing a family of products. This paper proposes a method for cloned code clustering based on files that share cloned code. The method proposed in this paper identifies clusters to use for constructing a product line platform at the source code level in such a way that it works regardless of cloning-in-the-small or cloning-in-the-large; it does not need to know what code is original or what code is cloned; and its results remain consistent regardless of the comparison order or the relative similarity of products of a product family. For evaluation we applied our method to Apo-Games and ArgoUML developed with the CAO approach and confirmed that our method correctly constructs code clusters.
KW - clone and own approach
KW - cloned code clustering
KW - code similarity
KW - product line migration
KW - software product line engineering
UR - https://www.scopus.com/pages/publications/85204080420
U2 - 10.1109/COMPSAC61105.2024.00178
DO - 10.1109/COMPSAC61105.2024.00178
M3 - Conference paper
AN - SCOPUS:85204080420
T3 - Proceedings - 2024 IEEE 48th Annual Computers, Software, and Applications Conference, COMPSAC 2024
SP - 1350
EP - 1355
BT - Proceedings - 2024 IEEE 48th Annual Computers, Software, and Applications Conference, COMPSAC 2024
A2 - Shahriar, Hossain
A2 - Ohsaki, Hiroyuki
A2 - Sharmin, Moushumi
A2 - Towey, Dave
A2 - Majumder, AKM Jahangir Alam
A2 - Hori, Yoshiaki
A2 - Yang, Ji-Jiang
A2 - Takemoto, Michiharu
A2 - Sakib, Nazmus
A2 - Banno, Ryohei
A2 - Ahamed, Sheikh Iqbal
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - 48th IEEE Annual Computers, Software, and Applications Conference, COMPSAC 2024
Y2 - 2 July 2024 through 4 July 2024
ER -