Journal of Software: Evolution and Process

Cover image for Vol. 29 Issue 11

Edited By: Gerardo Canfora, Darren Dalcher and David Raffo

Impact Factor: 1.033

ISI Journal Citation Reports © Ranking: 2016: 74/106 (Computer Science Software Engineering)

Online ISSN: 2047-7481

Associated Title(s): Concurrency and Computation: Practice and Experience, Software Focus, Software Process: Improvement and Practice, Software Testing, Verification and Reliability, Software: Practice and Experience

Recently Published Issues

See all

About the Journal

The Journal of Software: Evolution and Process is an archival journal that publishes high quality, state-of-the-art research and practice papers dealing with the conception, development, testing, management, quality, maintenance, and evolution of software, systems, and services, as well as the continuous improvement of processes and capabilities surrounding them.

Find out more about the journal here

Join the computer science mailing list

Sign up for email newsletters

By subscribing to Wiley Computer Science newsletters, you'll receive updates from all relevant journals in the field, including exclusive free content. Sign-up now!

Recently Published Articles

  1. Comparative modelling and verification of Pthreads and Dthreads

    Yuan Fei, Huibiao Zhu, Xi Wu, Huixing Fang and Shengchao Qin

    Version of Record online: 17 NOV 2017 | DOI: 10.1002/smr.1919

    Thumbnail image of graphical abstract

    The POSIX threads (Pthreads) library is a thread API for C/C++ to control parallel threads and spawn concurrent process flows. Programming in Pthreads usually suffers from undesirable deadlock, data race, and race condition problems due to the potential nondeterministic execution behaviors between parallel threads. Dthreads, as another multithreading model that re-implements Pthreads, was proposed by Liu et al[1] for efficient deterministic multithreading. They found out that, under specific test cases, Dthreads can effectively prevent data races. However, no comparison test has been made with Pthreads.

    To perform a formal comparison between Pthreads and Dthreads over deadlocks, data races, and race conditions, in this paper, we adopt CSP (communicating sequential processes) as a formal model for specifying part of API functions in Pthreads and Dthreads and illustrate the model construction using 4 classical example programs. By feeding the models into the model checker PAT (process analysis toolkit), we have verified that deadlocks and data races exist in Pthreads, but do not exist in Dthreads, for the considered programs. We have also found that neither of them can prevent race conditions. Our comparative modelling and verification of Pthreads and Dthreads show that though Dthreads cannot prevent all the deadlock situations, shown by verification results of another 2 example programs, Dthreads is better that Pthreads on eliminating data races and preventing deadlocks. Considering limited scalability of Dthreads, we have introduced a new programming model to support coarse granularity in bank transfer. Our modelling is also extended by covering the synchronization operations in Liu et al work.

  2. Internal quality assurance for external contributions in GitHub: An empirical investigation

    Yao Lu, Xinjun Mao, Zude Li, Yang Zhang, Tao Wang and Gang Yin

    Version of Record online: 17 NOV 2017 | DOI: 10.1002/smr.1918

    Thumbnail image of graphical abstract

    We investigate the internal code quality of the casual contributors and main contributors in GitHub and find that the casual contributors introduced greater quantity and severity of code quality issues than the main contributors. On the basis of the findings, we conduct a survey to understand the developers’ work practices in terms of internal quality assurance in GitHub. Finally, we discuss the Continuous Inspection paradigm as an alternative quality management method for industrial practices.

  3. Database engines: Evolution of greenness

    A. V. Miranskyy, Z. Al-zanbouri, D. Godwin and A. B. Bener

    Version of Record online: 16 NOV 2017 | DOI: 10.1002/smr.1915

  4. ICSSP 2016 – Special Issue Introduction

    Marco Kuhrmann, Rory V. O'Connor, Dewayne E. Perry and David Raffo

    Version of Record online: 8 NOV 2017 | DOI: 10.1002/smr.1869

  5. A systematic mapping study of information visualization for software product line engineering

    Roberto Erick Lopez-Herrejon, Sheny Illescas and Alexander Egyed

    Version of Record online: 8 NOV 2017 | DOI: 10.1002/smr.1912