A CASE for Reverse Engineering , C. Bachmann
@Article{ bachmann:case,
author = { C. Bachmann },
title = { A CASE for Reverse Engineering },
journal = { Datamation },
year = { July 1, 1988 },
abstract = { see Arnold's book },
class = {Software_Reverse_Engineering,
General_Information_on_Reverse_Engineering }
}
The Nature of Data Reverse Engineering, Hainaut, Jean-Luc and Henrard, Jean and Hick, Jean-Marc and Roland, Didier and Englebert, Vincent
Available as
hypertext.
@InProceedings{ hainaut.henrard.ea:nature,
author = {Hainaut, Jean-Luc and Henrard, Jean and Hick, Jean-Marc
and Roland, Didier and Englebert, Vincent},
title = {The Nature of Data Reverse Engineering},
booktitle = {Proc. of Data Reverse Engineering Workshop 2000
(DRE'2000)},
year = {2000},
publisher = { Zurich Univ. Publish.},
abstract = {Data Reverse Engineering is a specific information system
engineering domain aiming at rebuilding the documentation
of legacy databases. The paper explores this domain by
presenting the basic problems (such as the implicit
construct recovery problem) as well as techniques and tools
for solving them. Two main phases are described, namely
data structure extraction, through which the complete
logical schema is elicited, and data structure
conceptualization, that interpret them in conceptual terms.
The paper describes and discusses a reference process model
that identifies the main classes of problems, their solving
techniques and tools that support the processes.},
url = {http://www.fundp.ac.be/recherche/publications/fr/39185.html}
,
class = {Data_Reverse_Engineering Reverse_Engineering_Tools
General_Information_on_Reverse_Engineering}
}
Introduction to Database Reverse Engineering, Hainaut, Jean-Luc
Available as
hypertext.
@Book{ hainaut:introduction,
author = {Hainaut, Jean-Luc},
title = {Introduction to Database Reverse Engineering},
publisher = {LIBD Publish.},
year = {2002},
abstract = {This text is an extended abstract for a future book
devoted to database reverse engineering (DBRE), considered
as a specific, but general purpose, activity of information
system engineering, and particularly system reengineering.
To give it as large a scope as possible, we have developed
general principles that can easily be specialized for any
actual data management system, ranging from simple file
managers (COBOL or RPG) to modern DB managers such as
relational systems and OO DBMS. These principles are
organized as a general DBRE methodology that is built in a
systematic way. This methodology can be specialized
according to specific DBMS models. It can be used to
compare methodologies proposed in the literature and
through reverse engineering CASE tools.},
url = {http://www.fundp.ac.be/recherche/publications/fr/40704.html}
,
class = {Data_Reverse_Engineering Reverse_Engineering_Tools
General_Information_on_Reverse_Engineering}
}
From micro-analytical Method to Mass Processing - The Economic Challenge, Henrard, Jean and Hainaut, Jean-Luc and Hick, Jean-Marc and Roland, Didier and Englebert, Vincent
Available as
hypertext.
@InProceedings{ henrard.hainaut.ea:from,
author = {Henrard, Jean and Hainaut, Jean-Luc and Hick, Jean-Marc
and Roland, Didier and Englebert, Vincent},
title = {From micro-analytical Method to Mass Processing - The
Economic Challenge},
booktitle = {Proc. of Data Reverse Engineering Workshop 2000
(DRE'2000)},
year = {2000},
publisher = { Zurich Univ. Publish.},
abstract = {Database reverse engineering (DBRE) attempts to recover
the technical and semantic specifications of the persistent
data of information systems. Despite the power of the
supporting tools, the discovery of a single foreign key
through the analysis of half a million lines of code may
require several hours of meticulous analysis. Considering
that an actual schema can include several thousands of
implicit constructs, DBRE can prove very costly for medium
to large projects. Even in the parts of the process that
can be automated, tools must be used with much caution.
While they can help the analyst, the latter needs to
understand their strength and weakness. On the other hand,
reducing the quality requirements of the result can lead to
much higher costs when the recovered conceptual schema is
used as the basis for reengineering the information system
or to migrate its data to datawarehouses or to other
applications. Hence the dilemma: how can we automate the
highly knowledge-based and interactive DBRE process without
impairing the quality of the resulting products?},
url = {http://www.fundp.ac.be/recherche/publications/fr/35843.html}
,
class = {Data_Reverse_Engineering
General_Information_on_Reverse_Engineering}
}
Program Understanding in Database Reverse Engineering, Henrard, Jean
Available as
hypertext.
@PhDThesis{ henrard:program,
author = {Henrard, Jean},
title = {Program Understanding in Database Reverse Engineering},
school = {University of Namur},
year = {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.},
url = {http://www.fundp.ac.be/recherche/publications/fr/45389.html}
,
class = {Data_Reverse_Engineering Reverse_Engineering_Tools
General_Information_on_Reverse_Engineering
Program_Slicing}
}