Empirical Software Engineering Group (ESE)

Established: December 31, 2010

The Empirical Software Engineering working group empowers software development teams to make sound data-driven decisions by deploying novel analytic tools and methods based on ESE’s empirical research on products, process, people, and customers.

Our current interests are in the areas of:

  • Software Reliability: Predicting Failures/Failure-proneness, Test Prioritization, Failure Analysis.
  • Software Process: Organizational Impact on Quality, Agile Software Development, Global Software Development, Effort Estimation
  • Empirical Studies: Unit Testing, Inspections, Assertions, Test Driven Development
  • Games Research: Impact of Social Play, Retention of Players, Usage of Game Features

For an overview of our research activities, we recommend the showcase paper “Empirical Software Engineering at Microsoft Research“.




David Lo (2014)Miryung Kim (2011, 2014)Emerson Murphy-Hill (2012, 2013)Tim Menzies (2011, 2012)Abram Hindle (2011)Sung Kim (2010)Harald Gall (2008, 2009)Laurie Williams (2009)Andreas Zeller (2005, 2009)Victor R. Basili (2007)Neeraj Suri (2007)



Amiangshu Bosu (2014)

Joao Brunet Monteiro (2014)

Erik Harpstead (2014)

Ayushi Rastogi (2014)

Ted Smith (2014)

Oscar Edwin Alvarez Callau (2013)

Gifford Cheung (2013)

Thomas Debeauvais (2013)

Baishakhi Ray (2013)

Alberto Bacchelli (2012, 2013)

Kıvanç Muşlu (2011, 2013)

Jeff Huang (2012)

Ekrem Kocagüneli (2012)

Shaun Phillips (2012)

Juliana Saraiva (2012)

Alexander Tarvo (2012)

Sauvik Das (2011)

Ashish Gupta (2011)

Juan Francisco Rodríguez (2011)

Francisco Servant (2011)

Emad Shihab (2011)

Ray Buse (2010)

Ken Hullett (2010)

Mei Nagappan (2010)

Kalaikumaran Ramamurthy (2010)

Christian Bird (2008, 2009)

Philip Guo (2009)

Ayse Tosun (2009)

Andreas Johansson (2007)

Lucas Layman (2007)

Thomas Zimmermann (2006)




Software Engineering Mix

Bellevue, WA, USA | July 2015

Hyatt Regency Bellevue Hotel Software Engineering Mix is part of the Microsoft Research Faculty Summit 2015.


Software Process

Established: February 7, 2012

Our studies on software process include organizational impact on quality, agile software development, global software development, effort estimation, development branches, and build analysis.

Software Reliability

Established: February 7, 2012

This project investigates how factors such as complexity metrics, churn, organizational structure, dependencies, and social networks relate to software defects and failures. This information is used to build prediction models that can help to prioritize tests.