Journal of Software: Evolution and Process

Cover image for Vol. 24 Issue 1

January 2012

Volume 24, Issue 1

Pages 1–113

  1. Editorials

    1. Top of page
    2. Editorials
    3. Research Articles
    1. You have free access to this content
      Software: evolution and process A new journal is born (page 1)

      Gerardo Canfora, Darren Dalcher and David Raffo

      Version of Record online: 24 JAN 2012 | DOI: 10.1002/smr.583

  2. Research Articles

    1. Top of page
    2. Editorials
    3. Research Articles
    1. Assigning change requests to software developers (pages 3–33)

      Huzefa Kagdi, Malcom Gethers, Denys Poshyvanyk and Maen Hammad

      Version of Record online: 4 FEB 2011 | DOI: 10.1002/smr.530

      Thumbnail image of graphical abstract

      An approach to recommend a ranked list of expert developers to assist in the implementation of software change (e.g., bug-fix) requests is presented. The key contribution here is the first use of a concept location technique combined with a technique based on Mining Software Repositories (MSR) for this task. The results from three open source systems show that the overall accuracies of the approach are between 47% and 96% for bug reports, and between 43% and 60% for feature requests.

    2. Evaluating testing effectiveness during software evolution: a time-series cross-section approach (pages 35–49)

      Joanne E. Hale and David P. Hale

      Version of Record online: 14 MAR 2011 | DOI: 10.1002/smr.531

      Thumbnail image of graphical abstract

      Department of Information Systems, Statistics and Management Science, The University of Alabama, AL, U.S.A. As software evolution organizations (SEOs) formalize their activities into standard repeatable processes, capability maturity models suggest they gather and analyze data to quantitatively manage their activities. This study examines the use of a time-series cross-section method to inform the quantitative management of the testing activities within a mature SEO. Data for the study comes from readily available, commonly gathered production and testing defect reports in the quantitative measurement efforts of a CMMI-DEV Level-3 assessed software development and evolution organizatio.

    3. Discovering programming rules and violations by mining interprocedural dependences (pages 51–66)

      Ray-yaung Chang and Andy Podgurski

      Version of Record online: 25 FEB 2011 | DOI: 10.1002/smr.532

      Thumbnail image of graphical abstract

      This paper presents a novel approach to discovering implicit programming rules and rule violations in a code base, which integrates static interprocedural analysis and graph mining techniques toidentify both function-call ordering rules and conditional rules that check input parameters or return values of functions. Rules are modeled as graph minors of dependence graphs augmented with edges indicating shared data dependences. The approach employs two innovative algorithms: a greedy one for mining maximal frequent minors from a set of interprocedural dependence spheres and a heuristic minor-matching algorithm for discoveringrule violations.

    4. A demand-driven approach to slicing legacy COBOL systems (pages 67–82)

      Ákos Hajnal and István Forgács

      Version of Record online: 17 MAR 2011 | DOI: 10.1002/smr.533

      Thumbnail image of graphical abstract

      A novel static program slicing approach is proposed in this paper, which is based on context-sensitive token propagation over control flow graphs. Algorithms are presented for data flow and full slicing to calculate precise program slices. Application experiences on industrial-scale COBOL systems are also summarized.

    5. Introduction of a process maturity model for market-driven product management and requirements engineering (pages 83–113)

      Tony Gorschek, Andrigo Gomes, Andreas Pettersson and Richard Torkar

      Version of Record online: 9 MAR 2011 | DOI: 10.1002/smr.535

      Thumbnail image of graphical abstract

      We introduce the Market-driven Requirements Engineering Process Model (MDREPM or uniREPM), aimed at enabling process improvement and process assurance for organizations faced with large amounts of requirements in a market-driven context. The model project is an ongoing endeavor to create and refine a lightweight model usable and useful for low-cost assessment and improvement of the requirements engineering and product management process at companies developing software intensive products.