Empirical Research towards a Relevance Assessment of Software Clones

Empirical Research towards a Relevance Assessment of Software Clones

Author: Saman Bazrafshan

Publisher: Logos Verlag Berlin GmbH

Published: 2017-06-30

Total Pages: 270

ISBN-13: 3832545093

DOWNLOAD EBOOK

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.


Clone Evolution

Clone Evolution

Author: Nils Göde

Publisher: Logos Verlag Berlin GmbH

Published: 2011

Total Pages: 236

ISBN-13: 3832529209

DOWNLOAD EBOOK

Duplicated passages of source code - code clones - are a common property of software systems. While clones are beneficial in some situations, their presence causes various problems for software maintenance. Most of these problems are strongly related to change and include, for example, the need to propagate changes across duplicated code fragments and the risk of inconsistent changes to clones that are meant to evolve identically. Hence, we need a sophisticated analysis of clone evolution to better understand, assess, and manage duplication in practice. This thesis introduces Clone Evolution Graphs as a technique to model clone relations and their evolution within the history of a system. We present our incremental algorithm for efficient and automated extraction of Clone Evolution Graphs from a system's history. The approach is shown to scale even for large systems with long histories making it applicable to retroactive analysis ofclone evolution as well as live tracking of clones during software maintenance.We have used Clone Evolution Graphs in several studies to analyze versatile aspects of clone evolution in open-source as well as industrial systems. Our results show that the characteristics of clone evolution are quite different between systems, highlighting the need for a sophisticated technique like Clone Evolution Graphs to track clones and analyze their evolution on a per-system basis. We have also shown that Clone Evolution Graphs are well-suited to analyze the change behavior of individual clones and can be used to identify problematic clones within a system. In general, the results of our studies provide new insights into how clones evolve, how they are changed, and how they are removed.


Code Clone Analysis

Code Clone Analysis

Author: Katsuro Inoue

Publisher: Springer Nature

Published: 2021-08-03

Total Pages: 236

ISBN-13: 9811619271

DOWNLOAD EBOOK

This is the first book organized around code clone analysis. To cover the broad studies of code clone analysis, this book selects past research results that are important to the progress of the field and updates them with new results and future directions. The first chapter provides an introduction for readers who are inexperienced in the foundation of code clone analysis, defines clones and related terms, and discusses the classification of clones. The chapters that follow are categorized into three main parts to present 1) major tools for code clone analysis, 2) fundamental topics such as evaluation benchmarks, clone visualization, code clone searches, and code similarities, and 3) applications to actual problems. Each chapter includes a valuable reference list that will help readers to achieve a comprehensive understanding of this diverse field and to catch up with the latest research results. Code clone analysis relies heavily on computer science theories such as pattern matching algorithms, computer language, and software metrics. Consequently, code clone analysis can be applied to a variety of real-world tasks in software development and maintenance such as bug finding and program refactoring. This book will also be useful in designing an effective curriculum that combines theory and application of code clone analysis in university software engineering courses.


The Clone Alliance

The Clone Alliance

Author: Steven L. Kent

Publisher: Penguin

Published: 2007-10-30

Total Pages: 385

ISBN-13: 1101208635

DOWNLOAD EBOOK

Third in the national bestselling series-military science fiction on the edge. Rogue clone Wayson Harris is stranded on a frontier planet-until a rebel offensive puts him back in the uniform of a U.A. Marine, once again leading a strike against the enemy. But the rebels have a powerful ally no one could have imagined.


Ireland

Ireland

Author: Great Britain. War Office

Publisher:

Published: 1874

Total Pages: 156

ISBN-13:

DOWNLOAD EBOOK


Clone 71

Clone 71

Author: Matthew Reade

Publisher: Lulu.com

Published: 2008-02-01

Total Pages: 114

ISBN-13: 0615193196

DOWNLOAD EBOOK

Clone 71 is anything but a normal guy. He is a clone, and his home is a huge facility specially built to create more people like him. After he discovers a plot by the evil Schwartz brothers to take over the world, Clone 71 and his two friends, Clone 13 and RG Clone, take refuge in a fortified city. But when Clone 13 goes missing, Clone 71 must leave his safety behind to find his friend. In doing so, he discovers more about his past and why he is a clone.