Skip Navigation

Undergraduate Programs

Bachelor of Science in Computer Science accredited by the Computing Accreditation Commission of ABET, https://www.abet.org, under the General Criteria and the Computer Science and Similarly Named Computing Programs Program Criteria.

Standard Bachelor of Science

The School of Computer Science provides a broad and flexible undergraduate curriculum. In addition to the general university requirements in the humanities and sciences, computer science students take fourteen courses covering the fundamentals of the discipline; nine courses in mathematics, beginning with calculus; physics and two natural science courses; and three electives chosen from computer science courses offered at the senior level.


Coming Spring 2025: Embedded Certificate in Machine Learning and Artificial Intelligence

This certificate is only available to undergraduate computer science majors

Two required CS courses:

  • CS 4013/CS 5013 Artificial Intelligence
  • CS 4033/CS 5033 Machine Learning Fundamentals

One required MATH course to be chosen from the list below:

  • MATH 2934 Differential & Integral Calculus III
  • MATH 2443 Calculus & Analytical Geometry IV

Three elective classes to be chosen from the list below:

  • CS 4083/5083 Responsible and Ethical AI/ML

  • CS 4023/5023 Introduction to Robotics

  • CS 5043 Advanced Machine Learning

  • CS 4713/CS 5713 Computational Learning Theory

  • CS 5073 Artificial Neural Networks Evolution

  • CS 5593 Data Mining

 CS Degree
Sheet

Go to CS Degree sheet (pdf)

 Course Equivalencies

Go to course equivalencies

 Student Outcomes

More on the Outcomes

  Degree Plans & Flowcharts

More about the plans

Accelerated B.S./M.S.

The School of Computer Science offers qualified undergraduate students an accelerated dual degree (BS, MS) program. The program allows students to pursue a graduate degree in conjunction with the undergraduate degree requirements.

Students admitted into this program can use up to four courses (12 credit hours) to satisfy the requirements of both the BS and MS degrees. Students generally apply for the program two or three semesters before completion of the BS degree, and minimal requirements for this program include a 3.5 GPA at the time of application. The best semester to apply is while enrolled in CS 3823/3113.

In addition to a dual degree program in which both BS and MS degrees are in Computer Science, the School of Computer Science in cooperation with the School of Electrical and Computer Engineering offers a dual degree program in which the BS degree is in Computer Engineering and the MS degree is in Computer Science.

*With respect to the “Accelerated Degree Coursework Plan, BS & MS in Computer Science”, Computer Science students must secure the signature of the Computer Science Undergraduate Liaison and Graduate Liaison first (send to Attn: Sydnee Stasyszen (Sr. Undergraduate Programs Student Services Specialist), sydnee.s-1@ou.edu...&...Jaylin Milligan (Sr. Graduate Programs Student Services Specialist), jaylin.m.milligan-1@ou.edu), followed by their undergraduate advisor in the Williams Student Services Center/WSSC.  Once all pertinent signatures are obtained, the form will be sent to the Graduate College. Any updates to the forms will require resubmission detailed through the above process.

**With respect to the “Accelerated Degree Coursework Plan, BS in Computer Engineering/MS in Computer Science”, Computer Engineering students must send their form to the office of the School of Computer Science (send to Attn: Sydnee Stasyszen (Sr. Undergraduate Programs Student Services Specialist), sydnee.s-1@ou.edu...&...Jaylin Milligan (Sr. Graduate Programs Student Services Specialist), jaylin.m.milligan-1@ou.edu).  The ECE undergraduate liaison signature will be procured, followed by CS graduate liaison signature, followed by the student’s undergraduate advisor in the Williams Student Services Center/WSSC.  Once all pertinent signatures are obtained, the form will be sent to the Graduate College.  Any updates to the forms will require resubmission detailed through the process outlined above.

Electives

These elective lists are effective Fall 2023 for the B.S. curriculum, and the B.S.-M.S. accelerated degree program (ADP) curriculum in Computer Science/CS

