B.S. 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

3

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

2

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 = 83.
  3. Students should contact the Office of Academic and Student Affairs for approved lists in the categories of technical breadth and GE (see page 23 for details).
  4. See page 65 for list of electives.
  5. Any excess or available units not already applied to another degree requirement will satisfy these units.