How clone detection tools help to recognize copy & paste in specifications
Requirements for software development are often specified in extensive documents (technical concepts). Many use cases or rules are described, which often have similarities or recurring properties. Copy & paste is usually used to document these. It has long been known from programming that such “cloning” leads to problems: the overall scope of the program (or document) increases significantly and makes reviews, for example, more time-consuming. Subsequent changes always require several places to be adapted; this can easily lead to inconsistencies and thus to errors in the software. Together with experts from the Technical University of Munich, we used innovative clone detection tools to identify copy-and-paste components in requirements documents. We show that this occurs in many real documents and can be avoided by appropriate specification techniques.
- 8,667 pages analyzed in 28 sample requests
- 85-100% precision in the detection of clones
- On average over 10% copy & paste in requirements documents
Read more?
CAN CLONE DETECTION SUPPORT QUALITY ASSESSMENTS OF REQUIREMENTS SPECIFICATIONS?
Stefan Wagner, Jonathan Streit, Elmar Juergens, Florian Deissenboeck, Martin Felikas, Benjamin Hummel, Bernhard Schaetz, Christoph Domann PROCEEDINGS OF ICSE'10, CAPE TOWN, SOUTH AFRICA, MAY 2010