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 Elective1, 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; details on page 22.
  4. See the list of electives on page 66.
  5. Any excess or available units not already applied to another degree requirement will satisfy this unit.