OZONE: Layer Identification in the presence of Cyclic Dependencies - Archive ouverte HAL Accéder directement au contenu
Article Dans Une Revue Science of Computer Programming Année : 2013

OZONE: Layer Identification in the presence of Cyclic Dependencies

Résumé

A layered software architecture helps understanding the role of software entities (e.g., packages or classes) in a system and hence, the impact of changes on these entities. However, the computation of an optimal layered organization in the presence of cyclic dependencies is difficult. In this paper, we present an approach that (i) provides a strategy supporting the automated detection of cyclic dependencies, (ii) proposes heuristics to break cyclic dependencies, and (iii) computes an organization of software entities in multiple layers even in presence of cyclic dependencies. Our approach performs better than the other existing approaches in terms of accuracy and interactivity, it supports human inputs and constraints. In this paper, we present this approach and compare it to existing solutions. We applied our approach on two large software systems to identify package layers and the results are manually validated by software engineers of the two systems.
Fichier principal
Vignette du fichier
Lava12c-SCP-OZONE-LayerIdentification.pdf (442.76 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-00732655 , version 1 (15-09-2012)

Identifiants

Citer

Jannik Laval, Nicolas Anquetil, Muhammad Usman Bhatti, Stéphane Ducasse. OZONE: Layer Identification in the presence of Cyclic Dependencies. Science of Computer Programming, 2013, 78 (8), pp.1055-1072. ⟨10.1016/j.scico.2012.08.001⟩. ⟨hal-00732655⟩
175 Consultations
169 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More