skip to main content
10.1145/1985782.1985784acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

A literature review of agile practices and their effects in scientific software development

Published:28 May 2011Publication History

ABSTRACT

The nature of scientific research and the development of scientific software have similarities with processes that follow the agile manifesto: responsiveness to change and collaboration are of the utmost importance. But how well do current scientific software development processes match the practices found in agile development methods, and what are the effects of using agile practices in such processes? In order to investigate this, we conduct a literature review, focusing on evaluating the agility present in a selection of scientific software projects. Both projects with intentionally agile practices and projects with a certain degree of agile elements are taken into consideration. In the agility assessment, we define and utilize an agile mapping chart. The elements of the mapping chart are based on Scrum and XP, thus covering two of the most prominent agile reference models. We compared the findings of the literature review to results of a previously conducted survey. The comparison indicates that scientific software development projects adopting agile practices perceive their testing to be better than average. No difference to average projects was perceived regarding requirements-related activities. Future work includes an in-depth case study to further investigate the existence and impact of agility in three large scientific software projects, ultimately aiming at a better understanding of the particularities involved in developing scientific software.

References

  1. Argyris, C. 1993. Knowledge for Action. Jossey-Bass Publishers, San Francisco, CA.Google ScholarGoogle Scholar
  2. Argyris, C. and Schön, D. A. 1996. Organizational Learning II. Theory, Method, and Practice. Addison-Wesley Publishing Company, Reading, MA.Google ScholarGoogle Scholar
  3. Blom, M. 2010. Is scrum and XP suitable for CSE development? Procedia Computer Science 1, 1 (May 2010), 1511--1517.Google ScholarGoogle ScholarCross RefCross Ref
  4. Carver, J. C., Kendall, R. P., Squires, S. E. and Post, D. E. 2007. Software Development Environments for Scientific and Engineering Software: A Series of Case Studies. In Proceedings of the 29th International Conference on Software Engineering (Minneapolis, MN, May 20-26, 2007). ICSE'07. IEEE Computer Society Washington, DC, USA, 550--559. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Cohn, M. 2009. Succeeding with Agile: Software Development Using Scrum. Addison-Wesley Professional, Boston, MA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Crabtree, C. A., Koru, A. G., Seaman, C., and Erdogmus, H. 2009. An Emprical Characterization of Scientific Software Development Projects According to the Boehm and Turner Model: A Progress Report. In Proceedings of the Second International Workshop on Software Engineering for Computational Science and Engineering (Vancouver, Canada, May 23, 2009). SECSE'09. IEEE Computer Society Washington, DC, USA, 22--27. DOI=10.1109/SECSE.2009.5069158. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Decyk, V. K., Norton, C. D. and Gardner, H. J. 2007. Why Fortran? Computing in Science and Engineering 9, 4 (Jul-Aug. 2007), 68--71. DOI=10.1109/MCSE.2007.89. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Dybå, T., Dingsøyr, T. and Hanssen, G. K. 2007. Applying Systematic Reviews to Diverse Study Types: An Experience Report. In Proceedings of the First International Symposium on Empirical Software Engineering and Measurement (Madrid, Spain, Sep. 20-21, 2007). ESEM'07. 225--234. DOI=10.1109/ESEM.2007.59. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Easterbrook, S. M. and Johns, T. C. 2009. Engineering the Software for Understanding Climate Change. Computing in Science and Engineering 11 (6), 64--74. DOI=10.1109/MCSE.2009.193 Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Hannay, J. E., Langtangen, H. P., MacLeod, C., Pfahl, D., Singer, J. and Wilson, G., How Do Scientists Develop and Use Scientific Software? in Second International Workshop on Software Engineering for Computational Science and Engineering (Vancouver, Canada, May 23, 2009). SECSE'09. IEEE Computer Society Washington, DC, USA, 1--8. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Jarvis, P. 1999. The Practitioner-Researcher. Jossey-Bass Publishers.Google ScholarGoogle Scholar
  12. Kane, D. 2003. Introducing Agile Development into Bioinformatics: An Experience Report. In Proceedings of the Agile Development Conference (Salt Lake City, USA) ADC'03, IEEE Computer Society Washington, DC, USA, 132--139. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Kane, D. W., Hohman, M. M., Cerami, E. G., McCormick, M. W., Kuhlmman, K. F. and Byrd, J. A. 2006. Agile methods in biomedical software development: A multi-site experience report. BMS Bioinformatics 7 (273), 1--12.Google ScholarGoogle Scholar
  14. Kelly, D. F. 2007. A Software Chasm: Software Engineering and Scientific Computing. IEEE Software 24, 6 (Nov./Dec. 2007), 118--120. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Mugridge, R. 2003. Test Driven Development and the Scientific Method. In Proceedings of the Agile Development Conference (Salt Lake City, USA) ADC'03, IEEE Computer Society Washington, DC, USA, 47--52. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Pitt-Francis, J., Bernabeu, M. O., Cooper, J., Garny, A., Momtahan, L., Osborne, J., Pathmanathan, P., Rodriguez, B., Whiteley, J. P. and Gavaghan, D. J. 2008. Chaste: using agile programming techniques to develop computational biology software. Philosophical Transactions of the Royal Society - Series A: Mathematical, Physical and Engineering Sciences 366 (1878). 3111--3136.Google ScholarGoogle ScholarCross RefCross Ref
  17. Sanders, R. 2008. The Development and Use of Scientific Software, MSc Thesis, Queen's University.Google ScholarGoogle Scholar
  18. Sanders, R. and Kelly, D. 2008. Dealing with Risk in Scientific Software Development. IEEE Software 25, 4 (Jul.- Aug. 2008), 21--28. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Segal, J. 2005. When software engineers met research scientists: A case study. Empirical Software Engineering 4, 10 (Oct. 2005), 517--536. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Wells, D. 1999. The Rules of Extreme Programming. URL: http://www.extremeprogramming.org/rules.html. Accessed on January 19, 2011.Google ScholarGoogle Scholar
  21. Wood, W. A. and Kleb, W. L. 2003. Exploring XP for Scientific Research. IEEE Software 20, 3 (May-June 2003), 30--36. DOI=10.1109/MS.2003.1196317. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Yin, R. K. 2003. Case Study Research: Design and Methods. Sage Publications.Google ScholarGoogle Scholar

