Projects per year
Software evolution consists in keeping a software system up-to-date and responsive to ever changing business and technological requirements. The ideas and work presented in this paper focus on the evolution of complex database applications, i.e., data intensive software systems comprising a database. Database migration, database restructuring and database integration are popular evolution scenarios that involve not only changing the data components of applications, but also rewriting some parts of the programs themselves, even when no functional change occurs. In general, such evolution patterns induce the modification of three mutually dependent system components, namely the data structures (i.e., the schema ), the data instances and the application programs. When the system evolves, the consistency that exists between these three artifacts must be preserved. In this paper, we focus on the consistency relationship that holds between the application programs and their database schema. We assume that the evolution process starts with a schema modification, potentially challenging this consistency. Our objective is to develop a general consistency framework for database evolution. The approach to achieve this objective is the following. First we propose a classification of databaseapplication programs inconsistencies. The idea is to extend and redefine existing (in)consistency classification defined in the context of modeldriven engineering (MDE). Next we present a general approach to consistency checking and preservation for database applications. This approach is based on the use of a pivot model for database structures (GER) on top of which an abstract data manipulation language (LDA) is defined.
|Publication status||Unpublished - 2007|