RSECon24: Requirements capture

requirements capture
cloud computing
presentation
Author

Gabrielle M. Schroeder

Published

September 3, 2024

As a research software engineer, one of my key responsibilities is determining a project’s requirements based on the needs and priorities of my collaborators. At the 2024 Research Software Engineering Conference (RSECon24), I had the opportunity to present this talk on requirements capture, using one of our team’s more complex projects as an example.

Slides

Download PDF file.

Abstract

Solving the right problems: Requirements capture for large-scale, evolving research software

A key challenge in designing sustainable research software is evaluating and meeting ongoing user needs. OpenScan is a National Institute for Health and Care Research Innovation Observatory (NIHRIO) project that collects, standardises, analyses, and publishes international clinical trial and medical device data. Since OpenScan’s initial development, NIHRIO has faced challenges with maintaining, expanding, and fully utilising the project for their research, in part due to its complex technical stack and Amazon Web Services (AWS) infrastructure.

NIHRIO enlisted the Newcastle University RSE Team to update and re-design components of OpenScan to address these issues. We began by evaluating and documenting the design, including how NIHRIO currently uses OpenScan. We then captured the long-term requirements of NIHRIO’s developers and researchers. This process highlighted that, in addition to NIHRIO’s stated requirements, we needed to address challenges with account management, documentation, and reproducible workflows.

In this talk, we discuss capturing OpenScan2’s requirements using interviews, user stories, and work packages. We highlight one of the workflow challenges that we uncovered: updating the web scrapers that collect OpenScan’s data. Finally, we show how we designed new solutions to address these barriers.

OpenScan’s redesign demonstrates the importance of requirements capture when developing and (re-)designing research software. Ultimately, ensuring we solve the right problems will help make OpenScan a sustainable resource that enables innovative research on medical progress.