Journal of Software: Evolution and Process

Cover image for Vol. 25 Issue 5

May 2013

Volume 25, Issue 5

Pages 407–568

  1. Research Articles

    1. Top of page
    2. Research Articles
    1. A suite of metrics for quantifying historical changes to predict future change-prone classes in object-oriented software (pages 407–437)

      Mahmoud O. Elish and Mojeeb Al-Rahman Al-Khiaty

      Version of Record online: 31 JAN 2012 | DOI: 10.1002/smr.1549

      Thumbnail image of graphical abstract

      This paper derives and validates a suite of evolution-based metrics as potential indicators of the change-prone classes of an object-oriented system when moving from one release to the next. The proposed evolution-based metrics measure different dimensions from those of typical product metrics. More accurate prediction of class change proneness is achieved when the evolution-based metrics are combined with product metrics.

    2. On the evolution of Linux kernels: a complex network perspective (pages 439–458)

      Lei Wang, Pengzhi Yu, Zheng Wang, Chen Yang and Qiang Ye

      Version of Record online: 28 FEB 2012 | DOI: 10.1002/smr.1550

      Thumbnail image of graphical abstract

      In this paper, we found that the call graphs of the Linux kernel components (file system, driver, kernel, memory management, and net) in 130 development Linux versions and 94 stable Linux versions are scale-free, small-world complex networks. All of the five components exhibit very strong preferential attachment tendency, and the preferential attachment tendency is likely to continue in future versions. We propose a method that could be used to find major structural changes in the evolution of software systems.

    3. A standards-based model of system maintainability requirements (pages 459–505)

      Khalid T. Al-Sarayreh, Alain Abran and Juan J. Cuadrado-Gallego

      Version of Record online: 14 MAR 2012 | DOI: 10.1002/smr.1553

      Thumbnail image of graphical abstract

      A number of maintainability-related concepts are dispersed throughout the European Cooperation for Space Standardization, International Organization for Standardization (ISO) 9126, and Institute of Electrical and Electronics Engineers standards to describe, at varying levels of detail, the various types of candidate maintainability requirements at the system, software, and hardware levels. This paper organizes these dispersed maintainability concepts into a standards-based reference model of system maintainability requirements The approach adopted in this research for the structure of this reference nonfunctional requirements (NFR) model is based on the generic model of software functional requirements proposed in the COSMIC-ISO 19761 model. The availability of this reference model can facilitate the early identification, specification and measurement of the system maintainability-NFR, and their detailed allocation as specific maintainability functions to be handled by the specified allocation to hardware or software, or a specific combination of the two.

    4. Software modernization by recovering Web services from legacy databases (pages 507–533)

      Ricardo Pérez-Castillo, Ignacio García-Rodríguez de Guzmán, Ismael Caballero and Mario Piattini

      Version of Record online: 28 MAR 2012 | DOI: 10.1002/smr.1554

      Thumbnail image of graphical abstract

      Some of the software industry's current demands, such as time-to-market developments and the provision of software as services entail additional challenges in the reuse of legacy systems during software modernization. This paper addresses this problem and proposes a reengineering process that follows model-driven development principles to recover Web services from legacy databases reducing development efforts.

    5. A survey of dynamic software updating (pages 535–568)

      Habib Seifzadeh, Hassan Abolhassani and Mohsen Sadighi Moshkenani

      Version of Record online: 25 APR 2012 | DOI: 10.1002/smr.1556

      Thumbnail image of graphical abstract

      An operational framework to evaluate existing and develop future Dynamic Updating Systems is distilled. This framework enables developers to streamline their focus and better identify direction of next generation DSU designs. The most influential current hot-swapping systems are categorized and discussed based on the provided framework.