Bottom-up Design-Evolution Concern Discovery and Analysis

  • Author(s) / Creator(s)
  • Technical report TR07-13. Software system grows in size and complexity as it evolves over time. The fact that object-oriented software is increasingly developed using an evolutionary development process makes the situa-tion even worse. The developers face increasing difficulties in comprehending the system design and its rapid evolution, since the amount of information is overwhelming. Traditional top-down approach to software evolution understanding does not work very well to precisely capture the changes and their underlying motiva-tions. In this paper, we present our bottom-up design-evolution analysis approach, implemented in the JDEvAn tool. The JDEvAn tool has been equipped with a suite of longitudinal and data-mining analysis methods and a set of change-pattern detection queries to automatically recover the interesting core evolution concerns, such as sets of co-evolving classes or instances of refac-torings, by aggregating elementary design changes into composite concerns. Given the key participants of an evolution concern, the JDEvAn Viewer allows developers to interactively explore the relevant elements, relations, and their changes over time so that they can incrementally build up their knowledge about what has been changed, how and why. We evaluate the effectiveness of JDEvAn with two case studies on realistic open-source object-oriented software, in the context of which we show how JDEvAn help us capture the completely different rationale for two pairs of seemingly similar evolution concerns. | TRID-ID TR07-13

  • Date created
  • Subjects / Keywords
  • Type of Item
  • DOI
  • License
    Attribution 3.0 International