Skip to main content

Senior Comprehensive 2021

Required Comprehensive Experience for CS Majors, Class of 2021

Senior Comprehensive

The graduating class of 2021 must satisfy the capstone requirement of the CS major by satisfactorily completing CPSC 099 (Senior Comprehensive). As part of CPSC 099, students will create a video presentation based on a project from a course taken in the Computer Science Department at Swarthmore or research conducted with a Swarthmore Computer Science faculty member. Students will submit their video for evaluation.  There will be no meeting time to deliver the presentation due to the pandemic; all submissions and grading will be done asynchronously.

Requirements and Logistics

All of the work on the presentation must be your own, even if you are designing a presentation based on a project you worked on with others.


  1. Immediately: Ensure you are registered for CPSC 099 in the J-term (2021).  This should have been done automatically for you.  If this does not show up on your schedule, email Kathy Reinersmann immediately to ensure that you are enrolled and receiving updates.     
  2. December 7, 2020: Fill out the Topic Proposal Form with your name, presentation title, the CS course on which your project is based, and any special circumstances. We need this information to ensure that your proposal meets the requirements and to ensure that you are making progress, especially if you need to discuss problems with finding a topic.
  3. January 18, 2021: Design, record, and submit your video presentation following the instructions below.

These are hard deadlines, but early submission is encouraged.  If you have a verifiable conflict that prevents meeting these deadlines, you must contact Prof. Soni as soon as possible.

Early submission Deadline

If you are a December finisher, you must submit your proposal by November 1 and video by November 30.  You will still receive your grade in the J-term, but we will evaluate your submission (and verify your completion of the requirement) before end of the Fall 2020 semester.

Topic Selection

The topic you choose to present on must be based on one of the following:

  1. A project you did in an upper-level class taught by the Computer Science department at Swarthmore that counts towards the major. The class must be at least one credit and have CPSC 035 as a prerequisite.
  2. A one-credit directed reading done with a Swarthmore CS professor that counts towards the major.
  3. A research project you did with a Swarthmore CS professor during the summer.  Research conducted during the semester is eligible, but first seek approval from your research advisor.

We are also willing to accept one of the following.  But it should be noted that since these are outside the scope of our courses, it is the responsibility of students to ensure that their project is germane to the field of computer science and has a similar amount of depth as the projects listed above:

  1. A project you did in a project-based class cross-listed by the Computer Science department at Swarthmore that counts towards the Computer Science major. As they have been recently taught, CPSC 072: Computer Vision and CPSC 082: Mobile Robotics fit this requirement.
  2. A project from a course taken at another institution.  The course must have earned OCS credit and must have been approved as part of your major requirements for upper-level courses (i.e., an elective course or Group course).
  3. A summer research project conducted in a computer science department at another institution.  Please submit a description of your project and a link to your advisor's page with your topic selection form to help us in our approval process.

We strongly encourage students to present their work on an open-ended project from a project-based course. As currently taught, the following CS courses are project-based courses:

  • CPSC 040: Graphics
  • CPSC 063: Artificial Intelligence
  • CPSC 065: Natural Language Processing
  • CPSC 066: Machine Learning
  • CPSC 068: Bioinformatics
  • CPSC 071: Software Engineering
  • CPSC 081: Adaptive Robotics
  • CPSC 087: Parallel and Distributed Computing
  • CPSC 089: Cloud Systems and Datacenter Networks

Students may choose to present on a project or assignment that was defined by a professor from another upper-level Swarthmore CS course. If you do so, focus on the larger lab projects that span broader course themes.  Note that it may take more effort to put together a satisfactory presentation for such a project. In such cases, students will want to add some general context describing how the project fits into main themes and topics of the course.  Examples include:

  • CPSC 043: Networks (Jukebox lab)
  • CPSC 045: Operating Systems (File System lab)
  • CPSC 075: Compilers

Video Recording and Submission

There are many options for recording a video of your presentation.  The focus should be on your visual aides (e.g., your presentation slides) and capturing audio of you speaking.  We aren’t expecting a professional production, but we do expect that we can read and understand your slides and that your audio is clear.  One option that we recommend is to use Zoom, a tool you all are familiar with.  There are detailed instructions from Zoom, but here is a brief summary of the steps.

  1. Launch Zoom on your computer.
  2. Open the application that contains your slides (e.g., Powerpoint, Google Slides, etc).
  3. Share your screen in Zoom, choosing the application that contains your slides (see this help page for more details and advanced features).
  4. Start recording in Zoom (choose to record on your computer).
  5. Give your presentation.
  6. End recording in Zoom.
  7. End meeting (this will save the recording as an mp4 file). This will be stored in Documents/Zoom in a subfolder with the date that you made the recording
  8. Watch the video, and if you like it send it in, otherwise repeat.  Use basic editing tools to trim the beginning and ending of the video.

We expect you will need to record a few times to get it right; it is recommended you record while giving your practice talks.
There are other approaches that can also work:

Zoom and Panopto are supported by the college.  The other options are completely valid, but we have not tested them all out nor will we be able to troubleshoot them.

Once you are done, you will need to upload your video hereOnly one submission is permitted per student and the length of the video must be between 6 and 8 minutes.


