The Open UniversitySkip to content

Specifying and detecting meaningful changes in programs

Yu, Yijun; Tun, Thein and Nuseibeh, Bashar (2011). Specifying and detecting meaningful changes in programs. In: 26th IEEE/ACM International Conference On Automated Software Engineering, 6-10 Nov 2011, Lawrence, Kansas, USA , pp. 273–282.

Full text available as:
PDF (Version of Record) - Requires a PDF viewer such as GSview, Xpdf or Adobe Acrobat Reader
Download (547Kb)
DOI (Digital Object Identifier) Link:
Google Scholar: Look up in Google Scholar


Software developers are often interested in particular changes in programs that are relevant to their current tasks: not all changes to evolving software are equally important. However, most existing differencing tools, such as diff, notify developers of more changes than they wish to see. In this paper, we propose a technique to specify and automatically detect only those changes in programs deemed meaningful, or relevant, to a particular development task. Using four elementary annotations on the grammar of any programming language, namely Ignore, Order, Prefer and Scope, developers can specify, with limited effort, the type of change they wish to detect. Our algorithms use these annotations to transform the input programs into a normalised form, and to remove clones across different normalised programs in order to detect non-trivial and relevant differences. We evaluate our tool on a benchmark of programs to demonstrate its improved precision compared to other differencing approaches.

Item Type: Conference Item
Copyright Holders: 2011 IEEE, 2011 ACM
ISSN: 1938-4300
Project Funding Details:
Funded Project NameProject IDFunding Body
FP7 Security Engineering of Lifelong Evolvable Systems (SecureChange)Not SetEuropean Union
SEIF 2011awardNot SetMicrosoft Software Engineering Innovative Foundation
CSET2 programmeNot SetScience Foundation Ireland
Keywords: meaningful changes; relevance; programs; normalisation; clone removals; specifications; differencing
Academic Unit/Department: Mathematics, Computing and Technology > Computing & Communications
Interdisciplinary Research Centre: Centre for Research in Computing (CRC)
Related URLs:
Item ID: 29450
Depositing User: Yijun Yu
Date Deposited: 22 Sep 2011 09:32
Last Modified: 11 Mar 2015 15:23
Share this page:


Scopus Citations

Actions (login may be required)

View Item
Report issue / request change

Policies | Disclaimer

© The Open University   + 44 (0)870 333 4340