Computer Science Major (BS)

The Bachelor of Arts degree in Computer Science is intended for the student whose primary interest is in Computer Science, but who wishes to pursue additional coursework in other academic areas (e.g., bioinformatics, media studies). It shares most of its courses with the BCS degree, but provides flexibility by requiring fewer courses.

Students whose BA program in computer science includes at least 58 hours of mathematics, computer science or natural science can request a B.S. degree.

Note: In 2019, we're initiating important changes to our academic offerings. See the 2019 Program Changes page or the 2019 New Major Info tab to understand these changes.

    • CS-108 Introduction to Computing
    • CS-112 Introduction to Data Structures
    • CS-212 Data Structures and Algorithms
    • CS-214 Programming Language Concepts
    • CS-232 Operating Systems and Networking
    • CS-262 Software Engineering
    • CS-295 Computing Seminar
    • CS-195 Introductory Computing Seminar
    • CS-384 Perspectives on Computing

  • CS-394 Senior Internship in Computing OR
  • CS-396 Senior Project in Computing AND
  • CS-398 Senior Project in Computing II

Three from:

  • CS-300 Special Topics in Computer Science: Bioinformatics*
  • CS-300 Special Topics in Computer Science: Compiler Design*
  • CS-312 Logic, Computability and Complexity
  • CS-320 Advanced Computer Architecture
  • CS-324 Cross Cultural Engagement across the Digital Divide
  • CS-332 Advanced Computer Networks
  • CS-338 System Administration
  • CS-342 Database Management Systems
  • CS-344 Artificial Intelligence
  • CS-352 Computer Graphics
  • CS-364 Computer Security
  • CS-372 Numerical Analysis
  • CS-374 High Performance Computing
  • IS-337 Introduction to Website Administration
  • ENGR-304 Fundamentals of Digital Systems
  • ENGR-325 Computer Architecture and Digital Systems Design
  • An approved interim

* Students may count multiple sections of CS 300 as different advanced electives in their computer science programs, provided those sections address different topics.


A minimum grade of C (2.0) in CS-212, CS-214, CS-232 or CS-262 is required for admission to these concentrations.

    • ENGR-220 Introduction to Computer Architecture
    • MATH-156 Discrete Mathematics for Computer Science
    • MATH-256 Discrete Structures and Linear Algebra

    • MATH-171 Calculus I OR
    • MATH-132 Calculus for Management, Life, and Social Sciences

  • STAT-143 Introduction to Probability and Statistics OR
  • STAT-243 Statistics (preferred)

The following course schedule provides a suggested framework for students pursuing a BA (or BS) in CS.



* MATH 171, 172, and STAT 243 are preferred, but students may choose to take STAT 143 and (MATH 171 or 132) instead.

Students in this program are eligible for the following scholarships and awards: