B.A. in Computer Science
The B.A. degree in computer science requires the successful completion of 18 computer science and related courses in addition to the liberal arts core. This degree is intended to more easily accommodate the student who has a strong interest in computing but wishes to major or minor in another area. Unlike the B.S. degree, the B.A. degree has an optional track that can be chosen. The track affects the computer science electives a student takes. The requirements include:
- 7 required computer science courses:
- Introductory programming sequence (CS151, CS212, CS312)
- Computer Engineering (CS371)
- Systems course (CS366, CS266)
- Software Engineering (CS482)
- Senior Project (CS496)
- 5 computer science related electives:
- At least three must be CS courses and up to two may be CS-related courses, depending on the track chosen.
- CS-related electives are courses at the 300-level or higher that are substantially different from those offered by the Computer Science Department and include a sufficiently advanced computing component. Students must submit written requests for approval to the track coordinator (see track requirements below).
- 4 mathematical sciences courses:
- Calculus I (MA251)
- Discrete Math (CS295)
- Choose 2 of the following:
- Calculus II (MA252)
- Linear Algebra (MA301)
- Statistics (ST210)
- 2 majors-level* science courses:
- 1 majors-level* science course with a lab
- 1 additional majors-level* science course (with or without a lab)
Three specialty tracks are offered: software engineering, interdisciplinary study, and general computer science. Students are not required to choose a track. To complete a track, students choose their CS and CS-related electives as follows:
- Software Engineering: Programming languages, web programming, software testing, database management systems, and one elective approved by the track coordinator.
- Interdisciplinary Study: Three CS courses at the 400-level or above and two CS-related electives in a single application area approved by the track coordinator.
- General: Four CS electives at the 400-level or above and one CS-related elective approved by the track coordinator, or five CS electives at the 400-level or above.
* The science electives must be majors-level courses emphasizing quantitative and/or experimental methods in a physical or biological science and not a primarily computational, mathematical, or engineering design course. BL 150/BL 151, BL 152/BL 153, CH 101/CH 105, CH 102/CH 106, PH 201/PH 291, and PH 202/PH 292 meet this requirement. As all lab science courses require a lab, you will need permission from the department chair of that course's department to enroll without the lab if desired for your second science course. EG, MA, ST, and other courses must be approved by the Computer Science Department.