A Research Project: Developing a Technique for Extracting Business Rules from Procedural Code, Phil Glasier
@Article{ glasier:research,
author = {Phil Glasier},
title = {A Research Project: Developing a Technique for Extracting
Business Rules from Procedural Code},
journal = {Reverse Engineering Newsletter},
pages = {Rev-5},
class = {Software_Reverse_Engineering, Extracting_Business_Rules}
}
ROSADE: A Methodology for the Extraction of Business Rules, Aaron Hanks
@Article{ hanks:rosade,
author = {Aaron Hanks},
title = {ROSADE: A Methodology for the Extraction of Business
Rules},
journal = {Reverse Engineering Newsletter},
pages = {Rev-5 -- Rev-6},
class = {Software_Reverse_Engineering, Extracting_Business_Rules}
}
Data dependency elicitation in database reverse engineering, Henrard, Jean and Hainaut, Jean-Luc
Available as
hypertext.
@InProceedings{ henrard.hainaut:data,
author = {Henrard, Jean and Hainaut, Jean-Luc},
title = {Data dependency elicitation in database reverse
engineering},
booktitle = {Proc. of the 5th European Conference on Software
Maintenance and Reengineering (CSMR 2001)},
pages = {11--19},
year = {2001},
editor = {P. Sousa and J. Ebert},
publisher = {IEEE Computer society},
keywords = {database reverse engineering, program understanding,
program slicing, db-main},
abstract = {Database reverse engineering (DBRE) attempts to recover
the technical and semantic specifications of the persistent
data of information systems. Dependencies between records
(data dependency) form a major class that need to be
recovered. Since most of these dependencies are not
supported by the DBMS, (foreign keys are the main
exception, at least in modern relational DBMS), they have
not be explicitly declared in the database schema. Careless
reverse engineering will inevitably ignore them, leading to
poor quality conceptual schema. Several information sources
can contribute to the elicitation of these hidden
dependencies. The program source code has long been
considered the richest, but also the most complex, of them.
In this paper, we analyze and compare, through their
respective quality and cost, different program
understanding techniques that can be used to elicit data
dependencies.},
url = {http://www.fundp.ac.be/recherche/publications/fr/37327.html}
,
class = {Data_Reverse_Engineering Reverse_Engineering_Tools
Extracting_Business_Rules }
}
Design Recovery of Legacy Database Applications based on Possibilistic Reasoning, Jens H. Jahnke and Melanie Heitbreder
Available as
hypertext.
@InProceedings{ jahnke.heitbreder:design,
author = {Jens H. Jahnke and Melanie Heitbreder},
title = {Design Recovery of Legacy Database Applications based on
Possibilistic Reasoning},
booktitle = {Proceedings of 7th IEEE International Conference of Fuzzy
Systems (FUZZ'98)},
publisher = {IEEE Computer Society},
year = {1998},
month = {May},
url = {http://www.uni-paderborn.de/cs/jahnke.html},
abstract = {Industrial database applications often evolve over three
or more generations of developers, cover several hundred
thousand lines of code and maintain a vast amount of data.
A rapidly growing number of companies face the problem that
they have to adapt or modernise such existing legacy
database applications (LDA) in order to keep up with
emerging requirements. The documentation of such LDAs is
often obsolete as they have been developed over several
generations of programmers. This paper presents an
application of possibilistic reasoning to infer the
semantic information that is necessary to recover the
conceptual design of an LDA. A dedicated, graphical
language (called Generic Fuzzy Reasoning Nets) is
introduced to specify and customise the applied reverse
engineering process. The actual reasoning process is
performed by a nonmonotonic inference engine based on fuzzy
petri nets which supports lazy execution of expensive
analysis operations.},
keywords = {data reverse engineering, expert system, uncertain
reasoning, legacy database},
class = {Extracting_Business_Rules Software_Reverse_Engineering
Database_Migration Reverse_Design Re-Design
Process_Models_for_Reverse_Design Alteration }
}