Skip to main content
Department of Computer Science

Bachelor of Arts in Computer Science

Students on Summer 2020, Fall 2020, or Spring 2021 requirements CSCIBA

The Bachelor of Arts in Computer Science teaches the principles of computation and algorithms and allows students to develop programming and computing skills. Computer scientists, software engineers, programmers, and other computing professionals are experts on how technology works and how computing can address even the most complicated and intricate problems.

Requirements

The major requires at least 30 credit hours (39 with the Addenda Requirements), including the requirements listed below.
  1. Core Courses.
    1. Introduction to Computer Science. One (1) course:
      • CSCI-C 200 Introduction to Computers and Programming
      • CSCI-C 200 INTRODUCTION TO COMPUTERS AND PROGRAMMING
      • CSCI-C 211 Introduction to Computer Science
      • CSCI-C 211 INTRODUCTION TO COMPUTER SCIENCE
      • CSCI-H 211 Introduction to Computer Science, Honors
      • CSCI-H 211 INTRODUCTION TO COMPUTER SCIENCE-HONORS
    2. Software Systems. One (1) course:
      • CSCI-C 212 Introduction to Software Systems
      • CSCI-C 212 INTRODUCTION TO SOFTWARE SYSTEMS
      • CSCI-H 212 Introduction to Software Systems, Honors
      • CSCI-H 212 INTRODUCTION TO SOFTWARE SYSTEMS, HONORS
    3. Discrete Structures. One (1) course:
      • CSCI-C 241 Discrete Structures for Computer Science
      • CSCI-C 241 DISCRETE STRUCTURES FOR COMPUTER SCIENCE
      • CSCI-H 241 Discrete Structures for Computer Science, Honors
      • CSCI-H 241 DISCRETE STRUCTURES FOR COMPUTER SCIENCE, HONORS
    4. Data Structures. One (1) course:
      • CSCI-C 343 Data Structures
      • CSCI-C 343 DATA STRUCTURES
      • CSCI-H 343 Data Structures, Honors
      • CSCI-H 343 DATA STRUCTURES, HONORS
  2. Advanced Electives. 15 credit hours:
    • Any CSCI-B 300–399
    • Any CSCI-B 400–499
    • Any CSCI-C 300–399
    • Any CSCI-C 400–499
    • Any CSCI-H 300–399
    • Any CSCI-H 400–499
    • Any CSCI-P 300–399
    • Any CSCI-P 400–499
    • Any CSCI-Y 300–399
    • Any CSCI-Y 400–499
    • MATH-M 471 Numerical Analysis I
    • MATH-M 472 Numerical Analysis II
    • INFO-H 494 DESIGN AND DEVELOPMENT OF AN INFORMATION SYSTEM
    • INFO-H 495 DESIGN AND DEVELOPMENT OF AN INFORMATION SYSTEMS
    • INFO-I 494 DESIGN AND IMPLEMENTATION OF AN INFORMATION SYSTEM (PART I)
    • INFO-I 495 DESIGN AND DEVELOPMENT OF AN INFORMATION SYSTEM
  3. Addenda Requirements*.
    1. Mathematical Foundations. One (1) course:
      • MATH-M 118 Finite Mathematics
      • MATH-M 211 Calculus I
      • MATH-S 118 Honors Finite Mathematics
      • MATH-S 211
      • MATH-V 118 Finite Mathematics with Applications
    2. Mathematical Science Elective. One (1) course:
      • Additional course from the Mathematical Foundations list
      • MATH-M 212 Calculus II
      • MATH-M 213
      • MATH-M 301 Linear Algebra and Applications
      • MATH-M 303 Linear Algebra for Undergraduates
      • MATH-M 311 Calculus III
      • MATH-M 312 Calculus IV
      • MATH-M 343
      • MATH-M 371 Elementary Computational Methods
      • MATH-M 384 Logic
      • MATH-M 391 Introduction to Mathematical Reasoning
      • MATH-M 405 Number Theory
      • MATH-M 409 Linear Transformations
      • MATH-S 212 Honors Calculus II
      • MATH-S 311 Honors Course in Calculus III
      • MATH-S 312 Honors Course in Calculus IV
      • MATH-S 343 Honors Course in Differential Equations
      • PHIL-P 250 Introductory Symbolic Logic
      • PHIL-P 251 Intermediate Symbolic Logic
      • PHIL-P 350 Logic of Sets
      • PHIL-P 352 Logic and Philosophy
    3. Additional Elective. One (1) course:
      • Additional course from the Mathematical Science Elective list
      • CSCI-B 403 Introduction to Algorithm Design and Analysis (<em>Note:</em> This course will count toward the Major Hours and Major GPA requirements)
      • CSCI-B 403 INTRODUCTION TO ALGORITHM DESIGN AND ANALYSIS (<em>Note:</em> This course will count toward the Major Hours and Major GPA requirements)
      • ECON-E 370 Statistical Analysis for Business and Economics
      • MATH-M 365 Introduction to Probability and Statistics
      • STAT-S 320 Introduction to Statistics
      • CSCI-B 401 Fundamentals of Computing Theory (<em>Note:</em> This course will count toward the Major Hours and Major GPA requirements)
      • CSCI-B 401 FUNDAMENTALS OF COMPUTING THEORY (<em>Note:</em> This course will count toward the Major Hours and Major GPA requirements)
      • CSCI-P 415 Introduction to Verification (<em>Note:</em> This course will count toward the Major Hours and Major GPA requirements)
      • CSCI-P 415 INTRODUCTION TO VERIFICATION (<em>Note:</em> This course will count toward the Major Hours and Major GPA requirements)
  4. Major GPA, Hours, and Minimum Grade Requirements.
    1. Major GPA. A GPA of at least 2.000 for all courses taken in the major—including those where a grade lower than C- is earned—is required.
    2. Major Minimum Grade. Except for the GPA requirement, a grade of C- or higher is required for a course to count toward a requirement in the major.
    3. Major Upper Division Credit Hours. At least 18 credit hours in the major must be completed at the 300–499 level.
    4. Major Residency. At least 18 credit hours in the major must be completed in courses taken through the Indiana University Bloomington campus or an IU-administered or IU co-sponsored Overseas Study program.
    5. College Breadth. At least 58 credit hours must be completed in courses from College of Arts and Sciences disciplines outside of the major area.

