Copenhagen Programming Language Seminar


Semantics-Based Reverse Engineering of Logical Data Models

John Field,
IBM Research, Hawthorne, NY

Tuesday (!), February 6th, Time: 11:15 - 12:00 (!)
DIKU, Universitetsparken 1, Room N034


"Show me your flowchart and conceal your tables, and I shall continue to be mystified. Show me your tables, and I won't usually need your flowchart; it'll be obvious." So said Fred Brooks in his seminal treatise on software engineering, The Mythical Man-Month. His point was that the data organization, rather than code structure, is very often the key to understanding and transforming existing programs.

In this talk, I will present a technique for reverse engineering object-oriented (OO) data models from programs written in weakly-typed languages such as Cobol. These models, similar to UML class diagrams, can facilitate a variety of program maintenance and migration activities. Our algorithm is based on a semantic analysis of the program's code, and we provide a bisimulation-based formalization of what it means for an OO data model to be correct for a program.

This work is joint with G. Ramalingam, R. Komondoor, and S. Sinha, and appeared in ICSE 2006.

Scientific host: Fritz Henglein. Administrative host: Camilla Torp-smith. All are welcome.
The Copenhagen Programming Language Seminar (COPLAS) is a collaboration between DIKU, ITU and KVL.
COPLAS is sponsored by FIRST Graduate School.
To receive information about COPLAS talks by email, send a message to prog-lang-request@mail.it-c.dk with the word 'subscribe' as subject or in the body.

For more information about COPLAS, see http://www.coplas.org