Class Schema Evolution for Persistent Object-Oriented Software: Model, Empirical Study, and Automated Support

Class Schema Evolution for Persistent Object-Oriented Software: Model, Empirical Study, and Automated Support
复制标题

持久性面向对象软件的类模式演化:模型、实证研究和自动化支持

DOI:
--
复制
发表时间:
2011
影响因子:
7.4
通讯作者:
B. Meyer
B. Meyer
中科院分区:
计算机科学1区
文献类型:
--
作者:
M. Piccioni;M. Oriol;B. Meyer

文献摘要

被引文献

相似文献

随着面向对象编程语言对对象序列化的广泛支持,持久对象已经变得司空见惯,大多数大型面向对象软件系统都依赖于大量的持久数据。这样的系统也会随着时间的推移而进化。但是,从模式已更改的类中检索以前持久化的对象是困难的,并且可能导致应用程序的一致性失效。ESCHER框架通过集成ide的方法解决了这些问题,该方法通过管理代码版本和自动生成转换函数来处理类模式的演变。基础结构还强制执行类不变量,以防止引入潜在的损坏对象。本文描述了类属性变化模型、类进化鲁棒性测度、四项实证研究以及ESCHER系统的设计与实现。
With the wide support for object serialization in object-oriented programming languages, persistent objects have become commonplace and most large object-oriented software systems rely on extensive amounts of persistent data. Such systems also evolve over time. Retrieving previously persisted objects from classes whose schema has changed is, however, difficult, and may lead to invalidating the consistency of the application. The ESCHER framework addresses these issues through an IDE-integrated approach that handles class schema evolution by managing versions of the code and generating transformation functions automatically. The infrastructure also enforces class invariants to prevent the introduction of potentially corrupt objects. This paper describes a model for class attribute changes, a measure for class evolution robustness, four empirical studies, and the design and implementation of the ESCHER system.