An intelligent tool for re-engineering software modularity

Robert W. Schwanke

International Conference on Software Engineering · 1991 · 230 citations · 5 references

Concepts

TL;DR

The paper introduces a software tool that offers heuristic modularization advice to improve existing code. The tool aims to incorporate an automatic tuning method that learns from mistakes and adapts advice to architects' preferences. It uses a heuristic design similarity measure based on the Parna information‑hiding principle to cluster related procedures and detect maverick procedures. The tool has already given useful advice in real projects, and a preliminary experiment shows that the automatically tuned similarity function can assign procedures to modules with high accuracy. No additional information provided.

Abstract

The author describes a software tool that provides heuristic modularization advice for improving existing code. A heuristic design similarity measure is defined, based on the Parna information hiding principle. The measure supports two services: clustering, which identifies groups of related procedures, and maverick analysis, which identifies individual procedures that appear to be in the wrong module. The tool has already provided useful advice in several real programming projects. The tool will soon incorporate an automatic tuning method, which allows the tool to learn from its mistakes, adapting its advice to the architect's preferences. A preliminary experiment demonstrates that the automatically tuned similarity function can assign procedures to modules very accurately. >

References

5