Encapsulating and Exploiting Change with Changeboxes

Abstract : Real world software systems change continuously to meet new demands. Most programming languages and development environments, however, are more concerned with limiting the effects of change rather than enabling and exploiting change. Various techniques and technologies to exploit change have been developed over the years, but there exists no common support for these approaches. We propose Changeboxes as a general-purpose mechanism for encapsulating change as a first-class entity in a running software system. Changeboxes support multiple, concurrent and possibly inconsistent views of software artifacts within the same running system. Since Changeboxes are first-class, they can be manipulated to control the scope of change in a running system.Furthermore, Changeboxes capture the semantics of change. Changeboxes can be used, for example, to encapsulate refactorings, or to replay or analyze the history of changes. In this paper we introduce Changeboxes by means of a prototype implementation. We illustrate the benefits that Changeboxes offer for evolving software systems, and we present the results of a preliminary performance evaluation that assesses the costs associated with Changeboxes while suggesting possible strategies for improvement.
Document type :
Conference papers
Complete list of metadatas

Cited literature [47 references]  Display  Hide  Download

https://hal.inria.fr/inria-00555780
Contributor : Lse Lse <>
Submitted on : Friday, January 14, 2011 - 2:13:36 PM
Last modification on : Friday, January 14, 2011 - 5:11:31 PM
Long-term archiving on : Tuesday, November 6, 2012 - 11:31:34 AM

File

Denk07cChangeboxes.pdf
Files produced by the author(s)

Identifiers

Citation

Marcus Denker, Tudor Girba, Adrian Lienhard, Oscar Nierstrasz, Lukas Renggli, et al.. Encapsulating and Exploiting Change with Changeboxes. 2007 International Conference on Dynamic Languages (ICDL 2007, ESUG, 2007, Lugano, Switzerland. pp.25-49, ⟨10.1145/1352678.1352681⟩. ⟨inria-00555780⟩

Share

Metrics

Record views

80

Files downloads

288