Index Terms

  1. A literature review of agile practices and their effects in scientific software development

          Recommendations

          Reviews

          Andrew Brooks

          What are the effects of using agile practices in scientific software development__?__ As a first step, the authors undertook a systematic literature search. The five papers that were found worthy of scrutiny yielded ten project descriptions. Table 1 itemizes 35 agile practices from either Scrum or XP, the two principal agile methodologies. Table 3 maps these 35 agile practices to the ten projects. Examining this table, some readers might only find Projects 2 and 4 worthy of the agile label. The paper provides a useful critique. Project 1 fails to demonstrate a direct link between agile practices and project outcomes. Project 2 reports that XP is a success in terms of changing requirements and testing; however, the number of developers and their organization are not stated. Projects 3.1 to 3.6 report that agile practices are a key success factor, but the evidence is primarily based on subjective experience. Project 4 reports that code quality improved, but the adoption of Ruby rather than XP may have been the key success factor. Project 5 reports "positive experiences with implementing agile practices," but the evidence is based on subjective experience. A tentative conclusion is drawn: agile practices can meet the needs of scientific software development. Extensive empirical inquiries-for example, case-control studies with independent end-product evaluations-are required to properly assess the effects of using agile practices. Nevertheless, this paper is recommended to those involved in scientific software development and those researching agile processes. Online Computing Reviews Service

          Access critical reviews of Computing literature here

          Become a reviewer for Computing Reviews.

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in
          • Published in

            cover image ACM Conferences
            SECSE '11: Proceedings of the 4th International Workshop on Software Engineering for Computational Science and Engineering
            May 2011
            64 pages
            ISBN:9781450305983
            DOI:10.1145/1985782

            Copyright © 2011 ACM

            Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 28 May 2011

            Permissions

            Request permissions about this article.

            Request Permissions

            Check for updates

            Qualifiers

            • research-article

            Upcoming Conference

            ICSE 2024

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader