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 metadatas

Cited literature [21 references]  Display  Hide  Download

https://hal.inria.fr/inria-00498446
Contributor : Lse Lse <>
Submitted on : Wednesday, July 7, 2010 - 2:49:09 PM
Last modification on : Thursday, February 21, 2019 - 10:52:50 AM
Long-term archiving on : Tuesday, October 23, 2012 - 10:05:37 AM

File

Lava09c-WCRE2009-eDSM.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : inria-00498446, version 1

Citation

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

Share

Metrics

Record views

308

Files downloads

312