Computer
Science
BA Degree
|
Differences between CS Degrees
The Computer Science department offers two Computer Science degrees,
the Interdisciplinary Major in Computer Science degree offered through
the College of Arts & Sciences (BACS), and the Bachelor of Science
in Computer Science degree offered through the School of Engineering and
Applied Sciences. The main differences between the two degrees are:
- The BACS degree is in the College of Arts & Sciences; the BSCS is
in the School of Engineering and Applied Science. This means the
degrees have different general requirements. The general requirements
for the College of Arts & Sciences are the competency requirements
(see the
Undergraduate Record for details). They include two writing
requirements, a foreign language, and area requirements in natural
science and mathematics, social sciences, humanities, and historical
studies. The general requirements for the School of Engineering and
Applied Sciences include mathematics, chemistry, physics, technical
electives, humanities electives, and science, technology, and society
courses (see the
curriculum for details). To enroll in the BACS major, students must
be enrolled in the College of Arts & Sciences. To enroll in the
BSCS major, students must be enrolled in the School of Engineering and
Applied Science.
- The BACS degree starts with the CS150-CS205 gateway sequence; the
BSCS degree starts with the CS101-CS201 sequence. The CS150-CS205
sequence is a more conceptual introduction to computer science, that
emphasizes the key intellectual ideas first in CS150, and includes
connections between computer science and the arts and sciences. The
CS101-CS201 sequence emphasizes first learning an industrial programming
language, and is required for all students in the Engineering school.
After completing the first two courses, students are prepared for the
same courses, and both BACS and BSCS take the same course courses
(CS202, CS216, CS333, and CS432).
- The BSCS degree includes additional required CS courses that are
not required for the BACS degree. The additional courses required for
the BSCS degree are CS302, CS340, CS414, and the Computer Architecture
elective. (The BACS degree includes four CS elective courses. For many
students, these electives include several of the required BSCS courses.)
- The BACS degree includes four integration electives, which are not
part of the BSCS degree. The integration electives are courses in other
departments that have strong connections with computing. See http://www.cs.virginia.edu/ba/integration.html
for a list of integration electives.
- The BSCS degree (like all Engineering School degrees) requires a
fourth-year thesis. This involves taking STS 401 (in which students
write a thesis proposal) and STS 402 (in which students complete a
thesis report), and working with a technical advisor on a thesis
project. BACS students are not required to complete a thesis, but may
enter the distinguished majors program. To complete a distinguished
major, a BACS student must complete a fourth year thesis project that is
approved by two readers, one from Computer Science and one from an Arts
& Sciences department.
|