Technical Elective List

  • Research-related CS classes:    
    • CS 3440 Mentored Research Experience (if taken before Fall 2024)
    • CS 3960 Honors Reading
    • CS 3980 Honors Research
    • CS 3990 Independent Study
    • CS 4910 Senior Reading and Research 
  • CS 4000+
  • ENGR 4013 or ENGR 4510 or ENGR 4003
  • MATH 2443 or MATH 2934
  • All 3000 or 4000 level MATH Classes
  • All 3000 or 4000 level Electrical and Computer Engineering Classes

*Science Elective List

  • PHYS 2514 General Physics for Engineering/Sciences
  • PHYS 1311 General Physics Lab I
  • BIOL 1013 Introduction to Biology
  • BIOL 1124 Introduction to Biology: Molecule/Cell Phys
  • CHEM 1315/1415 General Chemistry
  • Chem 1335 General Chemistry I
  • METR 2603 Severe and Unusual Weather
  • GEOL 1033 Earth, Energy, Environment
  • GEOL 1114 Physical Geology Science & Engineering
  • GEOG 1114 Physical Geography
  • ASTR 1523 Life in the Universe

Other classes approved by the CS Undergraduate Committee

*At least two science courses from different disciplines.
*One must include a lab. 
*Must be 7 hours or more.

CS 4000 Level Elective List

  • CS 4013 Artificial Intelligence
  • CS 4023 Introduction to Intelligent Robotics
  • CS 4033 Machine Learning
  • CS 4053 Computer Graphics
  • CS 4063 Human Computer Interaction
  • CS 4113 Distributed Operating Systems
  • CS 4133 Data Networks
  • CS 4323 Compiler Construction
  • CS 4433 Computational Methods in Discrete Optimization
  • CS 4613 Computer Architecture
  • CS 4723 Neural Data Science
  • CS 4733 Computer Vision for Autonomous Vehicles
  • CS 4823 Cryptography

Minors

Minor in Computer Science

A minor in computer science will consist of a minimum of eighteen credits of computer science courses including CS 2413, and at least six credits in upper division courses (3000 level or 4000 level). 

Math 2513 is counted as a computer science course.  A grade of C is required in all courses that are applied to the minor and in all prerequisite courses for the minor. Courses in the minor may be taken at most three times. At least nine credits in the minor must be taken at the University of Oklahoma.

Course Title Prerequisites
CS 1321 OR
CS 1323 OR
CS 1324
Java for Programmers OR
Introduction to Programming for Prog. OR
Introduction to Programming for Non-Prog.
Math 1523 or above as a prerequisite or concurrently
CS 2334
Programming Structures & Abstractions
CS 1323 or CS 1324 or CS 1321 and Math 1523 or higher
CS 2413
Data Structures
C S 2334 and MATH 1823 or 1914; and C S 2813 or MATH 2513, or concurrent enrollment in C S 2813 or MATH 2513
Math 2513Discrete MathematicsMath 2423 or Math 2924
CS 3203
Software EngineeringCS 2413 and Math 2513 or CS 2813
CS 3323
Principles of Programming Languages
CS 2413 and C S 2813 or MATH 2513, and ENGL 3153 or BC 2813 or ENGR 2002

The example schedule above contains nineteen credits of computer science classes, and this number of credits will typically be required to complete the minor. Students who transfer introductory computer programming courses from other institutions sometimes earned only three credits in their previous coursework. In such cases, the minor's minimal requirement of eighteen computer science credits is sufficient to complete the minor. Students with significant prior programming experience are encouraged to take departmental advanced standing examinations available in computer science: (ou.edu/admissions/apply/transfer-credits).

Some computer science classes require students to have a laptop computer in order to enroll and complete the class.

Students who wish to pursue a minor in computer science are strongly encouraged to check their proposed program with either the Williams Student Services Center for the College of Engineering (325-4096, Felgar Hall, rm. 112) or Dr. Deborah A. Trytten (325-4299, Devon Energy Hall, room 252).

Minor in CS with a Concentration in Knowledge Discovery:

 CourseTitle
