About the lab

Learn what we study and how we work.

Our research

At PRISM, we study how software is developed in real-world settings. We collect data from many sources, including code bases, issue trackers, code reviews, package registries, vulnerability reports, and the models and prompts used in today's AI tools. Our main goal is to turn this information into useful insights for software professionals and trustworthy results for researchers.

Our lab mostly focuses on the intersection of software engineering and artificial intelligence. We study how software engineering methods can be used with AI systems, and how AI techniques can help with software engineering tasks.

You can browse our publications for an overview of our research.

Research interests

The current and recurring themes in the lab include:

  • Software engineering for pre-trained models. We study the practices around building, reusing, testing, versioning, and maintaining pre-trained models and developing software systems that adapt and reuse them.
  • AI for software engineering. We study the design and evaluation of AI-based techniques to support developer tasks, such as code translation, code review, and documentation, among others.
  • Supply chain and dependency management. We study dependency-related phenomena, such as upgrades, breaking changes, and asset versioning, with a more recent focus on how these concerns transfer to the engineering of pre-trained models and the software systems that depend on them. We also study how to reduce the propagation of risk throughout software dependency networks and supply chains.

We actively welcome opportunities to engage with new research themes and collaborate across diverse areas that complement our expertise, especially when it translates into practical impact or positive learning outcomes. If you are interested in collaborating with us, please get in touch.

How we work

Our most frequently employed research methods include:

  • Repository mining across extensive datasets from real-world software projects.
  • Empirical case studies that integrate quantitative measurement with qualitative analysis of studied artifacts.
  • Controlled experiments designed to evaluate claims when interventions can be systematically managed.
  • Surveys and interviews to assess the alignment between measured outcomes and practitioner experiences.
  • Search-based and optimization methods for addressing problems characterized by large configuration or solution spaces.

The word principled in the lab's name highlights our commitment to careful and thorough research. We believe rigorous methodology is a skill anyone can learn, and sharing sound and impactful research results is central to our student training.

Our lab is dedicated to cultivating an inclusive and respectful environment where all members feel welcomed, valued and empowered to contribute. We promote a culture of collaboration, mutual respect, and shared growth.