For around three decades Software Engineering gurus have "sold" us the ideal of minimal coupling and maximal cohesion at all levels of abstraction as a way to reduce the effort to understand and maintain software systems. The object-oriented paradigm brought a new design philosphy and encapsulation mechanisms that apparently would help us to achieve that desideratum. However, after a decade where this paradigm has emerged as the dominant one, we are faced with practitioners' reality: coupling and cohesion do not seem to be the dominant driving forces when it comes to modularization. This conclusion was based on a relatively large sample of heterogeneous systems. We describe an environment that allows not only assessing this reality but also deriving better modularization solutions in what concerns coupling and cohesion. These solutions are generated by means of cluster analysis techniques and partially preserve the original modularization criteria. We believe this approach can be of great help in reengineering actions of object-oriented legacy systems.
|Number of pages||11|
|Publication status||Published - 1 Dec 2001|
|Event||Proceedings of the 5th European Conference on Software Maintenance and Reengineering - Lisbon, Portugal|
Duration: 14 Mar 2001 → 16 Mar 2001
|Conference||Proceedings of the 5th European Conference on Software Maintenance and Reengineering|
|Period||14/03/01 → 16/03/01|
- Clustering analysis