Skip to Main content Skip to Navigation
Conference papers

Identifying cycle causes with Enriched Dependency Structural Matrix

Abstract : Dependency Structure Matrix (DSM) has been successfully applied to identify software dependencies among packages and subsystems. A number of algorithms were proposed to compute the matrix so that it highlights patterns and problematic dependencies between subsystems. However, existing DSM implementations often miss important informa- tion to fully support reengineering effort. For example, they do not clearly qualify and quantify problematic relationships, information which is crucial to support remediation tasks. In this paper we present enriched DSM (eDSM) where cells are enriched with contextual information about (i) the type of dependencies (inheritance, class reference . . . ), (ii) the proportion of referencing entities, (iii) the proportion of ref- erenced entities. We distinguish independent cycles and stress potentially simple fixes for cycles using coloring information. This work is language independent and has been implemented on top of the Moose reengineering environment. It has been applied to non-trivial case studies among which ArgoUML, and Morphic the UI framework available in two open-source Smalltalks, Squeak and Pharo. Solution to problems identified by eDSM have been performed and retrofitted in Pharo main distribution.
Document type :
Conference papers
Complete list of metadata

Cited literature [21 references]  Display  Hide  Download
Contributor : Lse Lse Connect in order to contact the contributor
Submitted on : Wednesday, July 7, 2010 - 2:49:09 PM
Last modification on : Tuesday, August 24, 2021 - 4:52:02 PM
Long-term archiving on: : Tuesday, October 23, 2012 - 10:05:37 AM


Files produced by the author(s)


  • HAL Id : inria-00498446, version 1


Jannik Laval, Simon Denier, Stéphane Ducasse, Alexandre Bergel. Identifying cycle causes with Enriched Dependency Structural Matrix. WCRE, Oct 2009, Lille, France. ⟨inria-00498446⟩



Les métriques sont temporairement indisponibles