CS Undergraduate Curriculum Transition Plan
New Advising Page
The information on this page has been updated to contain just the content regarding when courses will stop and begin being offered. For information about the BA and BS degree programs for both the Old and New Curriculum, please go to http://advising.uvacs.org.
Transition Plan
After years of careful analysis and design, including piloting new courses and getting approvals from the school and university, the CS department is changing its curriculum. The largest component of this change involves moving topics between courses to reduce duplication and improve flow among the early courses in the both the BACS and BSCS programs, creating the "new foundation" courses. Because of that change, it is generally not possible to mix-and-match courses from the old and new curriculum.
The information on this page is intended to answer general questions about the transition that may be asked by students, faculty, staff, and future CS students. For questions beyond the information found here, please contact Prof. Mark Sherriff.
Undergraduate Record
The University of Virginia Undergraduate Record is the final authority on all program degree requirements. The information here is meant to supplement the official undergraduate record. In any instance where there is disagreement between the information found here and in the undergraduate record, the record's information will be followed.
- AY 20-21 Undergraduate Record (BSCS and Minor) (For those on the old curriculum / declared before Fall 2021)
- AY 20-21 Undergraduate Record (BACS) (For those on the old curriculum / declared before Fall 2021)
- AY 21-22 Undergradaute Record (BSCS and Minor) (For those on the new curriculum / declared Fall 2021 and later)
Information for BSCS / BACS Majors who have taken CS 2110
- Students who currently have credit for CS 2110 will need to finish their degree on the old curriculum. Because material has been moved between various courses, it is generally not possible to mix-and-match courses from the old curriculum and the new curriculum. Thus, the majority of the new changes only affect current BSCS and BACS students who were a part of the pilot program for the new courses (and thus did not take CS 2110). The one exception is that some new foundation courses will count toward either the old or new degree requirements, as shown in the table below. SIS is encoded to allow you to take either course and it will count properly. Depending on the semester you need to take a given course, you may need to sign up for the new equivalent version.
Old Course | Equivalent New Foundation Course | Differences |
---|---|---|
CS 2102 Discrete Mathematics | CS 2120 Discrete Mathematics and Theory 1 | 2120 is more fully specified, including coverage of proof writing skills; these were optional in 2102 and present in only some sections |
CS 3102 Theory of Computation | CS 3120 Discrete Mathematics and Theory 2 | 3120 has an additional prerequisite (CS 3100 or CS 4102) and includes more coverage of the mathematical characteristics of algorithms and data structures |
CS 4102 Algorithms | CS 3100 Data Structures and Algorithms 2 | 4102 focuses more on proofs of algorithm correctness, and 3100 covers a wider array of algorithms including basic machine learning algorithms |
- Students should pay careful attention to the charts below to ensure they complete the needed courses before they are phased out of the curriculum. Any student on a normal progression path should have no trouble completing the courses before this occurs.
Anticipated Schedule of Changes
The exact change schedule will vary based on the speed at which the new BACS program is approved (the following assumes it will be approved prior to Spring 2022) and the facility with which we can transition students who took old course prereqs into new or changed courses.
Entries show "--" if the course is not planned on being offered; a new course number if a different course will satisfy this requirement; and "Changed" if the course will remain, but its contents or prerequisites change.
New Foundation Courses
Course | Fall 2021 | Spring 2022 | Fall 2022 | Spring 2023 | Fall 2023 | Spring 2024 and beyond |
---|---|---|---|---|---|---|
CS 2100 | -- | Yes | Yes | Yes | Yes | Yes |
CS 2120 | Yes | Yes | Yes | Yes | Yes | Yes |
CS 2130 | -- | Yes | Yes | Yes | Yes | Yes |
CS 3100 | -- | -- | Yes | Yes | Yes | Yes |
CS 3120 | -- | -- | -- | Yes | Yes | Yes |
CS 3130 | -- | -- | Yes | Yes | Yes | Yes |
CS 3140 | -- | -- | Yes | Yes | Yes | Yes |
CS 3240 | Yes | Yes | Yes | Yes | Changed* | Changed* |
CS 4457 | Yes | Yes | Yes | Yes | Yes | Changed* |
Old Course Sequence
Course | Fall 2021 | Spring 2022 | Fall 2022 | Spring 2023 | Fall 2023 | Spring 2024 and beyond |
---|---|---|---|---|---|---|
CS 2102 | CS 2120 | CS 2120 | CS 2120 | CS 2120 | CS 2120 | CS 2120 |
CS 2110 | Yes | Non-Majors# | -- | -- | -- | -- |
CS 2150 | Yes | Yes | Non-Majors# | -- | -- | -- |
CS 2330 | ECE 2330 | ECE 2330 | ECE 2330 | ECE 2330 | ECE 2330 | ECE 2330 |
CS 3102 | Yes | Yes | Yes | CS 3120^ | CS 3120^ | CS 3120^ |
CS 3240 | Yes | Yes | Yes | Yes | Changed* | Changed* |
CS 3330 | Yes | Yes | Yes | Yes | Changed* | Changed* |
CS 4102 | Yes | Yes | CS 3100 | CS 3100 | CS 3100 | CS 3100 |
CS 4414 | Yes | Yes | Yes | Yes | Yes | Changed* |
CS 4457 | Yes | Yes | Yes | Yes | Yes | Changed* |
* Adds a prereq and changes content.
^ Has extra prereqs compared to the course it replaces.
# At this point, these courses are being offered mainly for students in other majors or for legacy reasons need to remain on the old course sequence. Most CS majors should plan to move to the new foundation course sequence before this point.
Common Questions
-
Which courses should I take?
Whichever are offered when you are ready for your second CS course, with a preference for the new courses if both are being offered. In practice, this generally means that if you take CS 2100, you use the new courses; if you take CS 2110, you use the old courses.
-
I'm in a degree program not listed here. How will this affect me?
We haven't had official word from other degree programs yet. When we do, we'll add it here.
-
I took some of the old courses, then took a year off and now the rest of the old courses are not offered. What do I do?
You'll need an individual plan to help your situation. Please contact your academic advisor in CS and the current curriculum change coordinator.
-
I took some of the old courses and some of the new courses before I saw this. What do I do?
Generally, you'll need to pick one or the other to complete the degree. Please contact your academic advisor in CS and the current curriculum change coordinator to determine which courses to complete.