A Method Based on Naming Similarity to Identify Reuse Opportunities
| Main Author: | |
|---|---|
| Publication Date: | 2017 |
| Other Authors: | , , |
| Format: | Article |
| Language: | eng |
| Source: | Brazilian Journal of Information Systems |
| Download full: | https://journals-sol.sbc.org.br/index.php/isys/article/view/330 |
Summary: | Software reuse is a development strategy in which existing software components are used to implement new software systems. There are many advantages of applying software reuse, such as minimization of development efforts and improvement of software quality. Few methods have been proposed in the literature for recommendation of reuse opportunities. In this paper, we propose a method for identification and recommendation of reuse opportunities based on the similarity of the names of classes. Our method, called JReuse, computes a similarity function to identify similarly named classes from a set of software systems from a specific domain. The identified classes compose a repository with reuse opportunities. We also present a prototype tool to support the proposed method. We applied our method, through the tool, to 72 software systems mined from GitHub, in 4 different domains: accounting, restaurant, hospital, and e-commerce. In total, these systems have 1,567,337 lines of code, 57,017 methods, and 12,598 classes. As a result, we observe that JReuse is able to identify the main classes that are frequent in each selected domain. |
| id |
SBC-5_8fbe97402f4a8753d6a7710c58c286fd |
|---|---|
| oai_identifier_str |
oai:journals-sol.sbc.org.br:article/330 |
| network_acronym_str |
SBC-5 |
| network_name_str |
Brazilian Journal of Information Systems |
| repository_id_str |
|
| spelling |
A Method Based on Naming Similarity to Identify Reuse OpportunitiesSoftware reuse is a development strategy in which existing software components are used to implement new software systems. There are many advantages of applying software reuse, such as minimization of development efforts and improvement of software quality. Few methods have been proposed in the literature for recommendation of reuse opportunities. In this paper, we propose a method for identification and recommendation of reuse opportunities based on the similarity of the names of classes. Our method, called JReuse, computes a similarity function to identify similarly named classes from a set of software systems from a specific domain. The identified classes compose a repository with reuse opportunities. We also present a prototype tool to support the proposed method. We applied our method, through the tool, to 72 software systems mined from GitHub, in 4 different domains: accounting, restaurant, hospital, and e-commerce. In total, these systems have 1,567,337 lines of code, 57,017 methods, and 12,598 classes. As a result, we observe that JReuse is able to identify the main classes that are frequent in each selected domain.Sociedade Brasileira de Computação2017-03-12info:eu-repo/semantics/articleinfo:eu-repo/semantics/publishedVersionapplication/pdfhttps://journals-sol.sbc.org.br/index.php/isys/article/view/33010.5753/isys.2017.330iSys - Revista Brasileira de Sistemas de Informação; v. 10 n. 1 (2017); 99-121iSys - Brazilian Journal of Information Systems; Vol. 10 No. 1 (2017); 99-1211984-290210.5753/isys.2017.1reponame:Brazilian Journal of Information Systemsinstname:Sociedade Brasileira de Computação (SBC)instacron:SBCenghttps://journals-sol.sbc.org.br/index.php/isys/article/view/330/339Oliveira, JohnatanFernandes, EduardoSouza, MaurícioFigueiredo, Eduardoinfo:eu-repo/semantics/openAccess2020-07-06T19:34:57Zoai:journals-sol.sbc.org.br:article/330Revistahttps://journals-sol.sbc.org.br/index.php/isys/ONGhttps://journals-sol.sbc.org.br/index.php/isys/oaipublicacoes@sbc.org.br1984-29021984-2902opendoar:2020-07-06T19:34:57Brazilian Journal of Information Systems - Sociedade Brasileira de Computação (SBC)false |
| dc.title.none.fl_str_mv |
A Method Based on Naming Similarity to Identify Reuse Opportunities |
| title |
A Method Based on Naming Similarity to Identify Reuse Opportunities |
| spellingShingle |
A Method Based on Naming Similarity to Identify Reuse Opportunities Oliveira, Johnatan |
| title_short |
A Method Based on Naming Similarity to Identify Reuse Opportunities |
| title_full |
A Method Based on Naming Similarity to Identify Reuse Opportunities |
| title_fullStr |
A Method Based on Naming Similarity to Identify Reuse Opportunities |
| title_full_unstemmed |
A Method Based on Naming Similarity to Identify Reuse Opportunities |
| title_sort |
A Method Based on Naming Similarity to Identify Reuse Opportunities |
| author |
Oliveira, Johnatan |
| author_facet |
Oliveira, Johnatan Fernandes, Eduardo Souza, Maurício Figueiredo, Eduardo |
| author_role |
author |
| author2 |
Fernandes, Eduardo Souza, Maurício Figueiredo, Eduardo |
| author2_role |
author author author |
| dc.contributor.author.fl_str_mv |
Oliveira, Johnatan Fernandes, Eduardo Souza, Maurício Figueiredo, Eduardo |
| description |
Software reuse is a development strategy in which existing software components are used to implement new software systems. There are many advantages of applying software reuse, such as minimization of development efforts and improvement of software quality. Few methods have been proposed in the literature for recommendation of reuse opportunities. In this paper, we propose a method for identification and recommendation of reuse opportunities based on the similarity of the names of classes. Our method, called JReuse, computes a similarity function to identify similarly named classes from a set of software systems from a specific domain. The identified classes compose a repository with reuse opportunities. We also present a prototype tool to support the proposed method. We applied our method, through the tool, to 72 software systems mined from GitHub, in 4 different domains: accounting, restaurant, hospital, and e-commerce. In total, these systems have 1,567,337 lines of code, 57,017 methods, and 12,598 classes. As a result, we observe that JReuse is able to identify the main classes that are frequent in each selected domain. |
| publishDate |
2017 |
| dc.date.none.fl_str_mv |
2017-03-12 |
| dc.type.driver.fl_str_mv |
info:eu-repo/semantics/article info:eu-repo/semantics/publishedVersion |
| format |
article |
| status_str |
publishedVersion |
| dc.identifier.uri.fl_str_mv |
https://journals-sol.sbc.org.br/index.php/isys/article/view/330 10.5753/isys.2017.330 |
| url |
https://journals-sol.sbc.org.br/index.php/isys/article/view/330 |
| identifier_str_mv |
10.5753/isys.2017.330 |
| dc.language.iso.fl_str_mv |
eng |
| language |
eng |
| dc.relation.none.fl_str_mv |
https://journals-sol.sbc.org.br/index.php/isys/article/view/330/339 |
| dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
| eu_rights_str_mv |
openAccess |
| dc.format.none.fl_str_mv |
application/pdf |
| dc.publisher.none.fl_str_mv |
Sociedade Brasileira de Computação |
| publisher.none.fl_str_mv |
Sociedade Brasileira de Computação |
| dc.source.none.fl_str_mv |
iSys - Revista Brasileira de Sistemas de Informação; v. 10 n. 1 (2017); 99-121 iSys - Brazilian Journal of Information Systems; Vol. 10 No. 1 (2017); 99-121 1984-2902 10.5753/isys.2017.1 reponame:Brazilian Journal of Information Systems instname:Sociedade Brasileira de Computação (SBC) instacron:SBC |
| instname_str |
Sociedade Brasileira de Computação (SBC) |
| instacron_str |
SBC |
| institution |
SBC |
| reponame_str |
Brazilian Journal of Information Systems |
| collection |
Brazilian Journal of Information Systems |
| repository.name.fl_str_mv |
Brazilian Journal of Information Systems - Sociedade Brasileira de Computação (SBC) |
| repository.mail.fl_str_mv |
publicacoes@sbc.org.br |
| _version_ |
1832110916635721728 |