Required Core Courses
- CSC 220: Computer Science I: Computational Problem Solving
- CSC 230: Computer Science II: Data Structures
Required Advanced Core Courses (six course units)
- CSC 325: Computer Architecture
- CSC 335: Analysis of Algorithms
- CSC 345: Operating Systems
- CSC 415: Software Engineering
- CSC 435: Programming Languages or CSC 445: Theory of Computation
- CSC 399: Internship or CSC 498: Mentored Research I in Computer Science
Computer Science Options (three course units)
Select three courses from the following list.
(Students who are approved to take CSC 250 to satisfy CSC 220 and 230, must select four courses.)
Students may take additional options courses for free elective credit (exception: placement out of WRI 102 or foreign language must be replaced by liberal learning courses, not CSC courses).
- CSC 307: Data Mining and Predictive Modeling
- CSC 315: Database Systems
- CSC 320: Information Retrieval (cross listed as IMM 320)
- CSC 350: Computer Graphics
- CSC 360: Computer Networking
- CSC 380: Artificial Intelligence
- CSC 425: Compilers and Interpreters
- CSC 435: Programming Languages
- CSC 445: Theory of Computation
- CSC 450: Computer and Network Security
- CSC 470: Topics in Computer Science
- CSC 471: Genomics and Bioinformatics (same as BIO 470 when the topic is Genomics and Bioinfomatics)
Students may opt to take an additional capstone course from the following list to count as a CS Option. Also see the Suggested Sequence.
- CSC 399: Internship in Computer Science
- CSC 498: Mentored Research I in Computer Science
- CSC 499: Mentored Research II in Computer Science
A student may take up to three capstone courses, selected with advisement and departmental approval. The additional capstone course(s) may apply toward the CS Options, with departmental approval.
CSC 391: Independent Study in Computer Science may apply toward the CS Options with departmental approval.
Required Mathematics Courses (four course units)
- MAT 127: Calculus A
- MAT 128: Calculus B or MAT 205: Linear Algebra
- STA 215: Statistical Inference
- CSC 270: Discrete Structures
Computer Science Natural Science and Mathematics Options (four course units)
Three major-level laboratory sciences and one additional math or science course (with advisement). See Math and Science Correlate Requirements for more information on courses that meet the math and science requirements. Consult the department for additional details.
World Language Requirements (two or three course units)
Students who choose to take a language different from the one studied in high school or another institution are required to take two courses of that language in sequence.
Students who choose to continue with a language previously taken in high school or at another institution are required to take three courses of that language in sequence. Students must take the placement test for the language. Performance on the test could place the student out of one, two or three courses, thus the language requirement may be 3, 2, 1 or 0 courses.
Any course reduction in world language requirements results in an equivalent number of free elective courses. These elective courses must be selected from the areas of art, humanities, social science or history.
Consult the department for details.
Note: Arabic 151 and 152: Chinese 151 and 152; Japanese 151 and 152; Persian 151 and 152; and Russian 151 and 152 are intensive courses and carry two course units of credit each. Students should take this into account when planning a normal four-course semester.