I am currently an Assistant Professor in the Cheriton School of Computer Science at the University of Waterloo. Please visit my new website here.

Welcome to Meiyappan (also known as Mei) Nagappan's home page. He is currently an Assistant Professor in the Software Engineeering department of Rochester Institute of Technology. Before that he was a Post Doctoral Fellow with Dr.Ahmed Hassan at Software Analysis and Intelligence Lab (SAIL) in the School of Computing at Queens University. He completed his PhD student under Dr. Mladen Vouk in the Computer Science Department of North Carolina State University. His research interests are in 'Big Data' Empirical Software Engineering by mining Ultra Large repositories of software to identify patterns and relationships in large ecosystems.

He believes that as SE researchers we should look at deriving solutions that encompass the various stakeholders of software systems, and not only software developers. Hence, for the past 7 years he has been working on SE research that goes beyond just impacting S/W developers and testers. He has worked on using SE research to address the concerns of S/W operators, build engineers, and project managers, in addition to addressing the concerns of S/W developers, testers and SE researchers.

The core of his research is with respect to mining ultra large repository-of software repositories, and analyzing different combinations of repositories for different stakeholders as explained below.
Software Developers - We looked at the source code of hundreds of thousands of mobile apps in the Google Play Market to examine the kind to reuse present in the current mobile app development paradigm. We also looked into the user reviews of a mobile app in the iOS platform in order to categorize the issues that users complain about so that developers can better focus on issues that matter the most to users. Additionally we also looked into the logging statements in source code to identify the parts of the code which the developers considered risky in field operation.
Software Maintainers - We looked at the source code of hundreds of thousands of mobile apps in the Google Play Market to examine the maintenance effort involved in using the advertisement libraries for monetizing the mobile apps. We also looked into how other maintenance efforts for mobile apps can be prioritized.
Software Managers - We looked at improving the performance of the linear models built on SE data by using local models (build on a subset of the data) instead of global models (build on the whole dataset). Additionally by automatically analyzing hundreds of GigaBytes of log files we were able to produce operational profiles of large scale systems, which could be used by managers to prioritize features for the next release of the software.
Software Operators - We looked at how we can bridge the gap between software operators and software developers. We also looked at how we can help software operators identify a small subset of log lines from millions of log lines in a log file, that correspond to the issues currently at hand.
Software Build Engineers - We looked at build migrations that have happened in the past in order to identify the various steps involved in such a migration. This will help build engineers in future such migrations.
Software Engineering Researchers - We have looked at the generalizability issue present in SE research, and proposed a technique in order to identify and present the diversity of a particular SE research study.
A more detailed research statement can be found here.

Latest News

  • Sept 27 2014 - Our paper titled "Replicating and Re-evaluating the Theory of Relative Defect-Proneness" has been accepted for publication in IEEE Transactions of Software Engineering.
  • Jun 22 2014 - Our papers titled "Understanding Log Lines Using Development Knowledge" and "Mining Co-Change Information to Understand when Build Changes are Necessary" have been accepted to be published in ICSME 2014.
  • June 16 2014 - Our paper titled "Prioritizing The Devices To Test Your App On: A Case Study Of Android Game Apps" has been accepted to be published in FSE 2014.
  • May 23 2014 - Our paper titled "A Large-Scale Empirical Study of the Relationship Between Build Technology and Build Maintenance" has been accepted to be published in the Journal, Empirical Software Engineering.
  • May 14 2014 - Our papers titled "On the Relationship between the Number of Ad Libraries in an Android App and its Rating", and "On Ad Library Updates in Android Apps" has been accepted for publication in IEEE Software.
  • Mar 11 2014 - Our papers titled "An Empirical Study of Dormant Bugs", and "An Industrial Case Study of Automatically Identifying Performance Regression-Causes" has been accepted for publication at the 11th ACM/IEEE Working Conference on Mining Software Repositories (MSR 2014).
  • Feb 18 2014 - Our paper titled "What Do Mobile App Users Complain About? A Study on Free iOS Apps" has been accepted to be published in the IEEE Software Journal.
  • Dec 18 2013 - Our paper titled "Continuous Validation of Load Test Suites" has been accepted for publication in ICPE 2014.
  • Nov 27 2013 - Our paper titled "Towards Improving Statistical Modelling of Software Engineering Data: Think Locally, Act Globally!" has been accepted to be published in the Journal, Empirical Software Engineering.
  • Nov 01 2013 - Our paper titled "A Large Scale Empirical Study on Software Reuse in Mobile Apps" has been accepted to be published in the IEEE Software Special Issue on Next Generation Mobile Computing.
  • Nov 01 2013 - I am visiting Romain Robbes at the PLEIAD research lab in University of Chile for two weeks.
  • Oct 21 2013 - I am giving a talk on "Leveraging Performance Counters and Execution Logs to Diagnose Memory-Related Performance Issues" at the Tata Research Development & Design Centre in Pune.
  • Oct 9 2013 - I am giving a talk on "Large Scale Studies of Mobile Apps in the Android and iOS Markets" at the IBM India Research Labs in Bangalore.
  • Aug 18 2013 - I am giving 2 presentations @ FSE 2103 - (1) A tutorial on "Statistics in Software Engineering: Pitfalls and Good Practices" and (2) A research paper talk on "Diversity in Software Engineering Research".
  • Jul 22 2013 - Our paper titled "Studying the Relationship between Logging Characteristics and the Code Quality of Platform Software" has been accepted to be published in the Journal, Empirical Software Engineering.
  • Jul 15 2013 - Our paper titled "Debugging Revisited: Toward Understanding the Debugging Needs of Contemporary Software Developers" has been accepted to be published in the ESEM 2013 Industry Track.
  • Jun 30 2013 - Camera ready pre-print of our ESEC/FSE 2013 paper titled "Diversity in Software Engineering Research" is now available along with the data used in the study that has been successfully evaluated by the ESEC/FSE artifact evaluation committee.
  • Jun 14 2013 - Our papers titled "Leveraging Performance Counters and Execution Logs to Diagnose Memory-Related Performance Issues" and "Predicting Bugs Using Antipatterns" have been accepted to be published in ICSM 2013
  • May 30 2013 - Our paper titled "Diversity in Software Engineering Research" has been accepted to be published in ESEC/FSE 2013
  • May 10 2013 - Our paper titled "The Impact of Classifier Configuration and Classifier Combination on Bug Localization" has been accepted to be published in IEEE Transactions on Software Engineering
  • May 06 2013 - Visiting the RiSE group in Microsoft Research for a week.
  • Mar 15 2013 - Our paper titled "Revisiting Software Development Effort Estimation Based on Early Phase Development Activities" has been accepted for publication at the 10th ACM/IEEE Working Conference on Mining Software Repositories (MSR 2013)
  • Oct 25 2012 - Visiting Japan for 2 weeks to attend IWESEP 2012 as PC Chair and to visit POSL @ Kyushu University
  • Aug 24 2012 - Conclusion of MSR Vision 2020 - A gathering of around 100 ESE researchers from all over the world to discuss the future of Mining Software Repositories based research.
  • Jun 20 2012 - Our paper titled "An Empirical Study of Build System Migrations in Practice: Case Studies on KDE and the Linux Kernel" has been accepted for presentation and publication as a full technical paper in the proceedings of the 28th IEEE International Conference on Software Maintenance, to be held in Riva del Garda, Italy, September 23-30, 2012.
  • Jun 03 2012 - Our paper titled "Think Locally, Act Globally: Improving Defect and Effort Prediction Models" won the best paper award at MSR 2012.