Poster No:
2276
Submission Type:
Abstract Submission
Authors:
Sergiy Boroday1, Pierre Rioux1, Natacha Beck1, Darcy Quesnel1, Xavier Lecours-Boucher1, Najmeh Khalili-Mahani2, Tristan Glatard3, Reza Adalat1, Samir Das4, Bryan Caron5, Alan Evans6
Institutions:
1McGill Centre for Integrative Neuroscience,Ludmer Centre,MNI,McGill University, Montreal, Canada, 2McGill Centre for Integrative Neuroscience,Ludmer Centre,MNI,Perform Research Centre, Concordia Univ, Montreal, Canada, 3Concordia University (Department of Computer Science and Software Engineering), Montreal, Canada, 4McGill Centre for Integrative Neuroscience, Montreal Neurological Institute, McGill University, Montreal, Quebec, 5McGill University, Montréal, Quebec, 6Montreal Neurological Institute and Hospital, Montreal, QC
First Author:
Sergiy Boroday
McGill Centre for Integrative Neuroscience,Ludmer Centre,MNI,McGill University
Montreal, Canada
Co-Author(s):
Pierre Rioux
McGill Centre for Integrative Neuroscience,Ludmer Centre,MNI,McGill University
Montreal, Canada
Natacha Beck
McGill Centre for Integrative Neuroscience,Ludmer Centre,MNI,McGill University
Montreal, Canada
Darcy Quesnel
McGill Centre for Integrative Neuroscience,Ludmer Centre,MNI,McGill University
Montreal, Canada
Xavier Lecours-Boucher
McGill Centre for Integrative Neuroscience,Ludmer Centre,MNI,McGill University
Montreal, Canada
Najmeh Khalili-Mahani
McGill Centre for Integrative Neuroscience,Ludmer Centre,MNI,Perform Research Centre, Concordia Univ
Montreal, Canada
Reza Adalat
McGill Centre for Integrative Neuroscience,Ludmer Centre,MNI,McGill University
Montreal, Canada
Samir Das
McGill Centre for Integrative Neuroscience, Montreal Neurological Institute, McGill University
Montreal, Quebec
Alan Evans
Montreal Neurological Institute and Hospital
Montreal, QC
Introduction:
CBRAIN (Sherif et al., 2014) (https://cbrain.ca) is an open source, web-based, collaborative research software platform that addresses major challenges in big data research. CBRAIN allows scientists to launch, monitor and share large-scale big data analyses using advanced scientific tools through an easy to use web-based interface.
The ability to easily integrate new tools and update existing ones is an important feature of CBRAIN. Initially within CBRAIN each tool integration required the web form and related logic to be coded directly within the Ruby on Rails web development framework. That approach has been updated using Boutiques (Glatard et al., 2018) to define the command line and parameters in a JSON format. The use of Boutiques offers multiple parameter validation features and enables clearer form validation messages. Based upon the descriptor, CBRAIN automatically builds the user interface for each tool allowing users to select application parameters while automatically performing parameter validation.
While no formal scheme can possibly foresee all the tool description aspects, the Boutiques format provides a 'custom' section. In this section of the descriptor, CBRAIN-specific properties such as validation of input parameters against a list of CBRAIN supported data types or file naming schemes is possible.
Methods:
In CBRAIN tools have been integrated via three different methods:
1: A CBRAIN developer created Ruby code and templates (2009 to 2015).
2: Support was added to CBRAIN using Boutiques descriptors for automated tool integration (2015 to 2020). The code to run the tool and the user interface are generated in CBRAIN at boot time based on templates. Even though this method facilitated tool integration, some limitations persisted, including difficulties in developing, maintaining and documenting the logic related to custom Boutiques descriptor properties.
3: CBRAIN uses Boutiques descriptors but with a new integration method performed at runtime using hooks and a library of modules where each module handles one custom property/keyword (2020 to present). With this method, tool developers can easily introduce CBRAIN-specific properties to Boutiques that enhance the standard behavior.
Results:
The newest method to integrate scientific tools leveraging the Boutiques descriptor at runtime has the benefit of making the integration more versatile. Each keyword is handled by a dedicated module resting either in the core CBRAIN codebase or in a plugin repository. Each module contains documentation and examples. A module overrides or modifies one or several standard CBRAIN procedures, related to rendering the input web form or tool execution. The new method can also modify the Boutiques descriptor for the duration of some steps, for example, by adding prepackaged inputs or outputs. Some of the CBRAIN modules used in conjunction with the Boutiques descriptors include:
Before running the pipeline:
CBRAIN can verify the type of the input file and the pattern of input file name with BoutiquesFileTypeVerifier and BoutiquesFileNameMatcher modules.
After the pipeline has run:
CBRAIN can specify a set of valid exit codes BoutiquesAllowedExitCodes module.
CBRAIN can specify post-processing cleanup actions with BoutiquesPostProcessingCleaner.
Conclusions:
Using the Boutiques tool integration methods in CBRAIN, tool integrators are no longer required to write any Ruby code. Sometimes additional features and customizations not yet supported by Boutiques and CBRAIN are needed. With guidance from the CBRAIN development team, tool integrators can add their own modules. CBRAIN is able to support a variety of users and projects, together with their complex workflows, through customizations that are alone not definable within standard Boutiques. Since 2020 more than ten modules and properties have been added to CBRAIN, demonstrating the adoption and utility of this module-based approach to extending the capabilities of Boutiques.
Modeling and Analysis Methods:
Image Registration and Computational Anatomy
Neuroinformatics and Data Sharing:
Databasing and Data Sharing
Workflows 1
Informatics Other 2
Keywords:
Computational Neuroscience
Computing
Data Organization
Data Registration
Development
Informatics
Neurological
Open Data
Open-Source Software
Workflows
1|2Indicates the priority used for review
Provide references using author date format
Sherif T, Rioux P, Rousseau M-E, Kassis N, Beck N, Glatard T, Adalat R, Das S, Evans AC (2014) “CBRAIN: a web-based, distributed computing platform for collaborative neuroimaging research,” Front. Neuroinformatics, vol. 8, May 2014, doi: 10.3389/fninf.2014.00054
Glatard T, Kiar G, Aumentado-Armstrong T, Beck N, Bellec P, Bernard R, Bonnet A, Brown ST, Camarasu-Pop S, Cervenansky F, Das S, Ferreira da Silva R, Flandin G, Girard P, Gorgolewski KJ, Guttmann CRG, Hayot-Sasson V, Quirion P-O, Rioux P, Rousseau M-E, Evans AC, Boutiques: a flexible framework to integrate command-line applications in computing platforms, GigaScience, Volume 7, Issue 5, May 2018, giy016, https://doi.org/10.1093/gigascience/giy016
Kurtzer GM, Sochat V, Bauer MW (2017) Singularity: Scientific containers for mobility of compute. PLoS ONE 12(5): e0177459. https://doi.org/10.1371/journal.pone.0177459