I am currently a Lead Researcher at Microsoft Research. Before joining Microsoft, I was an associate professor at Tsinghua University, China (2006-2014); a lecturer at RMIT University, Australia (2003-2006); a research fellow at National University of Singapore (2000-2002); and a software engineer at IBM Singapore (1999-2000). I received my PhD degree in Computer Science from School of Computing, National University of Singapore in 2003.
My research is in the area of software engineering, in particular, software analytics, software quality, software maintenance, and software reuse. The main theme of my research is to improve software quality and productivity by utilizing knowledge mined from software repositories. Over the years, a software organization could accumulate a large amount of data including source code, bug reports, execution logs, changes, metrics, documents, and so on. Data mining, machine learning, and information retrieval techniques can be applied to extract knowledge from the software data and solve software engineering problems. Together with my students and collaborators, I have published more than 100 research papers in international journals and conferences. More details about the papers can be found at my Google Scholar page.
Outside work, I like reading, hiking, spending time with friends, and playing with my two kids.
I am always open for collaborations!
My research area is software engineering, in particular:
My DBLP (a few of them are not mine), and Google Scholar
Software analytics is to enable software practitioners to perform data exploration and analysis in order to obtain insightful and actionable knowledge for real tasks around software and services. I work on software analytics for source code, bug reports, production logs, and crash reports:Bug Analysis and Prediction (statistical analysis of bugs and prediction of bug-prone modules), Debugging and Testing (detecting and locating bugs), Software Metrics (quantitative measurement of software product and process), and Software Reuse (reusing previously-written software).
Referred conference and journal papers:
Scholarly book chapters:
Research Program Committee:
I am a frequent reviewer for the following international journals: IEEE Transactions on Software Engineering, IEEE Software, IEEE Transactions on Knowledge and Data Engineering, Journal of Systems and Software, Empirical Software Engineering, International Journal of Software Engineering and Knowledge Engineering, Science of Computer Programming, Software Quality Journal, Software Practice & Experience, Journal of Software Maintenance and Evolution....
I also review proposals for Natural Science Foundation of China (NSFC) and Natural Sciences and Engineering Research Council of Canada (NSERC).
Recent Invited Talks/Seminars:
I was a visiting professor/scholar at the following organizations:
I taught the following courses to postgraduate and undergraduate students:
At Microsoft Research Asia:
At the School of Software, Tsinghua University:
At the School of Computer Science and Information Technology, RMIT University:
I am a member of IEEE and ACM.
(Last updated: May 2016)
Psalm 67:1-3: May God be gracious to us and bless us, and make his face shine on us, so that your ways may be known on earth, your salvation among all nations.