BS in Computer Science Curriculum

Courses

Units

Freshman Year

1st Quarter

Computer Science 1 – Freshman Computer Science Seminar2

1

Computer Science 31 – Introduction to Computer Science I2

4

English Composition 3 – English Composition, Rhetoric, and Language

5

Mathematics 31A – Differential and Integral Calculus1

4

2nd Quarter

Computer Science 32 – Introduction to Computer Science II2

4

Mathematics 31B – Integration and Infinite Series1

4

Physics 1A – Mechanics1

5

3rd Quarter

Computer Science 33 – Introduction to Computer Organization2

5

Mathematics 32A – Calculus of Several Variables1

4

Physics 1B – Oscillations, Waves, Electric and Magnetic Fields1

5

Sophomore Year

1st Quarter

Computer Science 35L – Software Construction Laboratory2

4

Computer Science M51A or Electrical and Computer Engineering M16 – Logic Design of Digital Systems2

4

Mathematics 32B – Calculus of Several Variables1

4

UCLA Samueli Ethics Course

4

2nd Quarter

Mathematics 33A – Linear Algebra and Applications1

4

Mathematics 61 – Introduction to Discrete Structures1

4

Physics 1C – Electrodynamics, Optics, and Special Relativity1

5

Physics 4AL (Mechanics Laboratory) or 4BL (Electricity and Magnetism Laboratory)1

2

3rd Quarter

Computer Science 111 – Operating Systems Principles2

5

Computer Science M152A or Electrical and Computer Engineering M116L – Introductory Digital Design Laboratory2

2

Mathematics 33B – Differential Equations1

4

UCLA Samueli GE Elective3

5

Junior Year

1st Quarter

Computer Science 118 – Computer Network Fundamentals2

4

Computer Science 180 – Introduction to Algorithms and Complexity2

4

Science and Technology Elective2

4

UCLA Samueli GE Elective3

4

2nd Quarter

Computer Science 131 – Programming Languages2

4

Computer Science M151B or Electrical and Computer Engineering M116C – Computer Systems Architecture2

4

Probability Elective 1, 4

4

UCLA Samueli GE Elective3

5

3rd Quarter

Computer Science 181 – Introduction to Formal Languages and Automata Theory2

4

Computer Science Elective2,4

4

Technical Breadth Course3

4

UCLA Samueli GE Elective3

5

Senior Year

1st Quarter

Computer Science 130 (Software Engineering) or 152B (Digital Design Project Laboratory)2

4

Computer Science Elective2,4

4

Science and Technology Elective2

4

UCLA Samueli GE Elective3

5

2nd Quarter

Computer Science Electives (2)2,4

8

Technical Breadth Course3

4

3rd Quarter

Computer Science Elective2,4

4

Science and Technology Elective2

4

Technical Breadth Course3

4

Additional coursework to meet 180-unit requirement5

1

TOTAL

180

  1. Counts as Mathematics and Basic Sciences for ABET, total units Mathematics and Basic Sciences = 49.
  2. Counts as Engineering Concepts for ABET, total units Engineering Concepts = 84.
  3. Students should contact the Office of Academic and Student Affairs for approved lists in the categories of technical breadth and GE requirements; details on page 22.
  4. See the list of electives on page 65.
  5. Any excess or available units not already applied to another degree requirement will satisfy this unit.