**B. A. in Computer Science - College of Arts and Science (prior to Class of 2022)**

*******Diagram of Courses and Prerequisites **

This program of 120 credit hours is intended for students who desire a strong liberal arts program with a concentration in computer science. The program contains the fundamentals of computer science, including discrete mathematics, structured programming, data structures, programming languages, computer organization, and operating systems. See the distribution requirements of the College of Arts & Science

**REQUIREMENTS FOR BACHELOR OF ARTS MAJOR IN COMPUTER SCIENCE**

Total required credit hours: 120

**Required Computer Science courses (35 credit hours):**

**CSE 1** Breadth of Computing (2)

**CSE 2 **Fundamentals of Programming (2)

**CSE 17** Programming and Data Structures (3)

**CSE 109** Systems Software (4)

**CSE 202** Computer Organization and Architecture (3)

**CSE 216** Software Engineering (3)

**CSE 261** Discrete Structures (3)****** OR MATH 243 Algebra (3)

**CSE 262** Programming Languages (3)

**CSE 303** Operating System Design (3)

**CSE 318** Automata & Formal Grammars (3)

**CSE 340** Design and Analysis of Algorithms (3)

One CSE Elective (3 credits), not including CSE 42, CSE 130 or CSE 252

**Required Math courses (11 credit hours):**

**MATH 21 ** Calculus I (4)

**MATH 22 **Calculus II (4)

**MATH 43** Survey of Linear Algebra (3)

The student has some flexibility in choosing the sequence of courses, because many of the courses are offered every semester. For a list of all CSE courses and when they are offered, and for a suggested sequence of courses to satisfy the major requirements, see When courses are offered.

**** Effective Spring 2018, CSE 198 Foundations of Discrete Structures and Algorithms replaces CSE 261****