In addition to the requirements you must fulfill for the computer science BA, the College of Arts and Sciences requires you to complete approximately 45 semester hours of credit in the General Education Curriculum. The General Education (Gen Ed) curriculum is designed to provide you with a broad liberal arts education. The Gen Ed curriculum includes Skills, Distribution and Diversity course requirements. Credits in the major may also apply toward these hours.

Note: BA students are encouraged to take as many A&S Gen Ed classes as upper division (3000 and above) as possible to help in meeting the A&S degree requirement for 30 hours of upper division A&S coursework. Contact the BA advisor if you have questions about this requirement.

Students who matriculated prior to Fall 2018 may complete the General Education Curriculum or the Old Core Curriculum. Contact an advisor to discuss making this change.

Computer Science Requirements | Mathematics Requirements | Optional Computer Science Capstone / Honors ThesisAdditional Policies & Requirements

Computer Science

Important Note! The Foundation, BA Core and Upper Division Electives and Mathematics listed below are for students who started their degree before Fall 2019. If you started in the BA as a transfer or first-year student in Fall 2019 or after, use the menu to the right to navigate to Curriculum Guide for 2019. 

All of the following courses are required:
  • CSCI 1300-4, Computer Science 1: Starting Computing (or equivalent)
  • CSCI 2270-4, Computer Science 2: Data Structures
  • CSCI 2400-4, Computer Systems

Four of the following are required:
  • CSCI 3002-4, Fundamentals of Human Computer Interaction
  • CSCI 3104-4, Algorithms*
  • CSCI 3155-4, Principles of Programming Languages*
  • CSCI 3202-3, Introduction to Artificial Intelligence*
  • CSCI 3287-3, Design & Analysis of Data Systems
  • CSCI 3308-3, Software Development Methods and Tools
  • CSCI 3434-3, Theory of Computation*
  • CSCI 3656-3, Numerical Computation* or APPM/MATH 4650, Intermediate Numerical Analysis (only one course will count toward CSCI-BA)
  • CSCI 3753-4, Design & Analysis of Operating Systems
  • CSCI 4448-3, Object Oriented Analysis and Design

* These CSCI courses apply toward A&S requirement of 30 hours upper division A&S hours

Additional courses from the CS Core list or the list below to bring the total number of computer science credit hours to 42 or more:
  • CSCI 3010-3, Programming Project Workshop
  • CSCI 3022-3, Introduction to Data Science with Probability and Statistics
  • CSCI 3090-3, Introduction to Quantum Computing*
  • CSCI 3112-1, Human-Centered Computing Professional Development (can count up to 3 credits only)
  • CSCI 3302-3, Introduction to Robotics
  • CSCI 3352-3, Biological Networks
  • CSCI 3403-4, Introduction to CyberSecurity for a Converged World
  • CSCI 3702-3, Cognitive Science*
  • CSCI 3832-3, Natural Language Processing
  • CSCI 4022-3, Advanced Data Science
  • CSCI 4113-3, Linux System Administration (also offered as TLEN 5842; only one of these will count)
  • CSCI 4114-3, Practical Algorithmic Complexity
  • CSCI 4122-3, Information Visualization
  • CSCI 4229-3, Computer Graphics
  • CSCI 4239-3, Advanced Computer Graphics
  • CSCI 4253-3, Datacenter Scale Computing
  • CSCI 4273-3, Network Systems
  • CSCI 4302-3, Advanced Robotics
  • CSCI 4314-3, Dynamic Models in Biology*
  • CSCI 4413-3, Computer Security & Ethical Hacking
  • CSCI 4446-3, Chaotic Dynamics
  • CSCI 4502-3, Data Mining
  • CSCI 4555-3, Compiler Construction
  • CSCI 4576-4, High-Performance Scientific Computing
  • CSCI 4593-3, Computer Organization
  • CSCI 4622-3, Machine Learning
  • CSCI 4753-3, Computer Performance Modeling
  • CSCI 4802-1, Data Science Team Companion Course (can count up to 3 credits only)
  • CSCI 4809-3, Computer Animation
  • CSCI 4830-3, Special Topics in Computer Science (only 9 credit hours total from 4830/4831 combined can count toward CSCI-BA electives)
  • CSCI 4831-3, Special Topics in Algorithms (only 9 credit hours total from 4830/4831 combined can count toward CSCI-BA electives)
  • CSCI 4849-3, Input, Interaction, and Accessibility
  • CSCI 4889-3, Interactive Machine Learning for Customizable and Expressive Interfaces
  • CSCI 4900-3, Upper Division, Undergraduate Independent Study (maximum of 8 hours will count toward major)
  • APPM 4120-3 / MATH 4120-3, Introduction to Operations Research
  • APPM 4370-3, Computational Neuroscience
  • APPM 4720-3, Open Topics in Applied Mathematics: Randomized Algorithms, instructor permission required
  • APPM 4720-3, Open Topics in Applied Mathematics: Applied Deep Learning, instructor permission required
  • ATLS 4120-3, Mobile Application Development (formerly offered as ATLS 4519 Special Topics: Mobile App Dev; only one of these will count toward the CSCI-BA)
  • ATLS 4214-3, Big Data Architecture (formerly offered as CSCI 4830 Special Topics: Big Data or ATLS 4519 Special Topics: Big Data; only one of these will count toward the CSCI-BA)
  • ATLS 4320-3, Mobile Application Development: Advanced Topics (formerly offered as ATLS 4519 Special Topics: Adv Mobile App Development; only one of these will count toward the CSCI-BA)
  • ECEN 4133-3, Fundamentals of Computer Security
  • ECEN 4313-3, Concurrent Programming
  • INFO 3504-3, Problems in Information Science: Digital Identity
  • INFO 4602-3, Mastery in Information Science: Information Visualization
  • INFO 4604-3, Mastery in Information Science: Applied Machine Learning
  • INFO 4609-3, Mastery in Information Science: User Centered Design
  • INFO 4611-3, Mastery in Information Science: Ubiquitous Computer Experience Design (formerly INFO 4871 Experience Design in Ubicomp)
  • MATH 4440-3, Mathematics of Coding and Cryptography
  • MCDB 4520-3, Bioinformatics and Genomics

