Characterizing and Evaluating the Impact of Software Interface Clones

  • Abdeen H
  • Shata O
N/ACitations
Citations of this article
10Readers
Mendeley users who have this article in their library.

Abstract

Software Interfaces are meant to describe contracts governing interactions between logic modules. Interfaces, if well designed, significantly reduce software complexity and ease maintainability . However, as software evolves, the organization and the quality of software interfaces gradually deteriorate. As a consequence, this often leads to increased development cost, lower code quality and reduced reusability . Code clones are one of the most known bad smells in source code. This design defect may occur in interfaces by duplicating method/API declarations in several interfaces. Such interfaces are similar from the point of view of public services/APIs they specify , thus they indicate a bad organization of application services. In this paper, we characterize the interface clone design defect and illustrate it via examples taken from real-world open source software applications. We conduct an empirical study covering nine real - worl d open source software applications to quantify the presence of interface clones and evaluate their impact on interface design quality . The results of the empirical study show that interface clones are widely present in software interfaces. They also show that the presence of interface clones may cause a degradation of interface cohesion and indicate a considerable presence of code clones at implementations level.

Cite

CITATION STYLE

APA

Abdeen, H., & Shata, O. (2013). Characterizing and Evaluating the Impact of Software Interface Clones. International Journal of Software Engineering & Applications, 4(1), 67–77. https://doi.org/10.5121/ijsea.2013.4106

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free