Presenter/Author Information

Brad EckFollow

Start Date

25-6-2018 10:40 AM

End Date

25-6-2018 12:00 PM

Abstract

This paper shares recent experience of packaging an existing open-source simulation engine for use in the R environment. R has become popular in many sectors, including environmental analysis, and the number of packages providing add-on functionality continues to grow rapidly. R packages conform to a particular structure and so have common attributes with respect to reuse and interoperability. These features made R a good fit for the four goals of our project: (1) The software should be straightforward to obtain and operate on several computing platforms especially Windows, Mac and Linux. (2) To drive re-use, the software should have documentation covering all of the user visible functions and including some examples. (3) The software should be obtainable and useable in several commercial cloud computing environments. (4) Finally, it should be possible to achieve some degree of parallelization of simulations. The process of packaging a simulation engine for R revealed several lessons for the practice of environmental software development. We share those lessons and make an assessment of the merits and limitations of shipping environmental software for R.

Stream and Session

A1: Towards More Interoperable, Reusable and Scalable Environmental Software

Share

COinS
 
Jun 25th, 10:40 AM Jun 25th, 12:00 PM

Shipping environmental software as R packages

This paper shares recent experience of packaging an existing open-source simulation engine for use in the R environment. R has become popular in many sectors, including environmental analysis, and the number of packages providing add-on functionality continues to grow rapidly. R packages conform to a particular structure and so have common attributes with respect to reuse and interoperability. These features made R a good fit for the four goals of our project: (1) The software should be straightforward to obtain and operate on several computing platforms especially Windows, Mac and Linux. (2) To drive re-use, the software should have documentation covering all of the user visible functions and including some examples. (3) The software should be obtainable and useable in several commercial cloud computing environments. (4) Finally, it should be possible to achieve some degree of parallelization of simulations. The process of packaging a simulation engine for R revealed several lessons for the practice of environmental software development. We share those lessons and make an assessment of the merits and limitations of shipping environmental software for R.