BS in Computer Science Curriculum

Courses

Units

Freshman Year

1st Quarter

Computer Science 1 — Freshman Computer Science Seminar 2

1

Computer Science 31 — Introduction to Computer Science I 2

4

English Composition 3 — English Composition, Rhetoric, and Language

5

Mathematics 31A — Differential and Integral Calculus 1

4

2nd Quarter

Computer Science 32 — Introduction to Computer Science II 2

4

Mathematics 31B — Integration and Infinite Series 1

4

Physics 1A — Mechanics 1

5

3rd Quarter

Computer Science 33 — Introduction to Computer Organization 2

5

Mathematics 32A — Calculus of Several Variables 1

4

Physics 1B — Oscillations, Waves, Electric and Magnetic Fields 1

5

Sophomore Year

1st Quarter

Computer Science 35L — Software Construction Laboratory 2

4

Computer Science M51A or Electrical and Computer Engineering M16 — Logic Design of Digital Systems 2

4

Mathematics 32B — Calculus of Several Variables 1

4

UCLA Samueli Ethics Course 6

4

2nd Quarter

Mathematics 33A — Linear Algebra and Applications 1

4

Mathematics 61 — Introduction to Discrete Structures 1

4

Physics 1C — Electrodynamics, Optics, and Special Relativity 1

5

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

2

3rd Quarter

Computer Science 111 — Operating Systems Principles 2

5

Computer Science M152A or Electrical and Computer Engineering M116L — Introductory Digital Design Laboratory 2

2

Mathematics 33B — Differential Equations 1

4

UCLA Samueli GE Elective 3

5

Junior Year

1st Quarter

Computer Science 118 — Computer Network Fundamentals 2

4

Computer Science 180 — Introduction to Algorithms and Complexity 2

4

Science and Technology Elective 2

4

UCLA Samueli GE Elective 3

4

2nd Quarter

Computer Science 131 — Programming Languages 2

4

Computer Science M151B or Electrical and Computer Engineering M116C — Computer Systems Architecture 2

4

Probability Elective 1,4

4

UCLA Samueli GE Elective 3

5

3rd Quarter

Computer Science 181 — Introduction to Formal Languages and Automata Theory 2

4

Computer Science Elective 2,4

4

Technical Breadth Course 3

4

UCLA Samueli GE Elective 3

5

Senior Year

1st Quarter

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

4

Computer Science Elective 2,4

4

Science and Technology Elective 2

4

UCLA Samueli GE Elective 3

5

2nd Quarter

Computer Science Electives (2) 2,4

8

Technical Breadth Course 3

4

3rd Quarter

Computer Science Elective 2,4

4

Science and Technology Elective 2

4

Technical Breadth Course 3

4

Additional coursework to meet 180-unit requirement 5

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 = 85.
  3. Students should contact the Office of Academic and Student Affairs for approved lists in the categories of technical breadth and GE.
  4. See Computer Science Electives for the range of courses that apply to this requirement.
  5. Any excess or available units not already applied to another degree requirement will satisfy this unit.
  6. When selecting an ethics course, review the Engineering Writing requirement. If the requirement will not be satisfied another way, select an ethics course that also satisfies the writing requirement.