• Title of article

    oZone: Layer identification in the presence of cyclic dependencies

  • Author/Authors

    Jannik Laval، نويسنده , , Nicolas Anquetil، نويسنده , , Usman Bhatti، نويسنده , , Stéphane Ducasse، نويسنده ,

  • Issue Information
    ماهنامه با شماره پیاپی سال 2013
  • Pages
    18
  • From page
    1055
  • To page
    1072
  • Abstract
    A layered software architecture helps in 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 the presence of cyclic dependencies. Our approach performs better than the other existing approaches in terms of accuracy and interactivity, and 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.
  • Keywords
    Remodularization , Layered organization , cycle , Package dependency
  • Journal title
    Science of Computer Programming
  • Serial Year
    2013
  • Journal title
    Science of Computer Programming
  • Record number

    1080374