
Stephen Edwards
· Assistant ProfessorVerifiedVirginia Tech · Computer Science
Active 1972–2026
About
Stephen Edwards is a Professor and Associate Department Head for Undergraduate Studies in the Department of Computer Science at Virginia Tech. He holds a Ph.D. and M.S. in computer and information science from The Ohio State University, and a B.S. in electrical engineering from the California Institute of Technology. His research interests include computer science education, software testing, component techniques, and innovative teaching methods. He is based in Torgersen Hall at Virginia Tech, with additional affiliations at the Institute for Advanced Computing in Alexandria, VA, and the Virginia Tech Research Center in Arlington, VA. His contact information includes an email address (edwards@cs.vt.edu) and phone numbers for undergraduate and graduate inquiries. His work focuses on advancing computer science education and developing techniques to improve software testing and teaching practices.
Research topics
- Computer Science
- Artificial Intelligence
- Mathematics education
- Psychology
- Engineering
- Programming language
- Machine Learning
- Mathematics
- World Wide Web
- Pedagogy
- Operating system
- Multimedia
- Operations management
- Software engineering
- Arithmetic
- Demographic economics
Selected publications
A Call for Critical Technology to Enable Innovative and Alternative Grading Practices
2026-02-13
articleOpen accessThe call for alternative grading practices has been made both inside and outside the computing education community. Various practices exist to provide assessment and feedback to students that do not rely strictly on points out of one hundred percent, weighted averages, high stakes assignments, and grading for behaviors instead of learning. However, modern classrooms, especially computer science classrooms, rely on a myriad of digital tools to organize and maintain the course structure. Tools like learning management systems, automatic grading systems, submission systems, and practice systems all exist for computing students and faculty to use to help support the learning of programming concepts. By and large, these systems all rely on an underlying mechanism of points and aggregating points for scoring. In the face of such technological choices, adopting alternative grading practices can prove challenging for instructors and confusing for students. In this position paper, we advocate addressing key research problems to make these systems easier to use with alternative grading practices. These include comprehensive support for categorical grading, comprehensive support for rework and resubmission, and improved protocols for communication of scores and feedback. We propose an extension to LTI to support the needs of alternative grading practices, and we provide an initial design for this LTI extension. We discuss current problems and potential solutions and challenge the community to work on these problems and consider the design of future systems to embrace grading approaches that go beyond just points-based scoring.
BOF: Learner-Centered Grading in Computer Science Courses
2026-02-13
articleOpen accessThe field of computer science has a problem of representation–many groups are not represented in our classroom at levels approaching their composition in society. Unfortunately, the representation issue is a larger societal issue and begins well before students enter our institutions. Though we acknowledge that building inclusive and learner-centered classroom environments cannot increase representation by itself, it can have an impact on retention and inclusion for members of marginalized communities.
Improving students’ testing skill through mutation testing with modified feedback and training
Computer Science Education · 2026-05-20
articleSenior authorAdoption of Alternative Grading Practices in CS Classrooms
2026-02-13
articleOpen accessAlternative grading practices seek to improve learning and make education more equitable. For the past few years, our community has been exploring these techniques and contextualizing them for use in computing courses. In this panel, we will present various grading techniques with a particular attention to the experience implementing them and pitfalls to be avoided. The presenters all have extensive experience exploring alternative grading techniques. Furthermore, we hope to engage the audience in a conversation about the nuance of implementing these particular techniques in the variety of courses that are typical in computing programs.
BOF: Grading for Equity in Computer Science Courses
2025-02-18
articleThe field of computer science has a problem of representation-many groups are not represented in our classroom at levels approaching their composition in society. Unfortunately, the representation issue is a larger societal issue and begins well before students enter our institutions. Though we acknowledge that building inclusive and equitable classroom environments cannot increase representation by itself, it can have an impact on retention and inclusion for members of marginalized communities.
Hidden Cost of Mutation Testing on Auto‐Grader
Computer Applications in Engineering Education · 2025-10-16 · 2 citations
articleOpen accessSenior authorABSTRACT Mutation testing (MT) is a powerful technique for evaluating the quality of software test suites. MT introduces faults or “mutations” into the code and checks whether the tests then fail as appropriate. While MT is known to be more effective than code coverage as a measure of test quality, its computational cost makes it challenging to deploy in educational settings. In this paper, we show the effects of this computational demand on an auto‐grading system when MT was used in a junior‐level Data Structures and Algorithms (DSA) course. Through a comparative study spanning semesters with and without MT, we observed a noticeable increase on the auto‐grader's processing time and feedback turnaround time (about 30–50 s, which represents roughly a tripling in per‐submission processing time) for students whose projects are graded with MT. This additional load raises concerns that it might overload the server, causing delays for students in other courses. However, with suitable mitigation strategies in place, the only measurable impact on other students was a higher variance in feedback turnaround times during peak use. One such mitigation strategy is the use of a local MT plug‐in which helped to reduce the total number of submissions to the auto‐grader. Overall, we find the effects on server load from a carefully chosen set of mutations combined with moderate use of local MT to have an acceptable computational cost on the system load while improving student test suite quality.
Developing a Playbook of Equitable Grading Practices
2024-12-02 · 2 citations
article1st authorCorrespondingTraditional points-based grading can have negative impacts. As a result, many educators are experimenting with alternative grading practices that are more equitable for students. However, educators often face challenges in implementing equitable grading practices due to a lack of clear, practical descriptions of techniques and the fact that not all techniques are universally applicable. This working group addresses this problem using a three-pronged strategy: conducting a systematic literature review to gather documented techniques, compiling "recipes" or concrete descriptions of these techniques, and publishing them in an open-source, online "playbook" of equitable grading practices as a community resource for educators. This approach aims to make such practices more accessible and adaptable to various classroom situations.
Transforming Grading Practices in the Computing Education Community
2024-03-07 · 12 citations
articleOpen accessIt is often the case that computer science classrooms use traditional grading practices where points are allocated to assignments, mistakes result in point deductions, and assignment scores are combined using some form of weighted averaging to determine grades. Unfortunately, traditional grading practices have been shown to reduce achievement, discourage students, and suppress effort to such an extent that some common elements of traditional grading practices have been termed toxic. Using grades to reward or punish student behavior does not encourage learning and instead increases anxiety and stress. These toxic elements are present throughout computing education and computer science classrooms in the form of late penalties, lack of credit for code that doesn't compile or pass certain unit tests, among others. These types of metrics, that evaluate behavior are often influenced by implicit bias, factors outside of the classrooms (e.g., part-time employment), and family life situations (e.g., students who are caregivers). Often, students in these situations are disproportionately from low-socioeconomic backgrounds and predominantly students of color. Through this paper, we will present a case for adoption of equitable grading practices and a call for additional support in classroom and teaching technologies as well as support from administrations both at the department and university level. By adopting a community of practice approach, we argue that we can support new faculty making these changes, which would be more equitable and inclusive. Further, these practices have been shown to better support student learning and can help increase student learning gains and retention.
BOF: Grading for Equity in Computer Science Courses
2024-03-14 · 1 citations
articleSenior authorThe field of computer science has a problem of representation-many groups are not represented in our classroom at levels approaching their composition in society. Unfortunately, the representation issue is a larger societal issue and begins well before students enter our institutions. Though we acknowledge that building inclusive and equitable classroom environments cannot increase representation by itself, it can have an impact on retention and inclusion for members of marginalized communities.
Early Experiences with Specifications Grading in Introductory CS Courses
2024-10-13
article1st authorCorrespondingThis innovative practice paper describes our experiences with alternative grading practices in introductory computing courses and two large public universities in the United States. Computing classrooms often use traditional grading practices involving allocating points to assignments, deducting points for mistakes and tardiness, and combining assignment scores using a weighted average to determine grades. Recent research suggests that these practices may diminish achievement, discourage students, and suppress effort to such an extent that they are considered by some as detrimental. We approach our work as an exploratory case study, without predefined research questions or hypotheses. Our experiences began with the adoption of specifications grading. We outline the grading scheme applied to traditional programming assignments and exams/quizzes, and discuss the initial integration of these schemes with conventional auto-grading tools. We delve into student perceptions of alternative grading, their utilization of flexible deadlines, and resubmission opportunities. We conclude with a discussion of two challenges encountered during our exploration: student acceptance of a novel grading form, and the adaptation of tools designed for traditional grading to support alternative grading mechanisms. Our early exploration aims to inspire further research on the use of alternative grading in computing. It is clear from our observations that simply implementing the practices does not ensure the equitable and inclusive outcomes that can be achieved with these practices. If students are not prepared to use these practices, they find them difficult to understand and can feel that they are not being treated fairly. Additionally, we wish to foster a community of practice to assist faculty members exploring these changes, with the goal of creating more equitable and inclusive classrooms.
Recent grants
Community Resources for Automated Grading
NSF · $434k · 2006–2010
Educational Support for Testing Graphical User Interfaces
NSF · $150k · 2007–2010
Collaborative Research: Promoting a Growth Mindset Using Automated Feedback
NSF · $367k · 2016–2020
Classroom Interventions to Reduce Procrastination
NSF · $200k · 2013–2017
CodePractice: Developing Coding Skills Using Social and Adaptive Drill-and-Practice Exercises
NSF · $321k · 2013–2017
Frequent coauthors
- 30 shared
Manuel A. Pérez-Quiñones
University of North Carolina at Charlotte
- 27 shared
Clifford A. Shaffer
Virginia Tech
- 14 shared
Anthony Allevato
Virginia Tech
- 11 shared
Scott Turner
- 8 shared
Bob Edmison
Virginia Tech
- 8 shared
Kevin Buffardi
California State University, Chico
- 8 shared
Ayaan M. Kazerouni
California Polytechnic State University
- 8 shared
Jaime Spacco
Knox College
- Resume-aware match score
- Save to shortlist
- AI-drafted outreach
See your match with Stephen Edwards
PhdFit ranks faculty by your research interests, methods, and publications — grounded in their actual work, not templates.
- Free to start
- No credit card
- 30-second signup