Capstone courses
Spring 2027 capstone information
Here you will find information about CS 4094 Capstone sections being offered in Spring 2027. You can cross-check this information with the university timetable to get detailed information about specific sections to ensure you're registered for one you're interested in. Capstone courses are only available to computer science majors.
- Instructor: Sang Won Lee
- CRN 13597 (CS 4094) or CRN 13622 (CS 4774) or CRN 22101 (CS 4784)
- Tuesdays & Thursdays 11 a.m.-12:15 p.m. (in person)
Capstone philosophy: When you ask an AI to finish your homework, write your code, or summarize a reading, what did you actually learn? Generative AI has quickly become part of how students study, but its effect on learning is still poorly understood, and designing systems that support learning rather than short-circuit it is a significant open challenge. Students can now produce polished work without engaging critically with the material, and it is increasingly unclear which skills still matter, how learners should resist the temptation to hand off their thinking, and how instructors can respond. In this capstone, we explore how computational systems can help mitigate AI's negative impacts on learning and education while opening up new, productive ways for learners to work with AI. Possible directions include, but are not limited to, tools that promote critical engagement, systems that guard against overreliance, new interaction models that keep learners actively involved, support tools for instructors, informal learning experiences, and approaches to building AI literacy. This is a project-based course: you will form a team, define an open-ended real-world problem in this space, and carry it through problem formulation, requirements definition, design, and implementation, drawing on the computer science knowledge and skills you have built over the past several years. Along the way, you will critique your peers' work constructively and communicate your results through both written documentation and public presentations and demos. This is a rare chance to build something of your own that addresses a problem you and your peers face every day.
- Instructor: Alexey Onufriev
- CRN 13598 (CS 4094)
- Mondays & Wednesday 4-5:15 p.m. (in person)
Capstone philosophy: This capstone prepares students for a fast-changing job market where adaptability and versatility are essential—and where strong programming skills alone are no longer enough. It’s also an excellent stepping stone to graduate school. The course emphasizes team-based, computationally intensive research. Students will work in groups of 3–5 on realistic projects and experience the full life cycle of a computation-heavy R&D effort—from initial brainstorming to a final written report. Projects touch many facets of real-world computing, including well-justified choices of numerical methods and algorithms; selection of sophisticated software; use of appropriate computational platforms (including HPC and GPUs); and high-end visualization. Each project is deliberately scoped and paced so that teams who put in an honest, sustained effort can succeed. Any background beyond the listed prerequisites will be covered through short instructor-led modules. Use of generative AI tools is encouraged, with guidance on responsible and effective practice. Graduates of the course will be prepared for roles across diverse industries and government labs, or for advanced study.
- Instructor: David H. Smith IV
- CRN 13599 (CS 4094)
- Mondays & Wednesdays 4-5:15 p.m. (in person)
Capstone philosophy: Every course you have taken at university has likely involved some kind of educational technology: the system that graded your programming exercises, the platform that delivered your exams, and the tool that gave you feedback at two in the morning when no human was available. These systems shape how millions of students learn and Generative AI is now rapidly changing what these systems can do in terms of providing support to students and instructors alike. Building effective (and enjoyable!) educational technology means combining software engineering with an understanding of how people learn, in every discipline, not just computer science.
In this capstone, teams will design, build, and evaluate educational technology on PrairieLearn, an open-source assessment and learning platform used at dozens of universities across North America for courses in physics, mathematics, chemistry, engineering, statistics, and computer science. Possible projects include GenAI-supported question authoring workflows that help instructors write, randomize, and validate problems; interactive AI tutoring systems that guide students through a problem without giving away the answer; AI-assisted feedback and grading for open-ended student work; new interactive question types for disciplines the platform does not yet serve well; and instructor-facing analytics that turn assessment data into teaching decisions. Teams may take on a project proposed by the instructor and the PrairieLearn development team, who will serve as clients, or pitch their own idea in this space. In either case, this course will explore how theoretical and empirical findings from learning science, cognitive science, and education can be used to guide the development of requirements for educational technology and the evaluation of that same technology in terms of its impact on student experience and learning. Along the way you will critique your peers' work, document your system for the people who will maintain it, and present your results.
- Instructor: Young Cao
- CRN 13600 (CS 4094)
- Tuesdays & Thursdays 8-9:15 a.m. (in person)
Capstone philosophy: This capstone course provides an intensive, team-based research experience in computational biology. Teams of 3–5 students will select a biological system or research question and investigate it through an integrated process of literature review, biological data analysis, and mathematical or computational modeling. Projects may involve topics such as gene regulation, signaling pathways, population dynamics, infectious disease, systems biology, or other biological systems suited to quantitative analysis. Working under faculty guidance, students will formulate research questions, identify and evaluate relevant scientific literature, obtain and analyze biological data, develop and assess mathematical or computational models, and interpret their results in a biological context. Each team will maintain a clear record of its methods, assumptions, analyses, and conclusions, with emphasis on reproducible computational practice and effective scientific communication.
The course culminates in a written research article presenting the team's motivation, background, methods, results, discussion, and conclusions in the style of a professional scientific publication. Students will also present their work to the class or a broader academic audience. By completing the course, students will gain experience conducting collaborative, interdisciplinary research and integrating biological reasoning with quantitative and computational methods.
- Instructor: Rich Charles
- CRN 13603 (CS 4094)
- Tuesdays & Thursdays 5-6:15 p.m. (in person)
Capstone philosophy: In this capstone course, students work with an external client to gather, analyze, and document requirements; design, develop, and test a functional software application; and prepare the completed solution for deployment. Throughout the project, students apply established project management methodologies aligned with standards from the Project Management Institute (PMI) to plan, execute, and manage their work, collaborate effectively as a team, and maintain key project artifacts. Students also integrate AI tools into both project management and software development processes, using critical thinking to evaluate AI-generated outputs, refine and improve results, and justify the use of AI in decision-making, problem-solving, and software development. Through this experience, students apply technical, project management, teamwork, and AI skills in a realistic software engineering environment.
- Instructor: Yan Chen
- CRN 13602 (CS 4094)
- Tuesdays & Thursdays 3:30-4:45 p.m. (in person)
Capstone philosophy: Nearly every important computing system today is also a social system. We learn together, work in teams, share information online, make decisions in groups, build communities, and increasingly interact with one another through AI. Yet designing technology for groups of people is fundamentally different from designing technology for a single user. People disagree, influence one another, divide work unevenly, form social norms, struggle to communicate, and sometimes behave very differently once technology enters the picture.
In this capstone, we explore social computing. How computational systems can help people communicate, collaborate, learn, and make decisions together. Possible projects might investigate tools for better group discussions, AI agents that participate in or support teamwork, systems for collaborative learning, technologies that help people find and coordinate with others, tools for understanding online communities, mechanisms for encouraging participation and inclusion, or new ways of combining human and AI contributions in group work.
This is a project-based course. You will work in a team to identify a real social or collaborative problem, understand the people affected by it, design a computational solution, and build a working system. Projects will take you through the full development process, including problem formulation, user and requirements analysis, interaction design, implementation, evaluation, and communication of your results. Along the way, you will critique other teams' ideas, test your assumptions with real users or realistic scenarios, and present your work through written documentation, demonstrations, and public presentations.
The goal is not simply to build another app. It is to understand how technology changes the way people behave together and then design something that makes those interactions meaningfully better. By the end of the semester, you will have built a substantial project that brings together the computer science skills you have developed throughout your degree while tackling a problem that exists in the real world.
- Instructor: Antuan Byalik
- CRN 13605 (CS 4094)
- Tuesdays & Thursdays 5:30-6:45 p.m. (synchronous online)
Capstone philosophy: This section of the capstone is meant to expose students to the real day-to-day life of software engineers in the industry. With large, group projects that are full-stack software applications, students will experience pitching impactful technical ideas and collaborating with peers on design and development. Students should be interested in exploring a career in software engineering that simulates many of the common rituals while also hearing from several guest speakers/panelists talk about their industry experience in the software field. Through hands-on design and implementation, students will discuss technical tradeoffs and industry best practices in the life of a software engineer. AI is a fundamental aspect of the software engineering role in 2026 and so students will be expected to have opinions, leverage available tooling, and thoroughly discuss how/what AI-assisted code or processes they have incorporated.
- Instructor: Jeff Bogdan
- CRN: 13606 (CS 4094)
- Tuesdays & Thursdays 2-3:15 p.m. (synchronous online)
- Note: a few course meetings may be offered in person at the start and end of the semester; other courses will be offered on Zoom, with attendance and participation (with cameras on) expected.
Capstone philosophy: Capstone is the opportunity to apply everything you’ve learned in your studies to a single semester-long software engineering team effort. You will cover all stages of the Software Development Life Cycle: planning, requirements, design, implementation, testing, and deployment. You will learn how to operate effectively as a team and manage your engineering effort in a way that keeps the team and your manager (that’s me) informed and engaged. You have ultimate flexibility in the project you choose. Make it a project that will be a compelling addition to your software engineering portfolio, highlighting the breadth of your knowledge, your effectiveness as a team player, and your ability to leverage AI for optimal results.
- Instructor: Matt McHugh
- CRN: 13601 (CS 4094)
- Tuesdays & Thursdays 2-3:15 p.m. (in person)
Capstone philosophy: Students will work in teams, using the Scrum framework, to develop a cloud-native application to solve a real-world problem or need. Students will get experience defining and prioritizing system requirements, developing with good automated testing and continuous integration practices, and deploying software to cloud resources.
- Instructor: Bimal Viswanath
- CRN: 13604 (CS 4094) or CRN 22083 (CS 4274)
- Tuesdays & Thursdays 5-6:15 p.m. (in person)
Capstone Philosphy: This capstone course investigates the security and safety of foundation models—-deep neural networks trained on broad data (such as text, images, and audio) that can be adapted for a wide range of downstream tasks. Designed for students interested in data-driven cybersecurity challenges rooted in machine learning, this course explores the rapidly evolving intersection of Deep Learning and Security.
- Instructor: Marie Paretti
- CRN: 15372 (ENGE 4736)
- Mondays & Wednesdays 4-5:15 p.m. (in person)
If you would like to participate in an Interdisciplinary Capstone (IDC) project, please contact Robin Ott at rso@vt.edu.
Capstone philosophy: While all engineering programs include a capstone or major design experience, the Interdisciplinary Capstone (IDC) class at Virginia Tech takes students beyond department boundaries to tackle real-world projects that span disciplines. In modeling industry practice, IDC brings together students from six disciplines: computer science, computer engineering, electrical engineering, industrial and systems engineering, materials science and engineering, and mechanical engineering. The course includes both industry-sponsored projects and national client competitions. To help prepare students for professional practice, IDC uses a performance-based approach to assessment, holistically evaluating overall performance against key categories such as collaboration, communication, design process, project management, and technical proficiency and using terms such as Exceeds Expectations, Meets Expectations, and Below Expectations rather than letter grades. Teams and individuals are expected to produce deliverables aligned with common industry outputs (e.g., weekly project updates and client meetings, meeting minutes, formal design reports). Importantly, as an educational environment, IDC also emphasizes lifelong learning; students are expected to set, plan for, and achieve technical, professional, and interdisciplinary learning goals through the project.