Home
Scholarly Works
A Delta-Oriented Approach to Support the Safe...
Chapter

A Delta-Oriented Approach to Support the Safe Reuse of Black-Box Code Rewriters

Abstract

The tedious process of corrective and perfective maintenance is often automated thanks to rewriting rules using tools such as Spoon or Coccinelle. These tools consider rules as black-boxes, and compose multiple rules by giving the output of a given rewriting as input to the next one. It is up to the developer to identify the right order (if it exists) among all the different rules. In this paper, we define a formal model compatible with the black-box assumption that reifies the modifications ($$\varDelta $$s) made by each rule. Leveraging these $$\varDelta $$s, we propose a way to safely compose multiple rules when applied to the same program by (i) ensuring the isolated application of the different rules and (ii) yield unexpected behaviors that were silently ignored before. We assess this approach by applying rewriting rules used to fix anti-patterns existing in Android applications to external pieces of software available on GitHub.

Authors

Benni B; Mosser S; Moha N; Riveill M

Book title

New Opportunities for Software Reuse

Series

Lecture Notes in Computer Science

Volume

10826

Pagination

pp. 164-180

Publisher

Springer Nature

Publication Date

January 1, 2018

DOI

10.1007/978-3-319-90421-4_11
View published work (Non-McMaster Users)

Contact the Experts team