Major Area Courses

Unless otherwise noted below, the following courses are considered in the academic program and will count toward academic program requirements as appropriate:

  • Any course at the 100–499 level with the CSCI subject area prefix—as well as any other subject areas that are deemed functionally equivalent
  • Any course contained on the course lists for the academic program requirements at the time the course is taken—as well as any other courses that are deemed functionally equivalent—except for those listed only under Addenda Requirements
  • Any course directed to a non-Addenda requirement through an approved exception
Exclusions

The following courses cannot be applied toward major requirements or the College Breadth requirement:

  • CSCI-C 101
  • CSCI-C 308 SYSTEM ANALYSIS AND DESIGN
  • CSCI-C 405
  • CSCI-A 106 INTRODUCTION TO COMPUTING
  • CSCI-A 107 ADVANCED MICROCOMPUTING
  • CSCI-A 110 INTRODUCTION TO COMPUTERS AND COMPUTING
  • CSCI-A 111 A SURVEY OF COMPUTERS AND COMPUTING
  • CSCI-A 112 PROGRAMMING CONCEPTS
  • CSCI-A 113 DATA ANALYSIS USING SPREADSHEETS
  • CSCI-A 114 INTRODUCTION TO DATABASES
  • CSCI-A 116 MULTIMEDIA COMMUNICATIONS
  • CSCI-A 148 WORKING THE WORLD WIDE WEB
  • CSCI-A 200 COMPUTER LITERACY
  • CSCI-A 201 INTRODUCTION TO PROGRAMMING I
  • CSCI-A 202 INTRODUCTION TO PROGRAMMING II
  • CSCI-A 216 DIGITAL MULTIMEDIA CONCEPTS AND TECHNOLOGIES
  • CSCI-A 247 NETWORK TECHNOLOGIES AND ADMINISTRATION
  • CSCI-A 290 TOOLS FOR COMPUTING
  • CSCI-A 301 FORTRAN PROGRAMMING
  • CSCI-A 304 INTRODUCTORY C++ PROGRAMMING
  • CSCI-A 306 OBJECT-ORIENTED PROGRAMMING IN C++
  • CSCI-A 310 PROBLEM SOLVING USING DATA
  • CSCI-A 321 COMPUTING TOOLS FOR SCIENTIFIC RESEARCH
  • CSCI-A 338 NETWORK TECHNOLOGIES AND SYSTEMS ADMINISTRATION
  • CSCI-A 346 USER-INTERFACE PROGRAMMING
  • CSCI-A 348 MASTERING THE WORLD WIDE WEB
Restrictions

The following restrictions apply to the minimum credit hours required in the major:

  • No more than 1 credit hour of either of the following may be counted toward the major:
    • CSCI-H 498 Undergraduate Honors Seminar
    • CSCI-Y 395 Career Development for CSCI Majors

This program of study cannot be combined with the following:

  • [Name unavailable] (CSCIMIN)

Exceptions to and substitutions for major requirements may be made with the approval of the unit's Director of Undergraduate Studies, subject to final approval by the College of Arts and Sciences.