* These CSCI courses apply toward A&S requirement of 30 hours upper division A&S hours

Students are responsible for knowing and adhering to course prerequisites as listed in the course catalog. Some courses on this approved list may have prerequisites that are not otherwise required for the computer science major.

Mathematics

The BA requires two semesters of calculus, one discrete mathematics course and an additional math course in either linear algebra or probability/statistics (calculus-based). Completing both linear algebra and probability/stats is encouraged. Any course starting with CSCI used to complete these requirements/options will count towards the overall 42 hours of CS coursework for the major.

Must take Calculus 1 and 2, can interchange APPM and MATH courses:
  • APPM 1350-4, Calculus 1 for Engineers; MATH 1300-5 Calculus 1; MATH 1310, Calculus, Systems and Modeling
  • APPM 1360-4 , Calculus 2 for Engineers, MATH 2300-5 Calculus 2

Take one of the following courses:
  • CSCI 2824-3, Discrete Structures
  • MATH 2001-3, Introduction to Discrete Mathematics
  • APPM 3170-3, Discrete Applied Mathematics

Students are responsible for knowing and adhering to course prerequisites as listed in the course catalog. Some courses on this approved list may have prerequisites that are not otherwise required for the computer science major. CSCI 2824 is not approved for MATH courses that require MATH 2001; students may seek instructor approval to take such courses but admission is not guaranteed

BA students are required to take one course in either linear algebra or probability/statistics (calculus-based). Completing both linear algebra and probability/stats is encouraged, however.

Options for linear algebra include:

  • CSCI 2820-3, Linear Algebra with CS Applications
  • MATH 2130-3, Introduction to Linear Algebra for Non-Mathematics Majors
  • MATH 2135-3, Introduction to Linear Algebra for Mathematics Majors
  • MATH 3130-3, Introduction to Linear Algebra (no longer offered)
  • MATH 3135-3, Honors Introduction to Linear Algebra (no longer offered)
  • APPM 3310-3, Matrix Methods and Applications

Students are responsible for knowing and adhering to course prerequisites as listed in the course catalog. Some courses on this approved list may have prerequisites that are not otherwise required for the computer science major.

BA students are required to take one course in either linear algebra or probability/statistics (calculus-based). Completing both linear algebra and probability/stats is encouraged, however.

Options for probability/statistics include:

  • CSCI 3022-3, Introduction to Data Science with Probablility and Statistics
  • APPM 3570-3, Applied Probability
  • APPM 4570-3, Statistical Methods
  • ECON 3818-4, Introduction to Statistics w/ Computer Applications
  • MATH 3510-3, Introduction to Probability and Statistics
  • MATH 4510-3, Introduction to Probability Theory
  • STAT 3100-3, Aplied Probability
  • STAT 4000-3, Statistical Methods and Application I
  • Other calculus-based probability/statistics courses if approved by CS Undergraduate Advising Committee

