Research

 

CSI ]   [ ETH ]


Lab Manager ]

LST Home ]     [ People ]     [ Research ]     [ Teaching ]
[ Publications ]     [ Research Opportunities ]     [ Partners & Supporters ]     [ Earlier Work ]

Revision Classes for Explicit Versioning

Susanne Cech Previtali,  Michele Schäuble,  Thomas Gross,  Revision Classes for Explicit Versioning,  6th ECOOP workshop on Reflection, AOP and Meta-Data for Software Evolution (RAM-SE'09) , July 2009. [RAMSE_2009.pdf]
The source code of software is typically managed by version control systems that keep track of the different versions of files over time. As versioning is associated with a file and not a class, the versioning mechanism is semantically detached from the actual source code. This paper introduces the concept of revision classes. Revision classes provide an explicit versioning mechanism for classes that, similar to inheritance, allows the developer to redefine existing class members and add new class members in a new version. This explicit versioning mechanism allows the developer to explicitly declare the deltas to a previous version. The developer may reflect on the necessity of updates and thus errors can be avoided that sneak into the source code by inconsiderate changes.
[ Publications ]     [ Research Opportunities ]     [ Partners & Supporters ]     [ Earlier Work ]