JISE


  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21]


Journal of Information Science and Engineering, Vol. 31 No. 3, pp. 897-924


Patterns for Continuous Integration Builds in Cross-Platform Agile Software Development


CHIN-YUN HSIEH1 AND CHIEN-TSUN CHEN2 
1Department of Computer Science and Information Engineering 
National Taipei University of Technology 
Taipei, 106 Taiwan 
E-mail: hsieh@csie.ntut.edu.tw 
2Independent Software Consultant 
P.O. Box 35-220 Taipei, Taiwan 
E-mail: teddy.chen.tw@gmail.com


    Cross-platform software development poses challenges to agile development teams in practicing continuous integration (CI) builds not only because such builds take a longer time to complete and are more likely to fail, but also because builds of different lengths and scopes must be available depending on the working circumstances. To deal with this situation, three aspects of build automation in CI – the structuring of source code modules, the management of intermediate and final build artifacts, and the execution of builds – must be re-considered to account for the cross-platform characteristics. This paper discovers and documents a collection of ten patterns of CI builds for use in developing cross-platform software in the three aspects re-considered. These patterns are distilled from known uses of builds in existing software and from our experience in building commercial and open-source cross-platform software. As illustrated with an example adapted from the development of a real-world commercial cross-platform software product, the patterns can be effectively applied to solve many commonly encountered problems in applying CI for agile cross-platform software development.


Keywords: continuous integration, software build, cross-platform software, pattern, pattern language, agile development

  Retrieve PDF document (JISE_201503_08.pdf)