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. |
Year | DOI | Venue |
---|---|---|
2007 | 10.1145/1352678.1352681 | ICDL |
Keywords | Field | DocType |
common support,software artifact,software system,changeboxes support multiple,encapsulating change,general-purpose mechanism,changeboxes offer,development environment,real world software system,first-class entity,software systems,programming language | Existential quantification,Systems engineering,Software artifacts,Software engineering,Computer science,Knowledge-based systems,Software system,Exploit,Semantics,Limiting,Software development | Conference |
Citations | PageRank | References |
21 | 0.99 | 26 |
Authors | ||
6 |
Name | Order | Citations | PageRank |
---|---|---|---|
Marcus Denker | 1 | 285 | 23.94 |
Tudor Gîrba | 2 | 456 | 26.89 |
Adrian Lienhard | 3 | 173 | 11.01 |
Oscar Nierstrasz | 4 | 2404 | 346.86 |
Lukas Renggli | 5 | 170 | 12.95 |
Pascal Zumkehr | 6 | 21 | 0.99 |