Gail Murphy

Professor and Vice-President Research & Innovation

Office Phone #

Academic Information

B.Sc. (Honours), University of Alberta (1987); Software Designer, MPR Teltech Ltd. (1987-1992); M.Sc., University of Washington (1994); Ph.D., University of Washington (1996); Assistant Professor, University of British Columbia (1996-2001); Associate Professor, University of British Columbia (2001-2006), Professor, University of British Columbia (2006-current).


Over time, software systems typically become hard to modify because the structures imposed in the systems to manage complexity begin to degrade. I am interested in developing techniques and tools to overcome this problem. The desired end result is that software engineers will be able to more effectively evolve large--multi-million lines of code--software systems.

One aspect of my research focuses on finding ways of helping software developers cope with existing systems. Within my research group, we are developing tools to help a software developer understand the existing structure (or lack of structure) in their systems. We are also investigating techniques to help a software developer impose new structure on existing systems. We place particular emphasis on tools that encompass lightweight and approximate approaches because these approaches show promise to be able to help a developer working within tight time and cost constraints.

Another aspect of my research focuses on trying to avoid the structural degradation problem through better design techniques. In this area, my interests lie in developing design approaches to enable the more effective reuse of existing components, and in investigating software architectures which support flexible system configuration.

My research combines the development of novel techniques and tools with the evaluation of those techniques and tools in industrial settings.

Selected Publications

Brunet, Murphy, Serey and Figueiredo. Five years of software architecture checking: A case study of EclipseIEEE Software, 2015.

Meyer, Fritz, Murphy and Zimmermann. Software developers' perceptions of productivity Proc. of FSE, 2014.

Rastkar, Murphy and Murray. Automatic summarization of bug reports. IEEE Transactions on Software Engineering, 2014.

Fritz, Ou, Murphy and Murphy-Hill. A degree-of-knowledge model to capture source code familiarity. Proc. of ICSE, 2010. (ACM SIGSOFT Distinguished Paper Award)

Anvik, Hiew and Murphy. "Who should fix this bug?". Proc. of ICSE, 2006 (ACM SIGSOFT Distinguished Paper Award, ICSE Most Influential Paper Ten Years Later Award).

Kersten and Murphy. Using task context to improve programmer productivity. Proc of FSE, 2006.

Research Interests

software engineering

Research Groups

SPL: Software Practices Lab
CAIDA: Centre for Artificial Intelligence Decision-making & Action

Latest Courses

2016 Winter

CPSC 310 - Introduction to Software Engineering
CPSC 310 - Introduction to Software Engineering

2014 Winter

CPSC 210 - Software Construction