Revisiting the ΔIC approach to component recovery

  • Authors:
  • Rainer Koschke;Gerardo Canfora;Jörg Czeranski

  • Affiliations:
  • University of Bremen, Fachbereich, Postfach, Bremen, Germany;RCOST - Research Centre on Software Technology, University of Sannio, Palazzo ex Poste, viale Traiano, Benevento, Italy;University of Stuttgart, Stuttgart, Germany

  • Venue:
  • Science of Computer Programming - Software analysis, evolution and re-engineering
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

Component recovery supports program understanding, architecture recovery, and re-use. Among the best known techniques for detection of re-usable objects (related global variables and their accessor functions) is ΔIC (the improvement in internal connectivity). This paper re-visits the original approach and extends it in different ways. It describes a variant of ΔIC suitable for reverse engineering that omits the slicing step of the original approach. The underlying metric of ΔIC is extended toward types integrating ideas of the Internal Access technique such that abstract data types can also be detected. Furthermore, the connectivity metric of ΔIC is combined with a cohesion metric based on vertex connectivity. The new metrics and the new algorithm for reverse engineering are evaluated and compared to other techniques quantitatively.The new contributions of this paper over the conference paper are the analysis of the relation of the connectivity threshold and recall and precision, additional experiments in varying the ICVC (internal connectivity vertex connectivity) factor, and a detailed comparison of the complementarity of the various techniques.