Computer Science

Department Chair: Imad Rahal

Faculty: Michael Heroux, Noreen Herzfeld, J. Andrew Holey, John Miller, Rasanjalee Dissanayaka Mudiyanselage, Imad Rahal, James Schnepf, Yu Zhang, Lynn Ziegler.

Problem solving is at the core of computer science. Beginning with the hands-on laboratory sessions in the first four courses of the major, all the way through your senior research project, you will hone your problem solving skills. Study in the field of computer science provides both computer users and professionals with an understanding of what is computable, how it can be computed and how the power of computation affects human society.  If you choose to study computer science at CSB/SJU, you will design and create models of how a computation could be done and you will often implement your model as a computer program. Along the way you will ask questions such as, "Can this be computed?" and reflecting the ethical traditions that CSB/SJU were founded on, "Should this be computed?"

A degree in computer science from CSB/SJU will prepare you well to begin a career in computing or to go on to graduate school, but it is also a good preparation for employment in business, law, medicine, and many other areas where problem solving is important.


The computer science department offers a major in computer science; it also offers a major in numerical computation jointly with the mathematics department. Information about the numerical computation major is in a separate section for that major. In addition, students may develop individualized majors which meet their particular interests. (See the section on individualizing a traditional major under Academic Regulations.)

Computer Science Major (56 credits)

This major focuses on the study and implementation of algorithms and the theoretical foundations of computing. It is appropriate for students interested in the full range of computing including software design, systems analysis, and graduate study in computer science.

Required Courses:

  • MATH 118 or 119 or 120;
  • CSCI 150 (130 or 140);
  • CSCI 160, 200, 230, 239, 310, 338, 339, and 369:
  • CSCI 373 or 398;
  • Twelve additional upper division credits in computer science, or one course from MATH 315, 322, 338, or 339, and eight additional upper division credits in computer science. 

Students who complete MATH 120 may substitute MATH 239 for CSCI 239.

Minor (24 credits)

Required Courses:

  • MATH 118 or 119 or 120;
  • CSCI 130 or 140 or 150;
  • CSCI 160;
  • Twelve additional computer science credits of which at least 4 are at the 300 level.

Students who complete MATH 120 may substitute MATH 239 for CSCI 239. Students primarily interested in business computing should take 230 and at least one of 312, 330 or 331; those interested in computing systems should take 310 and either 312, 350 or both; those interested in theoretical computer science should take 338 and 339.

Criteria for admission to the major:
Students will be accepted into the Computer Science major if:

  1. They have completed the required mathematics course and three CSCI courses,
  2. No more than one of the above courses has a grade below C, and
  3. The GPA in the above courses is 2.5 or better.

Students will be conditionally accepted into the Computer Science major if:

  1. They have not yet completed all the courses needed for unconditional acceptance into the major, but are currently enrolled in the courses which are lacking, and 
  2. They meet the other two criteria for acceptance on the courses completed thus far.

Students not accepted to the major must consult with Academic Advising. In exceptional circumstances, a student may be allowed to continue working toward a Computer Science major, subject to constraints determined by the Chair of the department in consultation with Academic Advising.

Courses (CSCI)