B.S. Degree Program
Bachelor of Science (B.S.) Degree Requirements
The B.S. in Computer Science requires a total of 70 credit hours within the major in addition to those required by the University and College. They include 36 credits of core CS courses, 21 credits of elective upper-division CS courses, and 13 credits of mathematics courses. A Capstone Project course is one of the core upper division courses and is typically taken during the final year of study. Note that students must earn a C or better in CS 13001 and CS 23001. The course requirements are given below. If you were admitted under an older catalog your requirements may be different, please contact a CS or a College adviser if you have questions about your catalog year.
Core CS Courses (40 credits):
- CS 13001 CS I: Procedural Programming (4)
- CS 13011 CS IA: Procedural Programming (2)
- CS 13012 CS 1B: Object Oriented Programming (2)
- CS 23022 Discrete Structures for Computer Science (3)
- CS 23001 CS II: Data Structures and Abstraction (4)
- CS 35101 Computer Architecture (3)
- CS 33211 Operating Systems (3)
- CS 35201 Computer Communication Networks (3)
- CS 33901 Software Engineering (3)
- CS 33007 Database Design (3)
- CS 33101 Programming Languages (3)
- CS 44001 CS III Programming Patterns (4)
- CS 46101 Design and Analysis of Algorithms (3)
- CS 49901 Capstone (4)
- Students in Game Design and Programming Concentration can take CS 48102 (Game Design Practicum) instead.
Mathematics Courses (13 credits):
- MATH 12002 Analytic Geometry and Calculus I (5)
- MATH 12003 Analytic Geometry and Calculus II (5)
- MATH XXXXX Please see Note 1 below*
3/40000 level Elective Courses in Computer Science (21 credits):
- All non-required CS 3/ 40000 level courses are approved, including CS 33192 Internship, CS 39995 Special Topics, CS 49996 Individual Study and CS 49995 Special Topics. Each Special Topics course with a different title can be counted as an elective.
- With the Computer Science Undergraduate Advisor's prior permission, selected courses from outside the department may be counted. These courses must be computer science related and integrate into the student's program of study.
The following non-CS courses are pre-approved as upper-division electives:
- PHY 12411 Introduction to Computer Hardware
- MATH 22005 Analytic Geometry and Calculus III
- MATH 40011 Introduction to Probability Theory and Applications
- CS 31045 Formal Logic - Taught by the Philosophy department