Students are responsible for knowing and adhering to course prerequisites as listed in the course catalog. Some courses on this approved list may have prerequisites that are not otherwise required for the computer science major.

 

Optional CS Senior Capstone / Honors Thesis

BA students are eligible to participate in the Software Engineering Project or Entrepreneurial Project courses, provided they meet the following criteria.

Software Engineering Project 

  • CSCI 4308-4, Software Engineering Project 1 (fall)
  • CSCI 4318-4, Software Engineering Project 2 (spring)

Entrepreneurial Project

  • CSCI 4348-4, Startup Essentials: Entrepreneurial Project 1
  • CSCI 4358-4, Entrepreneurial Project 2

Either sequence must be taken contiguously and may not be taken before the senior year.

 

To participate in either option, BA students must have taken the following courses:
  • CSCI 1300-4 (or equivalent)
  • CSCI 2270-4
  • CSCI 2400-4
  • CSCI 2824-3 (or other discrete math option)
  • CSCI 2820-3 (or other linear algebra option)
  • CSCI 3308-3, Software Development Methods and Tools
  • CSCI 3155-4, Principles of Programming Languages
  • At least two CS upper division courses (BA core preferred) in addition to CSCI 3308 and CSCI 3155 – 6-8 hours
  • TOTAL at least 31 hours in the major

Other requirements: Back to Top

  • GPA 3.0 or better in CSCI 
  • Completed upper division writing course 
  • Must have fall and spring semesters remaining in academic plan. 

If you meet the above criteria and want to apply for the upcoming fall, make an appointment with the BA advisor to review your degree audit. If you are not about to start your senior year, but have an interest in Senior Capstone for the future, use the criteria as guidelines for your upcoming course plans. 

Senior Capstone are controlled enrollment courses. The CS department will give priority to BS students for whom they are a requirement. BA students taking them for elective credit will be enrolled with instructor approval on a space-available, first-come, first-served basis. 

BA students can enroll in CSCI 4900-3 Independent Study followed by CSCI 4960-3 Computer Science Honors Thesis for two semesters (total 6 hours), conduct exploratory research in computer science, and complete and defend an A&S Honors Thesis as part of the A&S Honors Program. Visit the A&S Honors Program webpage or contact Shiv Mishra for more details

 

Additional Policies and Requirements

BA students are part of the College of Arts and Sciences and are subject to the requirements of that college.

Satisfying course requirements for the Computer Science BA major and A&S Core typically leaves about 20 hours for “free elective” courses. Students often need to complete free electives as upper division A&S Coursework to meet the degree requirement of 30 hours upper division A&S course work, even though courses from any CU Boulder college can be counted as free elective hours. Discuss any questions you have about these requirements with your academic advisor.

 

CSCI courses that are approved to count for uppper division A&S hours are listed in the Degree Audit with the Computer Science Major Required Courses. As of Fall 2017 only the following CSCI courses are approved for upper division A&S credit: CSCI 3104, 3155, 3202, 3434, 3702, 4314, 3656.

Students need to have the following grade point averages:
  • A cumulative GPA of 2.0 or better in all CSCI courses taken at CU
  • A cumulative GPA of 2.0 or better in all CU courses used to satisfy graduation requirements
  • A grade of C- or better is needed in all prerequisite courses to take a subsequent course
  • All coursework applied to a major or minor must be completed with a grade of C- or better (no pass/fail work may be applied)

The minimum passing grade for a course that is considered a prerequisite for another required course is C-. If a grade of D+ or lower is received in a course which is prerequisite to another, the student is required to repeat the course until the minimum acceptable course grade has been earned. If a student takes the advanced course, it does not remove the obligation to repeat the prerequisite course, even if the grade earned in the advanced course is a C- or above. In general, aside from the above restrictions, any passing grade (i.e. a D- or better) is acceptable to fulfill a degree requirement. Different restrictions may apply for foreign language courses.

For A&S students, at least 45 hours must be completed on the Boulder campus. For A&S students, at least 30 upper division hours in Arts and Sciences must be completed after matriculation into the college. These hours may include courses from non-A&S departments (such as CS) that have been explicitly approved to meet this requirement.

[expandable]Students must meet all MAPS requirements or complete MAPS deficiencies. Visit the Undergraduate Admissions MAPS page for more information.

The College of Arts and Science recommends that you apply for graduation by going to MyCUInfo the semester before the semester you plan to graduate. Check with your undergraduate advisor to see if you have completed the degree requirements.