Skip to Main Content

SEAS Thesis Portfolio Guide

A complete overview to the thesis portfolio from the history to submission.

Portfolio Formatting

Note - the format of the CS Capstone is determined by the CS advisors. As long as your advisor is happy with the contents and format of the document, you're fine to submit.

For CS 4991, a title page is not required for the Capstone pdf.

Capstone Options

From the CS4991 Spring 2024 Syllabus:

The Capstone is a mandatory component of the Thesis Portfolio required by the Undergraduate Curriculum Committee for all 4th-year BSCS students. CS4991 is part of the CS 4xxx elective option in the 4th-year CS thesis track. Consult a technical advisor for clarification. Students should take this course if they are 4th-year, and not taking CS4980 or a CS 3xxx/4xxx independent study. The course requires STS 4500 as a pre- or co-requisite.

Prof. Briana Morrison explains the connections between the Capstone Technical Report, the Prospectus and STS paper:

The CS4991 Capstone is the ―Technical Report‖; the paper you write in STS 4600 is the ―STS paper.‖ The topic of the STS 4600 paper may relate closely, loosely or not at all to the Capstone technical report, but is meant to focus on the interplay between technology and society. The Prospectus is the abstract from your Technical Report plus the ―ethics side,‖ which answers the question: How does this affect society? Students may choose how closely (or not) they wish to connect these deliverables.


The CS Capstone is comprised of two parts:

  1. Three credits of student work, either through independent research or a CS elective
  2. Writing the technical report as a part of the SEAS Senior Thesis

There are two primary options for completing these two steps:

Option 1) Take 3 credits of CS 4980 (or CS 4993) and write the technical report at the end of this course. Whoever you take CS 4980 with will sign off on the paper as being your technical report component for your senior thesis portfolio that you do with STS during 4500 and 4600. Reach out to faculty to see what projects they may have or check out for ideas!

Option 2) Take a 6th CS elective (CS 3000 or higher) -AND- take the 0-credit CS 4991 course. The 6th CS elective will cover your required 3 credits needed for the capstone slot in your SIS Academic Requirements report. CS 4991 is the course in which we track and evaluate a your technical report that you come up with on your own. This course is pass/fail and you need a pass to graduate.

There are three options for the Capstone Topic in CS 4991:


Describe an experiential learning event that 1) was an element or outgrowth of your UVA program— internship, development project, non-profit volunteer effort, etc.; and 2) offered value to a specific organization, group or community-at-large. Option 1 reports should discuss the internship or other project, including significance, techniques/ tools used, skills gained, results or potential, and future work needed. 


Propose an innovative CS-related solution to a problem or need, utilizing a unique approach or one that enhances current technology applications. Option 2 report topics might: 1) explain how a given problem can be solved or a given need met utilizing a new, different or enhanced CS-related approach; 2) provide a meta-study review on a CSrelated topic; or 3) develop recommendations for enhancing the value of the UVA CS program or given courses through redesign or enhancement.


Other topics or approaches may be utilized with instructor approval. Creative, out-of-the- box thinking is welcome and encouraged.

Learn more on the CS Capstone page for SEAS BSCS Advising page. 

Option 1 - CS 4980

Q: I don’t want to do a 6th elective and would prefer research or an independent project.
A: Great! You can go to to see a list of potential projects or ideas. Even if the idea was posted a while ago, if you think it sounds cool, reach out to the professor! They may still be working on that project or have other ideas based on your interests! It never hurts to reach out to our faculty to talk about their research or your project ideas.

Option 2 - CS 4991

Q: How do I come up with my paper topic?
A: Here are two prompts to consider:

  • Describe an already completed computing experiential learning event ― internship, personal project, non-profit volunteer effort ― that offered documented value to a specific organization, community, or group. If appropriate, indicate how the project could be enhanced or redesigned for increased value.
  • Propose a synthesis of ideas from two completed CS courses that connects how topic(s) might be enhanced, extended, refined, or reworked.

Q: Do I have to take CS 4991 in the fall or can I take it in the spring?
A: It doesn’t matter which semester you take it. Prof. Vrugtman will take half of the BSCS students who want to do this option this fall and the other half in the spring. If you want to do it in the fall, it may already be full, but you can see if someone wants to drop or swap.