Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Do not trust build results at face value: an empirical study of 30 million CPAN builds
Zolfagharinia M., Adams B., Guéhéneuc Y.  MSR 2017 (Proceedings of the 14th International Conference on Mining Software Repositories, Buenos Aires, Argentina, May 20-28, 2017)312-322.2017.Type:Proceedings
Date Reviewed: Nov 2 2017

Released software products are pretty much expected to work under a user’s environment. However, the many combinations of different operating systems, runtime environments, and hardware architectures where the software ought to work is putting more and more weight on software developers’ shoulders. Zolfagharinia et al. show that not every environment yields reliable software build results for the comprehensive Perl archive network (CPAN), a large collection of Perl software and documentation.

Compatibility issues are expected when building software across multiple platforms. Hence, modern software engineering relies on continuous integration (CI) practices to build and test the software along its development against numerous environments. Usually, a CI build result is binary: either it is a success or it just failed. As the study reveals, interpreting build results is not as straightforward as it seems. The same software change can issue different failure reasons for different environments, challenging developers to quickly diagnose and fix these failures.

Further, intrigued by the extent to which environments can cause build failures, the authors developed a prediction model that only accounts for operating system and runtime environment features. Surprisingly, it predicts with reasonable accuracy the result of a build. The experiment used ten-fold cross validation to test the prediction model, which seems to be an impractical approach given the time-dependent nature of the data. This evaluation technique randomizes the data within the folds. Therefore, we end up with folds that contain build data that happened ahead of the current build whose result we are trying to predict. In simple words, future information is used to predict the past. In this case, online evaluation scenarios are more appropriate for the task.

Generally, this paper would be of interest to researchers in software engineering. More specifically, it provides a good rationale to select the build results.

Reviewer:  Klerisson Paixao Review #: CR145635 (1802-0116)
Bookmark and Share
  Reviewer Selected
 
 
Software Management (K.6.3 )
 
 
Quality Assurance (K.6.4 ... )
 
Would you recommend this review?
yes
no
Other reviews under "Software Management": Date
The software factory
Johnson J. (ed), QED Information Sciences, Inc., Wellesley, MA, 1991. Type: Book (9780894353482)
Nov 1 1991
New techniques in software project management
Simpson W., John Wiley & Sons, Inc., New York, NY, 1987. Type: Book (9789780471855514)
Oct 1 1988
Mapping situations within a system development project
Lanzara G., Mathiassen L. Information and Management 8(1): 3-20, 1985. Type: Article
Jun 1 1986
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy