http://www.dagstuhl.de/12071

February 12 – 17 , 2012, Dagstuhl Seminar 12071

Software Clone Management Towards Industrial Application

Organizers

Ira D. Baxter (Semantic Designs – Austin, US)
Michael Conradt (Google – München, DE)
James R. Cordy (Queen's University – Kingston, CA)
Stan Jarzabek (National University of Singapore, SG)
Rainer Koschke (Universität Bremen, DE)

For support, please contact

Dagstuhl Service Team

Documents

Dagstuhl Report, Volume 2, Issue 2 Dagstuhl Report
List of Participants
Shared Documents
Dagstuhl's Impact: Documents available

Summary

Software clones are identical or similar pieces of code or design. They are often a result of copying and pasting as an act of ad-hoc reuse by programmers. Software clone research is of high relevance for software engineering research and practice today. Several studies have shown that there is a high degree of redundancy in software both in industrial and open-source systems. This redundancy bears the risk of update anomalies and increased maintenance effort.

Many techniques exist that try to detect clones. Some of them are already available in open-source (e.g., PMD) as well as commercial tools (e.g., CloneDr). There are also lines of research in clone detection that evaluate these approaches, reason about ways to remove clones, assess the effect of clones on maintainability, track their evolution, and investigate root causes of clones. Today, research in software clones is an established field with more than 100 publications in various conferences and journals.

The purpose of this seminar was to solidify and give shape to this research area and community. Unlike previous similar events, this Dagstuhl seminar put a particular emphasis on industrial application of software clone management methods and tools and aimed at gathering concrete usage scenarios of clone management in industry, which will help to identify new industrially relevant aspects in order to shape the future research. Research in software clones is very close to industrial application. Among other things, we focused on issues of industrial adoption of our methods and tools.

To achieve our goals, we invited many participants from industry. We managed to reach a percentage of about 30\,\% industrial participation. Talks were given mostly by industrial participants who shared their experiences with us and posed their problem statements. Academic participants were allowed to give a talk if their talk had a clear focus on industrial experiences, needs, problems, and applications of software clone management and related research fields. The focus, however, was on interaction in form of plenary discussions and smaller working groups. The topics for workings groups were gathered by clustering issues the participants wanted to discuss at the seminar. The seminar wiki was used intensively to record the results of the working groups. This agile format was very much appreciated by the participants.

For the remainder of the report, it is important to know the following current categorization of clones:

  • Type-1 clone: Identical fragments only.
  • Type-2 clone: Lexically identical fragments except for variations in identifiers, literals, types, whitespace, layout, and comments
  • Type-3 clone: Gapped clones, that is, clones where statements have been added, removed, or modified.
  • Type-4 clone: Semantic clones, that is, clones with similar semantics but different implementations in code.

Classification

  • Sw-engineering
  • Distribution Maintenance And Enhancement
  • Reusable Software
  • Hardware/Software Protection

Keywords

  • Software clones
  • Code redundancy
  • Clone detection
  • Redundancy removal
  • Software refactoring
  • Software reengineering
  • Plagiarism detection
  • Copyright infringement
  • Source differencing

Book exhibition

Books from the participants of the current Seminar 

Book exhibition in the library, ground floor, during the seminar week.

Documentation

In the series Dagstuhl Reports each Dagstuhl Seminar and Dagstuhl Perspectives Workshop is documented. The seminar organizers, in cooperation with the collector, prepare a report that includes contributions from the participants' talks together with a summary of the seminar.

 

Download overview leaflet (PDF).

Publications

Furthermore, a comprehensive peer-reviewed collection of research papers can be published in the series Dagstuhl Follow-Ups.

Dagstuhl's Impact

Please inform us when a publication was published as a result from your seminar. These publications are listed in the category Dagstuhl's Impact and are presented on a special shelf on the ground floor of the library.

NSF young researcher support