Invitation to Ph.D. defense

Michele Lanza lanza at
Mon May 26 10:14:00 CEST 2003

choose-news at is a *moderated* mailing list for announcing
non-commercial events related to Object Technology in Switzerland.
Please send announcements to be posted to: choose-news at
To unsubscribe, please send the message "unsubscribe choose-news" to:
                Majordomo at
To learn more about SI and CHOOSE, see:

Dear all,
This Friday, May 30th, I will present my dissertation entitled 
"Object-Oriented Reverse Engineering - Coarse-grained, Fine-grained, 
and Evolutionary Software Visualization". The abstract is included at 
the bottom of this e-Mail.
The defense is public and will take place in the room 001 of the IWI 
building (located in the "Engehalde-Areal") at 16.15 and should last 
one hour.
You are cordially invited to attend the defense and the apéro which 
will take place right afterwards in or in front of the IAM cafeteria.

Kind Regards,

Michele Lanza
Software Composition Group
University of Berne



The maintenance, reengineering, and evolution of object-oriented 
software systems has become a vital matter in today's software 
industry. Although most systems start off in a clean and well-designed 
state, with time they tend to gradually decay in quality, unless the 
systems are reengineered and adapted to the evolving requirements. 
However, before such legacy software systems can be reengineered and 
evolved, they must be reverse engineered, i.e., their structure and 
inner working must be understood. This is difficult because of several 
factors, such as the sheer size of the systems, their complexity, their 
domain specificity, and in general the bad state legacy software 
systems are in.
In this thesis we propose a visual approach to the reverse engineering 
of object-oriented software systems by means of polymetric views, 
lightweight visualizations of software enriched with metrics and other 
types of semantic information about the software, e.g., its age, 
version, abstractness, location, structure, function, etc.
We present and discuss several polymetric views which allow us to 
understand three different aspects of object-oriented software, namely

(1) coarse-grained aspects which allow for the understanding of very 
large systems,
(2) fine-grained aspects which allow for the understanding of classes 
and class hierarchies,
and (3) evolutionary aspects, which enable us to recover and understand 
the evolution of a software system.

The combination of these three types of information can greatly reduce 
the time needed to gain an understanding of an object-oriented software 
Based on the application of our polymetric views, we present our 
reverse engineering methodology which we validated and refined on 
several occasions in industrial settings. It allows us to explore and 
combine these three approaches into one single visual approach to 
understand software.

More information about the Choose-news mailing list