Empirical Research towards a Relevance Assessment of Software Clones
Seiten
Redundancies in program source code - software clones - are a common
phenomenon. Although it is often claimed that software clones decrease
the maintainability of software systems and need to be managed,
research in the last couple of years showed that not all clones can
be considered harmful. A sophisticated assessment of the relevance
of software clones and a cost-benefit analysis of clone management is
needed to gain a better understanding of cloning and whether it is truly
a harmful phenomenon.
This thesis introduces techniques to model, analyze, and evaluate
versatile aspects of software clone evolution within the history of a
system. We present a mapping of non- identical clones across multiple
versions of a system, that avoids possible ambiguities of previous
approaches. Though processing more data to determine the context of
each clone to avoid an ambiguous mapping, the approach is shown to
be efficient and applicable to large systems for a retrospective analysis
of software clone evolution.
The approach has been used in several studies to gain insights into the
phenomenon of cloning in open-source as well as industrial software
systems. Our results show that non-identical clones require more
attention regarding clone management compared to identical clones as
they are the dominating clone type for the main share of our subject
systems. Using the evolution model to investigate costs and benefits of
refactorings that remove clones, we conclude that clone removals could
not reduce maintenance costs for most systems under study.
phenomenon. Although it is often claimed that software clones decrease
the maintainability of software systems and need to be managed,
research in the last couple of years showed that not all clones can
be considered harmful. A sophisticated assessment of the relevance
of software clones and a cost-benefit analysis of clone management is
needed to gain a better understanding of cloning and whether it is truly
a harmful phenomenon.
This thesis introduces techniques to model, analyze, and evaluate
versatile aspects of software clone evolution within the history of a
system. We present a mapping of non- identical clones across multiple
versions of a system, that avoids possible ambiguities of previous
approaches. Though processing more data to determine the context of
each clone to avoid an ambiguous mapping, the approach is shown to
be efficient and applicable to large systems for a retrospective analysis
of software clone evolution.
The approach has been used in several studies to gain insights into the
phenomenon of cloning in open-source as well as industrial software
systems. Our results show that non-identical clones require more
attention regarding clone management compared to identical clones as
they are the dominating clone type for the main share of our subject
systems. Using the evolution model to investigate costs and benefits of
refactorings that remove clones, we conclude that clone removals could
not reduce maintenance costs for most systems under study.
Die Kunst der Übersetzung
Erscheinungsdatum | 30.06.2017 |
---|---|
Sprache | englisch |
Maße | 170 x 240 mm |
Einbandart | Paperback |
Themenwelt | Mathematik / Informatik ► Informatik ► Software Entwicklung |
Informatik ► Theorie / Studium ► Algorithmen | |
Schlagworte | clone detection • clone evolution • software clones • Software engineering |
ISBN-10 | 3-8325-4509-3 / 3832545093 |
ISBN-13 | 978-3-8325-4509-3 / 9783832545093 |
Zustand | Neuware |
Haben Sie eine Frage zum Produkt? |
Mehr entdecken
aus dem Bereich
aus dem Bereich
Buch | Softcover (2024)
Lehmanns Media (Verlag)
39,99 €
Interlingua zur Gewährleistung semantischer Interoperabilität in der …
Buch | Softcover (2023)
Springer Fachmedien (Verlag)
32,99 €
IT zum Anfassen für alle von 9 bis 99 – vom Navi bis Social Media
Buch | Softcover (2021)
Springer (Verlag)
29,99 €