The Research Software Development Team (RSDT)

The collaboration between CANARIE and uOttawa IT has led to the establishment of the Research Software Development Team (RSDT) to provide support for the community of researchers at the University. Under this project, a team of professional software developers will collaborate with the researchers to create the software specifically to their needs. The goal is to help researchers refine existing software tools to improve security, usability and robustness, disseminate research software beyond the lab in which it is created, and enhance existing functionality.
The Research Software Development Project has been made possible by funding from the Canadian Network for the Advancement of Research Industry and Education (CANARIE).
FAQ
Can a proposal be to improve an existing system?
Yes, our services include revamping existing programmes, that can include usability improvement, security, adding new features, re-engineering etc. We encourage reusability and therefore our team not only provides support for development but also help with proper documentation and code sharing.
Does the RSDT provide additional support apart from software development?
The team provides training for the proper use of existing resources at CANARIE and the Digital research infrastructure. Our Senior Scientific Computing Specialist organizes monthly seminars about a wide range of high-performance computing techniques and is geared toward researchers.
Additionally, we aim to provide training and consultations to the researcher teams willing to gain knowledge in software development, specifically with best practices for quick code organization and deployment such as Git usage, documentation, package development, and working with metadata.
How many projects will be considered in a single intake?
The number of projects would depend on how large the projects are and how we can combine multiple projects that could benefit from the same developed software. If the research team has students or assistants that can code, the RSDT can support their projects by offering consulting services or helping through the Community of Practices.
How will the RSDT work with the Research team?
The ELR is flexible to work within the research team to ensure that the requirements are well understood. Project evaluation and selection is based on criteria that help us identify project requirements and assign software developers based on the evaluation. We recommend standards while promoting a collaborative work environment, allowing researchers to have flexibility in terms of language, architecture, etc.
What is Open Access for RSDT?
The team promotes access to software that can be reused by other groups, and therefore, we encourage open access to resources and software programs. We work on open-source packages that leverage open libraries and make them available to the larger research community.
What type of skills will the developers have in the RSDT?
Our developers are skilled in a wide range of technologies, from high-performance computing to the web. They can code in various languages such as R, Python, C++, PHP, JavaScript and adapt to new ones. The versatile team comprises Analysts and developers who are well-versed with agile methodologies to ensure that the entire cycle of software engineering is implemented that includes the requirement gathering, setting up automated testing, Operating system, and hardware.