To satisfy the requirements for the CS major, seniors must earn a satisfactory grade in CPSC 099. The grades will be assigned as S (satisfactory) or NC (unsatisfactory) only.  To earn an S grade, students are responsible for one "deliverable": a 6-8 minute video presentation on your research project using visual aides (i.e., slides) and an oral explanation that passes the evaluation criteria below.

Presentations will be evaluated based on both the visual aides and the oral presentation.  We will evaluate your work on the following criteria:

Content evaluation

Your visual aids should contain each of the following:

  1. A title slide with project title and author of your work. The author should be you. You should add a separate acknowledgement to note any advisors and collaborators (e.g., the instructor, course, and lab partner(s) for a course project).
  2. Introduction to your project, including motivation, problem statement, and a clear statement of the breadth and depth of your investigation. It should clearly state your objectives and the purpose of the project.
  3. A background section or context for your project. It should frame your project in relation to the broader area and include references to related work, when appropriate. Include important definitions or history; use this section to tell the viewer why this is an interesting area of study to the field.
  4. A description of your methods (what you did). That is, your model, algorithm, implementation, interesting solutions, and/or experiments. You should include any relevant figures to help explain complex content.
  5. A summary of your results and the conclusions you've drawn from the project. Results should be presented in the appropriate format (e.g., graphs or tables quantitative data).
  6. Optionally, include future or other directions for this work as part of the conclusion.  This is particularly helpful if the project did not arrive at a satisfying conclusion.

Design evaluation

The design of your presentation should:

  • Create slides to support your presentation.  For this short presentation, you will likely want no more than 10 slides.
  • Slides should use text sparingly, and focus on images, graphs, and figures to illustrate the key points.
  • Present the project in a top-down manner. Clearly state the motivation and goal for the project.
  • Describe key details about the project, and give concrete examples to explain what you did.
  • Analyze the results both quantitatively and qualitatively. Highlight whether you achieved the goal, and if not how you would modify your approach.
  • You should practice your presentation.  There should be a clear narrative flow with smooth transitions between slides. Speak slowly and clearly.

Tips and Guidance

Keep the following points in mind when preparing your presentation:

  • Prepare enough content so that you speak for approximately six-eight minutes Conversely, you will need to think about how to be concise - you don’t have to present every detail of the project, just the major ideas.
  • Clearly and concisely explain each of the main sections described above.
  • Assume that your audience has a background in CS but not necessarily the specific topic area you're presenting (e.g., they have taken CS31/35).
  • Practice.  Already know what you're planning to say (even though you haven't memorized it): don't just "wing it"!
  • Conversely, don’t read from a script.  Your delivery should be as natural as possible.
  • Define your acronyms and avoid excessive jargon.  Remember, the target audience is not the professor that taught the course; it is a general computer science audience.
  • We are not expecting a professional production.  Do not spend hours trying to edit or create graphics that are not relevant to the work you are presenting. We envision you delivering a presentation as you would live in the classroom.  The goal of this presentation is not to show off your video production skills, but rather your ability to effectively deliver a presentation on work that you have done.

Links to Resources and Tips

Prof. Newhall’s presentation tips


Q: I am a special major, but not a regular CS major.  Do I need to take the senior comprehensive?
Any special major where the primary department is Computer Science must complete the Computer Science Senior Comprehensive (CPSC 099).  If the special major requires a thesis as part of the course play, this can substitute for the comprehensive requirement.  

Q: What if the project I'd like to choose was group work that I did with partners?
A: No problem! You will still create your own presentation. You and your group member(s) can choose the same topic but you must work independently for the comprehensive requirement. Ideally, you'd focus on different aspects of the project.

Q: How much time should I expect to put into this project?
A: In the past, we anticipated that you would spend approximately 10 hours throughout the semester.  Given that you do not need to attend a poster session or spend time printing your poster, it should be considerably less this year.

Q: Why can't I use work I did off campus / at an REU / in another department?
A: We want to make sure 1) that you choose a topic for which at least one CS faculty member is an expert and 2) that the work you're presenting is consistent with the expectations of your fellow seniors. You may petition the chair of the department to request permission for an exemption.

Q: Can I use work done with a visiting professor who is no longer at Swarthmore?
A: Yes, as long as the project meets the requirements listed above, it doesn't matter if the professor is no longer at the College.

Q. I plan to take other J-term courses, will CPSC 099 interfere with those plans?
A: Since CPSC 099 carries 0 credits, it will not add to your credit burden and thus should not interfere with your plans to enroll in other courses.  If you are concerned about the additional workload during the J-term, we advise that you work on your presentation before the J-term begins (e.g., over Thanksgiving break or between the end of Fall and beginning of the J-term).

Q. I am unable to register for CPSC 099, what should I do?
A: Students cannot add CPSC 099 themselves; you need to email the Department AA (Kathy Reinersmann) to be added.  If she is unable to add you, it is probably because of one of two reasons: you are overenrolled for the J-term (the Registrar is locking changes until you get below the threshold) or you are a Leave of Absence (you cannot register for courses until your plan to return form has been submitted).