Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.5555/3021955.3022007acmotherconferencesArticle/Chapter ViewAbstractPublication PagessbsiConference Proceedingsconference-collections
research-article

A Method Based on Naming Similarity to Identify Reuse Opportunities

Published: 17 May 2016 Publication History

Abstract

Software reuse is a development strategy in which existing software components, called reusable assets, are used in the development of new software systems. There are many advantages of reuse in software development, such as minimization of development efforts and improvement of software quality. New methods for reusable asset extraction are essential to achieve these advantages. Extraction methods may be used in different contexts including software product lines derivation. However, few methods have been proposed in literature for reusable asset extraction and recommendation of these reuse opportunities. In this paper, we propose a method for extraction of reuse opportunities based on naming similarity of two types of object-oriented entities: classes and methods. Our method, called JReuse, computes a similarity function to identify similarly named classes and methods from a set of software systems from a domain. These classes and methods compose a repository with reuse opportunities. We also present a prototype tool to support the extraction by applying our method. We evaluate the method with 38 e-commerce information systems mined from GitHub. As a result, we observe that our method is able to identify classes and methods that are relevant in the e-commerce domain.

References

[1]
G. Caldiera and V. Basili. Identifying and qualifying reusable software components. Computer, 24(2):61-70, 1991
[2]
J. Cybulski and K. Reed. Requirements classification and reuse: Crossing domain boundaries. In Proceedings of the 6th International Conference on Software Reuse (ICSR), pages 190-210, 2000.
[3]
W. Frakes and C. Terry. Software reuse: metrics and models. Computing Surveys (CSUR), 28(2):415-435, 1996
[4]
J. Guo and Luqi. A survey of software reuse repositories. In Proceedings of the 7th International Conference and Workshops on the Engineering of Computer Based Systems (ECBS), page 92. IEEE, 2000.
[5]
S. Kawaguchi, P. Garg, M. Matsushita, and K. Inoue. Mudablue: an automatic categorization system for open source repositories. In Proceedings of the 11th Asia-Pacific Software Engineering Conference (APSEC), pages 184-193, 2004
[6]
C. Krueger. Software reuse. Computing Surveys (CSUR), 24(2):131-183, 1992
[7]
A. Kuhn, S. Ducasse, and T. G?rba. Semantic clustering: Identifying topics in source code. Information and Software Technology, 49(3):230-243, 2007
[8]
J. Lee, K. Kang, and S. Kim. A feature-based approach to product line production planning. In Software Product Lines, pages 183-196. Springer, 2004.
[9]
H. Liu and R. Lu. Word similarity based on an ensemble model using ranking svms. In Proceedings of the International Conference on Web Intelligence and Intelligent Agent Technology (WI-IAT), pages 283-286, 2008.
[10]
Y. Maarek, D. Berry, and G. Kaiser. An information retrieval approach for automatically constructing software libraries. Transactions on Software Engineering (TSE), 17(8):800-813, 1991.
[11]
P. Mohagheghi and R. Conradi. Quality, productivity and economic benefits of software reuse: a review of industrial studies. Empirical Software Engineering (ESE), 12(5):471-516, 2007.
[12]
P. Mohagheghi, R. Conradi, O. Killi, and H. Schwarz. An empirical study of software reuse vs. defect-density and stability. In Proceedings of the 26th International Conference on Software Engineering (ICSE), pages 282-291, 2004
[13]
R. Monroe and D. Garlan. Style-based reuse for software architectures. In Proceedings of the 4th International Conference on Software Reuse (ICSR), pages 84-93. IEEE, 1996
[14]
M. Morisio, M. Ezran, and C. Tully. Success and failure factors in software reuse. Transactions on Software Engineering (TSE), 28(4):340-357, 2002
[15]
J. Neighbors. The evolution from software components to domain analysis. International Journal of Software Engineering and Knowledge Engineering (IJSEKE), 2(03):325-354, 1992
[16]
M. Oliveira, E. Goncalves, and K. Bacili. Automatic identification of reusable software development assets: Methodology and tool. In Proceedings of the 8th International Conference on Information Reuse and Integration (IRI), pages 461-466. IEEE, 2007.
[17]
T. Ravichandran and M. Rothenberger. Software reuse strategies and component markets. Communications of the ACM, 46(8):109-114, 2003.
[18]
M. Sojer and J. Henkel. License risks from ad hoc reuse of code from the internet. Communications of the ACM, 54(12):74-81, 2011.
[19]
Y. Tian, D. Lo, and J. Lawall. Sewordsim: Software-specific word similarity database. In Proceedings of the 36th International Conference on Software Engineering (ICSE), pages 568-571, 2014
[20]
Z. Wang, X. Xu, and D. Zhan. A survey of business component identification methods and related techniques. International Journal of Information Technology, 2(4):229-238, 2005.
[21]
C. Wohlin, P. Runeson, M. Host, M. C. Ohlsson, B. Regnell, and A. Wesslen. Experimentation in software engineering. Springer Science e Business Media, 2012.
[22]
Y. Ye and G. Fischer. Reuse-conducive development environments. Automated Software Engineering (ASE), 12(2):199-235, 2005.
[23]
L. Yujian and L. Bo. A normalized levenshtein distance metric. Transactions on Pattern Analysis and Machine Intelligence (TPAMI), 29(6):1091-1095, 2007.
[24]
Z. Zhen, J. Shen, and S. Lu. Wcons: An ontology mapping approach based on word and context similarity. In Proceedings of the International Conference on Web Intelligence and Intelligent Agent Technology (WI-IAT), pages 334-338, 2008.

Cited By

View all
  • (2019)Visualizing Commonalities and Variabilities in a Software Product FamilyProceedings of the XV Brazilian Symposium on Information Systems10.1145/3330204.3330250(1-8)Online publication date: 20-May-2019

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
SBSI '16: Proceedings of the XII Brazilian Symposium on Information Systems on Brazilian Symposium on Information Systems: Information Systems in the Cloud Computing Era - Volume 1
May 2016
615 pages
ISBN:9788576693178
  • General Chairs:
  • Frank Siqueira,
  • Patricia Vilain,
  • Program Chairs:
  • Claudia Cappelli,
  • Raul Sidnei Wazlawick

Sponsors

  • FAPESC: Santa Catarina State Research and Innovation Support Foundation
  • FAPEU: Foundation for the Support of University Research and Outreach
  • CAPES: Brazilian Higher Education Funding Council
  • CNPq: National Council for Technological and Scientific Development

In-Cooperation

Publisher

Brazilian Computer Society

Porto Alegre, Brazil

Publication History

Published: 17 May 2016

Check for updates

Author Tags

  1. Software reuse
  2. naming similarity
  3. reusable assets
  4. tool

Qualifiers

  • Research-article

Conference

SBSI '16
Sponsor:
  • FAPESC
  • FAPEU
  • CAPES
  • CNPq
SBSI '16: Brazilian Symposium on Information Systems
May 17 - 20, 2016
Santa Catarina, Florianopolis, Brazil

Acceptance Rates

SBSI '16 Paper Acceptance Rate 80 of 244 submissions, 33%;
Overall Acceptance Rate 181 of 557 submissions, 32%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 27 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2019)Visualizing Commonalities and Variabilities in a Software Product FamilyProceedings of the XV Brazilian Symposium on Information Systems10.1145/3330204.3330250(1-8)Online publication date: 20-May-2019

View Options

View options

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media