Sarah Nadi

Canada Research Chair in Software Reuse

Tier 2 - 2017-10-01
Renewed: 2022-10-01, 2022-11-01
University of Alberta
Natural Sciences and Engineering Research Council

Research involves

Developing techniques to help developers use software libraries correctly for specific tasks.

Research relevance

This research will help developers make more informed decisions about software reuse, facilitating faster development of better-quality software and mitigating the negative economic impacts of software bugs and vulnerabilities.

Research summary

Software libraries provide developers with a toolbox of high-quality programs and building blocks. But due to the complexity and poor documentation of these libraries, developers often use them incorrectly—and the consequences, such as bugs and security vulnerabilities, can be serious and costly. As Canada Research Chair in Software Reuse, Dr. Sarah Nadi aims to make it easier, faster and safer for developers to use these libraries by developing new comparison metrics for library characteristics.

Because developers may switch between libraries, Nadi and her research team are systematically developing benchmarks and automated techniques for supporting library migration. They are also targeting data scientists as an important emerging population of library users. Ultimately, their research will provide end-to-end support for library selection and migration for both software developers and data scientists.