Kathryn T. Stolee
Me

Email: ktstolee 'at' ncsu 'dot' edu

As of January 2016, I have moved to North Carolina State University as an Assistant Professor in the Department of Computer Science. From 2013 - 2015, I was the Harpole-Pentair Assistant Professor of Software Engineering at Iowa State University, with a joint appointment between the Department of Computer Science and The Department of Electrical and Computer Engineering. I received my Ph.D. in Computer Science in August 2013 from the University of Nebraska-Lincoln as a member of the ESQuaReD lab under the supervision of Sebastian Elbaum.

Recent Events (old news)
  • August 2015: Our paper, "Investigating Samples Representativeness for Online Experiments in Java Code Search", with collaborators Rafael Maiani de Mello and Guilherme Travassos, was accepted to ESEM.
  • July 2015: Our paper, "Repairing Programs with Semantic Code Search" with my student Yalin Ke and collaborators Claire Le Goues and Yuriy Brun was accepted to ASE
  • May 2015: Our paper, “How Developers Search for Code: A Case Study” with Caitlin Sadowski and Sebastian Elbaum, was accepted to ESEC/FSE 2015
  • May 2015: Presented “Exploring the Benefits of Using Redundant Responses in Crowdsourced Evaluations (Full Paper)” at 2nd International Workshop on CrowdSourcing in Software Engineering (CSI-SE), collocated with ICSE
  • May 2015: Our paper, "Code search with input/output queries: Generalizing, ranking, and assessment" with Sebastian Elbaum and Matthew B. Dwyer was published online in the Journal of Systems and Software http://dx.doi.org/10.1016/j.jss.2015.04.081
  • May 2014: Our paper based on my dissertation, "Solving the Search for Source Code", was published in TOSEM. http://dx.doi.org/10.1145/2581377
  • May 2014: My grant, "SHF: EAGER: Collaborative Research: Demonstrating the Feasibility of Automatic Program Repair Guided by Semantic Code Search" was awarded. (abstract)

Research Interests

My research interests are in the areas of program analysis, empirical software engineering, and crowdsourcing. My prior work in program analysis includes encoding programs as constraints for the purpose of code search with I/O examples and is the first to use behavioral specifications with constraint solvers for code search. Additionally, I have transformed web mashup programs through refactoring. In empirical software engineering, I have designed and run nearly a dozen empirical studies with human participants, using crowdsourcing for many of those.

Related to computer science education, I have contributed to an online instructional tool, BugHunt, that teaches software testing techniques through a series of tutorials. I have also held an internship at the Microsoft FUSE Labs and studied Kodu, an educational programming language designed for children.