I am an associate professor of Computer Science at Washington & Lee University. I take pride in using innovative educational techniques in the introductory computer science courses and advanced software development courses. I also enjoy working with motivated undergraduates on research problems with practical outcomes. I am the head of the computer science department, which is the best department!
I collaborate on developing web applications in a variety of disciplines. In the digital humanities, I am the technical director of The Ancient Graffiti Project, which was funded by the National Endowment for the Humanities. In STEM Pedagogy, I lead development on ChemTutor, an online tool to help incoming first-year students prepare for college-level chemistry, which was funded by the Associated Colleges of the South.
Education
I completed my Ph.D. in Computer Science from the University of Delaware in 2007. I was a 2000 NSF Graduate Research Fellow and was featured in the 60th anniversary retrospective.
I graduated with a bachelor's degree in mathematics and computer science from Gettysburg College and with a master's degree in computer science from Duke University.
Teaching
- Winter 2024: CSCI111: Fundamentals of Programming I
- Fall 2023: CSCI209: Software Development
- Spring 2023: Independent Study: Jared Cordova '23
- Winter 2023: CSCI111: Fundamentals
of Programming I
Independent Study: Grace MacDonald '23 - Fall 2022: CSCI209: Software Development
- Winter 2022: CSCI111: Fundamentals of Programming I
- Fall 2021: CSCI209: Software Development
- Spring 2021: CSCI335: Software Engineering through Web Applications
- Winter 2021: CSCI111: Fundamentals of Programming I
- Fall 2020: CSCI209: Software Development
- Winter 2020: Independent Studies: George Barker '20 and Liam McCann '20
- Spring 2019: CSCI335: Software Engineering through Web Applications
My Teaching Philosophy and All Courses
Research
My research interests are in software testing and distributed systems, specializing in automated testing techniques for web applications. I often collaborate with Lori Pollock's Software Analysis and Compilation Lab and with Sreedevi Sampath. I am also developing collaborations in digital humanities. See my research page for more information about my work and projects you can get involved with.
One of my papers was selected as #4 of the best papers of the last 20 years at HPDC! I really enjoyed working on that paper with my wonderful co-authors. It's gratifying that the paper has had such an impact.
Undergraduate Research Projects
I enjoy working with motivated undergraduates on research problems with concrete outcomes. Some examples of past undergraduate research projects include
- Analyzing statistical usage-based navigation models for web applications and their resulting test cases (led to an ICST 2011 paper, which received the best research paper award, and an ICST 2012 paper)
- Comparing data models for automatically generating test cases for web applications (poster, abstract)
- Developing automated oracle comparators for web applications (led to an ISSRE paper)
- Developing WebVizOr, a tool for viewing the HTML results from executing test cases (led to a TAIC-PART publication)
- Developing tools for logging user accesses to Web applications, creating user sessions from the logged accesses, and automatically replaying the generated user sessions and other test cases (used in several publications).
- Customizing an online digital library, which was used as a subject application in testing research (included in several publications)
- Mutating Web application code to enable failure detection experiments (led to a GHC poster)
Resources
- Curriculum Vitae
- Bibtex2HTML: my updates
- HTML & CSS Help for students starting to create web pages without the help of a tool.
Professional Service
Technical
- Program Committee Member, IEEE International Conference on Software Testing, Verification and Validation (ICST), 2024
- Program Committee Member, IEEE International Conference on Software Testing, Verification and Validation (ICST), 2022
- Program Committee Member, IEEE International Conference on Software Testing, Verification and Validation (ICST), 2020
- Program Committee Member, IEEE International Conference on Software Testing, Verification and Validation (ICST), 2019
- Program Committee Member, 33rd IEEE/ACM International Conference on Automated Software Engineering, Tool Demonstration Track, 2018
- ACM Student Research Competition Paper Reviewer, 2015-2018
- Program Committee Member, IEEE International Conference on Software Testing, Verification and Validation (ICST), 2018
- Program Committee Member, IEEE International Conference on Software Testing, Verification and Validation (ICST), 2015
- Ph.D. Symposium Co-Chair, IEEE International Conference on Software Testing, Verification and Validation (ICST), 2014
- Program Committee Member, TAIC PART 2014
- Program Committee Member, IEEE International Symposium on Software Reliability Engineering (ISSRE), 2013, also Student Papers
- Emerging Research Track Program Committee Member, The 19th Asia-Pacific Software Engineering Conference (APSEC), 2012
- Program Committee Member, International Conference on Software Testing, Verification and Validation (ICST), 2012
- Program Committee Member, 12th International Conference on Quality Software (QSIC 2012)
- Program Committee Member, The 2nd International Workshop on Regression Testing, 2012
- Program Committee Member, International Workshop on Testing, Analysis and Verification of Web Software. (TAV-WEB-10), co-located with Automated Software Engineering, 2010.
- Program Committee Member, Automated Software Testing (AST), 2010.
- Program Committee Member, International Symposium on Software Reliability Engineering, 2008, 2009
- Program Committee Member, TAIC PART, 2009
- Poster Committee, International Symposium on Empirical Software Engineering and Measurement (ESEM), 2009
Increasing Diversity in Computing
- Co-Chair for Second Workshop on Gender Equality in Software Engineering (GE 2019) located with ICSE 2019 in Montreal, Canada.
- Faculty Co-Chair for Grace Hopper Celebration of Women in Computing (GHC) 2015, 2016, 2017
- Poster Co-Chair for Grace Hopper Celebration of Women in Computing (GHC) 2013
- Panel and Workshop Selection Committee and Academic Advisory Committee for Grace Hopper Celebration of Women in Computing (GHC) 2012
- Writer and moderator for Panel: "Getting Off to a Great Start in Academia: Advice from the Other Side of the Tenure Track", Grace Hopper Celebration of Women in Computing (GHC) 2010
- Panel and Workshop Selection Committee for Grace Hopper Celebration of Women in Computing (GHC) 2010
- Academic Advisory Committee for Grace Hopper Celebration of Women in Computing (GHC) 2010
- Scholarship Reviewer, Grace Hopper Celebration of Women in Computing, 2008-2012
- Poster Committee, International Symposium on Empirical Software Engineering and Measurement (ESEM), 2009
- Conference Poster and Panel Reviewer, Richard Tapia Celebration of Diversity in Computing, 2009
University
- Faculty Affairs Committee, 2020-2023, Chair: Fall 2022
- University Library Committee, 2017-2020
- STEM Pedagogy Working Group, 2015-2016
- Faculty Representative to the Board of Trustees, 2015-2017
- Associate Chair Digital Humanities Working Group, 2014-2020
Co-PI for ACS R1 Collaboration grant, establishing relationship with UVA's Scholars' Lab. - Student Affairs Committee, 2013-2016
- Co-organizer of Women in Math and Science group, supported by an ACS Mellon Grant with the University of Richmond, 2010-2014
- W&L Women's and Gender Studies Advisory Board Member and Web Master, 2009-2014
- Member of the University Public Functions Committee, 2011-2013
- Program Committee Member for W&L's Women's Leadership Summit, 2012, 2014.
- Advisor of Pi Phi, 2011-2014
- Advisor of GRAAC (Generals Raising Awareness of Animal Cruelty), 2012-2016
- Member of University Faculty Committee on Inclusiveness, 2008-2009
Useful Information
I'm working on a Wiki with information for W&L students and others.
Community
I volunteer for Rockbridge Animal Alliance.