Relation of Code Clones and Change Couplings
Autor: | Reto Geiger, Harald C. Gall, Beat Fluri, Martin Pinzger |
---|---|
Rok vydání: | 2006 |
Předmět: |
Theoretical computer science
Relation (database) Computer science business.industry Software development Set (abstract data type) Identification (information) Metric (mathematics) Code (cryptography) Clone (computing) sense organs Software system skin and connective tissue diseases business Algorithm |
Zdroj: | Fundamental Approaches to Software Engineering ISBN: 9783540330936 FASE |
DOI: | 10.1007/11693017_31 |
Popis: | Code clones have long been recognized as bad smells in software systems and are considered to cause maintenance problems during evolution. It is broadly assumed that the more clones two files share, the more often they have to be changed together. This relation between clones and change couplings has been postulated but neither demonstrated nor quantified yet. However, given such a relation it would simplify the identification of restructuring candidates and reduce change couplings. In this paper, we examine this relation and discuss if a correlation between code clones and change couplings can be verified. For that, we propose a framework to examine code clones and relate them to change couplings taken from release history analysis. We validated our framework with the open source project Mozilla and the results of the validation show that although the relation is statistically unverifiable it derives a reasonable amount of cases where the relation exists. Therefore, to discover clone candidates for restructuring we additionally propose a set of metrics and a visualization technique. This allows one to spot where a correlation between cloning and change coupling exists and, as a result, which files should be restructured to ease further evolution. |
Databáze: | OpenAIRE |
Externí odkaz: |