Bringing In The Research Dollars! (BiRD)

Building Sustainable Software Tools for Open Science (R03 Clinical Trial Not Allowed)


Deadline: December 04, 2024 5 pm

Amount: The combined budget for direct costs for the two-year project period may not exceed $300,000. No more than $200,000 direct costs may be requested in any single year.

Purpose

Purpose 

The purpose of this funding opportunity is to enhance the sustainability and impact of research software tools by enabling the use of best practices and design principles in software development and by leveraging continuing advances in computing. The Building Sustainable Software Tools for Open Science (R03) funding opportunity is intended to provide a flexible mechanism to support the use of best practices for scientific software development and to promote community engagement for open science. Successful grants will enable and/or enhance biomedical, clinical, behavioral, social, and health-related research endeavors by (1) developing robust, sustainable, scalable, and reproducible research software tools and workflows, (2) extending the impact of research software by broader dissemination to the scientific community, (3) supporting collaborations between scientists and software engineers to leverage modern, best practices in research software development, and (4) enhancing software skills of the research workforce. This initiative is aligned with the NIH Strategic Plan for Data Science, which describes actions aimed at building a better data infrastructure and a modernized data ecosystem.

Scope (Research Objective) 

The goal of this NOFO is to enhance the sustainability and impact of research software tools, in accordance with the NIH Strategic Plan for Data Science. The program will support efforts that address robustness, sustainability, reusability, portability, and scalability of existing biomedical, clinical, behavioral, social, and health-related research software tools and workflows of recognized scientific value. It is primarily intended to provide support for research software development, with some allowance for other costs that may be required to improve tools with significant user base or demonstrate potential for community adoption. Collaborations either within or across institutions are desirable and may include industry or academic partners.

Delivering reliable, sustainable, and reusable software across multiple platforms requires a whole lifecycle approach, as illustrated with a few instances. Software development can be improved by enhancing the development process, including the addition of resources for building, testing, and managing change in an open-source community. Robustness and reliability can be improved through open-source licensing to increase community engagement for (re)usage, testing, and validation. Reusability can be enhanced by improving dissemination channels for important algorithms and tools, by publication of tools in shared container registries, and with well-crafted operating manuals. Interoperability can be enhanced by incorporating open interfaces and data formats, especially through engagement in relevant communities and standards efforts. Refactoring can enhance portability and take advantage of new hardware or compute environments). 

Examples that address one or more challenges toward building robust software suitable for open science and modern computing include, but are not limited to:  

  • Adding application programming interfaces (APIs) and services to software, especially when compliant to community standards;
  • Refactoring of software to incorporate standard interfaces and data formats, replace custom code with standard, hardened libraries;
  • Refactoring software for portability and to scale efficiently on cloud or hybrid environments;
  • Reducing coupling and complex shared state, allowing code to operate on diverse data sources and in collaboration with other services;
  • Adopting standard input and output data formats including providing clean and well-documented input, output, and configuration that make scope software components more usable in composition via workflow languages and ensure that data exchanged by services maximizes the use of open data formats;
  • Implementing standard logging models, improving performance through improved logging, monitoring, code profiling and optimization, taking advantage of parallelization, or use of graphics processing units (GPUs);
  • Enhancing source code, documentation, version management and build/test tools to support community open-source development;
  • Developing standard build and packaging tools to manage dependencies and produce containerized runtimes;
  • Formatting packages for sharing via common package management tools appropriate to the language and environment;
  • Enhancing standard unit and functional testing support and sample data sets for testing patches and upgrades

This funding opportunity is meant to support development of robust, re-usable scientific software and tools. Data generation and data analysis projects are NOT in scope of this NOFO. 

More Info: https://grants.nih.gov/grants/guide/rfa-files/RFA-OD-24-010.html



Add to Calendar