LIBD:THESES

Affichages
De LIBD.
Page en développement


Theses / Thèses


<Retour à la page des publications / Back>


Sommaire

Program Analysis and Transformation for Data-Intensive System Evolution

Author: Anthony Cleve
Date: 2009
Abstract
Data-intensive software systems are generally made of a database (sometimes in the form of a set of files) and a collection of application programs in strong interaction with the former. They constitute critical assets in most enterprises, since they support business activities in all production and management domains. Data-intensive systems form most of the so-called legacy systems: they typically are one or more decade old, they are very large, heterogeneous and highly complex. Many of them significantly resist modifications and change due to the lack of documentation, to the use of aging technologies and to inflexible architectures. Therefore, the evolution of data-intensive systems clearly calls for automated support. This thesis particularly explores the use of automated program analysis and transformation techniques in support to the evolution of the database component of the system. The program analysis techniques aim to ease the database evolution process, by helping the developers to understand the data structures that are to be changed, despite the lack of precise and up-to-date documentation. The objective of the program transformation techniques is to support the adaptation of the application programs to the new database. This adaptation process is studied in the context of two realistic database evolution scenarios, namely database platform migration and database schema refactoring.
[full text]


Legacy database federation. A combined forward-Reverse approach

Author: Philippe Thiran
Date: 2003
Abstract
PTH.
[full text]


Program comprehension in database reverse engineering

Author: Jean Henrard
Date: 2003
Abstract
For many years software engineering has primarily focused on the development of new systems and neglected maintenance and reengineering of legacy applications. Maintenance typically represents 70% of the cost during the life cycle of a system. In order to allow an efficient and safe maintenance of a legacy system, we need to reverse engineer it in order to reconstruct its missing or out-of-date documentation. In data-oriented applications the reverse engineering complexity can be broken down by considering that the database can be reverse engineered independently of the procedural components. Database reverse engineering can be defined as the process of recovering the database's schema(s) of an application from database declaration text and program source code that use the data in order to understand their exact structure and meaning. A database reverse engineering methodology is broken down into three processes: project preparation, data structure extraction that recovers the database's logical schema and data structure conceptualization that interprets the logical schema in conceptual terms. In order to validate our methodology and program understanding techniques, we have developed tools to support them. Those tools have proved absolutely necessary to perform database reverse engineering of medium to larger applications in reasonable time and at reasonable cost. To cut down on the cost of large projects, we have stressed the need for automation to reduce the manual work of the analyst. Our experience with real size projects has taught us that the management aspects of a project are essential success factors. The management of a project comprises different aspects such as database reverse engineering explanation, cost evaluation and database reverse engineering result evaluation.
[full text]


Database engineering process modelling

Author: Didier Roland
Date: 2002
Abstract
An important research subject in Software engineering is concerned with modelling the development process of huge software in order to bring some help to engineers when designing and maintaining an application. In general, every design process is seen a rational application of transformation operators to one or more products (mainly specifications) in order to produce new products that satisfy some given criteria: O=f(I). I and O being sets of products compliant with formalisable models, f is a transformation composition whose specifications are the properties of I and O. This modelling is a sound basis for a methodological guidance. Indeed, at each step of the process, the set of pertinent activities and types of products are proposed to the designer, without any other.
This guidance can be reinforced with some help. Furthermore, this modelling allows to document the process with its history, i.e. with a representation of performed activities. This history is itself the basis of maintenance activities.
The thesis holds in four phases:
  • elaboration of a general model of design processes, a method specification language (MDL), and a history representation
  • basic methodological recommendation proposals for the elaboration of engineering methods according to the defined model
  • development and integration of some methodological control functions in the DB-MAIN CASE tool, including an extension of the repository, the definition of the interface of the methodological functions, the development of the methodological engine and the development of history processors (recording, replay, analysis,...)
  • evaluation of this model with case studies using classical methods.
[full text]


Evolution of relational databases applications

Author: Jean-Marc Hick
Date: 2001
Abstract
JMH.
[full text]


A smart meta-CASE: towards an integrated solution

Author: Vincent Englebert
Date: 2000
Abstract
VEN.
[full text]
Outils personnels