[Return to Department of Mathematics and Computer Science homepage]
[Return to Computer Science Major page]
Computer Science
Sample Curriculum
Class of 2012

This chart is based on the university and college requirements ("core curriculum") in effect in Fall 2008 for the class of 2012. Some university and college requirements will change beginning with students beginning as freshmen in Fall 2009.
Quarter Freshman Year Sophomore Year Junior Year Senior Year
Fall Math 11 (Calc I)
CSci 10* (Intro CS)
English 1
Rel. Studies (Intro)
Math 21 (Calc IV)
West. Culture I
Soc. Science
Math 51 (Discr. Math)
Math Up. Div. (1)
Foreign Lang. I
Math 100 (5)
Comp. Engin. 177 (Op. Sys)
Math Up. Div. (1)
CSci Elect. (2)
Fine Arts
Free Elective
Winter Math 12 (Calc II)
Physics 31
CSci 60* (Obj. Orient. Prog.)
English 2
Rel. Studies (Interm)**
Math 52 (Abst. Alg.)
Comp. Eng. 20 (Assemb.)
West. Culture II
Comp. Engin. Elect. (3)
Foreign Lang. II
CSci Elective (2)
Free Elective
C.E. or C.S. Elect. (4)
Rel. Studies (Adv)
Free Elective
Free Elective
Spring Math 13 (Calc. III)
Physics 32 & 32L
CSci 61* (Data Str.)
Math 53 (Lin. Alg)
Comp. Eng. 21 (Arch)
World Cultures I
CSci 163* (Algorithms)
World Cultures II
Ethnic/Women's St.
Free Elective
CSci Elective (2)
Free Elective
Free Elective
Free Elective

(Indicated by numbers in parentheses above.)
  1. The two "pure" mathematics electives may be any courses from among the upper division mathematics courses in the Math/CS Department excluding Math 165 and 166. Highly recommended is Math 122 (Prob. & Stats. I); Math 102 (Adv. Calc.) and Math 123 (Prob. & Stats. II) are also suggested.
  2. Of the three computer science electives, one must be chosen from among: CSci 161 (Automata), CSci 166 (Num. Analysis), or CSci 167 (Bool. Alg.). The other two may be any upper division computer science course, not already taken to satisfy a requirement: CSci 161, 162 (Formal Lang), 164 (Comp. Simul.), 165 (Lin. Prog.), 166, 167, 168 (Graphics), 169 (Prog. Langs.), 181 (Appl. Cryptog.), 182 (Digital Steganography), or any of the following three upper division mathematics courses: Math 144 (Part. Diff. Eq.), 176 (Combin.), 177 (Graph Th.).
  3. The Computer Engineering elective must be chosen from courses offered in the Computer Engineering Department with courses number 100 or above.
  4. One additional computer-related elective must be taken from the lists of courses mentioned in note 2 or 3 above.
  5. Math 100 is highly recommended to fulfill the English Composition requirement, but may not be taken to fulfill any mathematics and computer science upper division requirements for students majoring in mathematics or in computer science. Students are free to take any other course approved as fulfilling the 3rd English Writing requirement.
  6. Students are encouraged to choose elective computing courses according to one of the following tracks:
    Foundations: CSci 161, Math 176, Math 177, Comp. Engin. 173 (Logic Prog.)
    Software: CSci 161, 169, Comp. Engin. 174 (Soft. Engin.), Comp. Engin. 176 (Soft. Tools) or 178 (Database)
    Numerical Computation: Math 144, CSci 165, 166, Comp. Engin. 145 (Paral. Prog.)
    Graduate Preparation: CSci 166, Math 176, 177, Comp. Engin. 175 (Compilers)
*Prior to Fall 2007, courses labeled "CSci" had been labeled "Math." **Prior to Fall 2008, Math 22 (Diff. Eq.) was required of CS majors and was usually taken during the Winter Quarter of the sophomore year.

At least 12 upper division courses (60 units) are required for graduation. Thus, if the English Composition course is not an upper division course, at least two of the free electives must be upper division courses.

The information presented on this webpage is not intended as the official statement of graduation requirements. The student is referred to the current University Bulletin.

Last Updated: 9 January 2009