Prerequisites 
CS 1321 OR
CS 1323 OR
CS 1324
Java for Programmers OR
Introduction to Programming for Prog. OR
Introduction to Programming for Non-Prog.
Math 1523 or above as a prerequisite or concurrently
CS 2334Programming Structures and Abstractions
CS 1323 or CS 1324 or CS 1321 and Math 1523 or higher
CS 2413Data Structures
C S 2334 and MATH 1823 or 1914; and C S 2813 or MATH 2513, or concurrent enrollment in C S 2813 or MATH 2513
CS 2813 OR
Math 2513
Discrete Structures OR
Discrete Mathematics
MATH 2423 or MATH 2924 or concurrent enrollment
CS 4513Database Management SystemsC S 2413 and C S 2813 or MATH 2513
CS 4013Artificial Intelligence CS 2413 , and CS 2813 or MATH 2513

Minor in Computational Technology

A Computational Technology minor is designed to meet the demands of employers for more graduates who know how to solve complicated societal problems using computers.  A Computational Technology minor combines software development skills with selected courses in an information technology cognate discipline and mathematics.  Cognate disciplines currently include Geographic Information Systems, Journalism and Mass Communication, Library Information Systems, and Management Information Systems.  A minor in Computational Technology will provide you with the ability to solve a variety of problems in your chosen interdisciplinary field.

  • A minimum of 18 credit hours, including CS 1323 and CS 2334
  • 6-9 credits from a single selected cognate discipline (GIS, JMC,LIS or MIS), at least 6 of which are at the upper division (3000 or 4000 level), and one mathematics course chosen to complement the cognate discipline.
  • At least 9 credit hours in the minor must be taken at the University of Oklahoma.
  • A minimum grade of C is required in all courses which are applied to the minor and in all prerequisite courses for the minor.
  • College of Engineering academic policies regarding repeating courses apply.

Computational Technology Minor Options:

CourseTitle
Prerequisites 
CS 1323Introduction to ProgrammingMath 1523 or equivalent
CS 2334Programming Structures and AbstractionsCS 1323
Math 1823Calculus and Analytic Geometry IMath 1523 at OU
GIS 2023
Spatial Thinking & GIS VisualizationNone
GIS ____
Two upper division GIS courses from approved list
 
 CourseTitle
Prerequisites 
 CS 1323Introduction to Programming Math 1523 or equivalent 
 CS 2334Programming Structures and Abstractions
CS 1323 

Math 1523

OR

Math 1743

OR

Math 1823

 

Precalculus and Trigonometry  OR

 

Calculus I for Business, Life & Social Sciences  OR

 

Calculus and Analytic Geometry

Math 1503 at OU

 

Math 1523 or 1643 at OU

 

Math 1523 at OU

 JMC 2033

or Other

Writing for the Media   OR other wrtiing course approved by a JMC advisor
JMC 1013 or concurrent enrollment
 JMC ___
Two upper division JMC courses from approved list
 
CourseTitle
Prerequisites 
CS 1323Introduction to ProgrammingMath 1523 or equivalent
CS 2334Programming Structures and AbstractionsCS 1323

Math 1523

OR

Math 1743

OR

Math 1823

Precalculus and Trigonometry  OR

 

Calculus I for Business, Life & Social Sciences  OR

 

Calculus and Analytic Geometry

Math 1503 at OU

 

Math 1523 or 1643 at OU

 

Math 1523 at OU

 

LIS 2003
Introduction to Information StudiesNone
LIS____
Two 4000 level LIS courses from approved list
 
CourseTitle
Prerequisites 
CS 1323Introduction to ProgrammingMath 1523 or equivalent
CS 2334Programming Structures and AbstractionsCS 1323

Math 1743

OR

Math 1823

Calculus I for Business, Life & Social Sciences

OR

Calculus and Analytic Geometry

 

Math 1523 or 1643 at OU

 

Math 1523 at OU

MIS 3213
Business Data Analysis(Must complete CS courses first)
MIS 3353
Accounting Information Systems/Databases 
MIS 3383Electronic Business