Undergraduate Guide

Computer science is the study of software (programming), hardware, and theoretical aspects of high-speed computing devices, as well as the application of these devices to a broad spectrum of scientific, technological, and business problems.

Both the College of Liberal Arts (CLA) and the College of Science and Engineering (CSE) offer a bachelor's degree in computer science. These degrees not only provide a basic understanding of the field, but also include an upper division emphasis in a student-chosen subarea of computer science. This flexibility allows for concentrations within computer science, or in interdisciplinary areas involving computer applications. This should prepare students for a variety of industrial, governmental, and business positions involving computer use, or for graduate work in the field.

The four-year CLA program leads to the degree of Bachelor of Arts, B.A., with a major sequence in Computer Science. The four-year CSE program leads to the degree of Bachelor of Science, B.S., in Computer Science. A minor sequence in Computer Science, available to all students, is offered through CLA.

The remainder of this guide is organized into sections. Where the information in a section differs for CLA and CSE students, subsections contain specific information for each type of major. The material in this document pertains only to the departmental requirements. Each college may have other requirements not covered here.

Additional information about the computer science Department and the computer science undergraduate program may also be obtained via the following links:

These websites contain some application forms, announcements, advising information, and other useful links.

Advising information for lower division students is available at the following locations:

CS&E degree programs

Overview

Students interested in studying computer science have the option of obtaining the Bachelor of Science (B.S.) degree through the College of Science & Engineering or the Bachelor of Arts (B.A.) degree through the College of Liberal Arts.

Requirements for all computer science degrees

For both degrees, students must complete the following requirements:

For both the B.S. and B.A., all required courses must be taken A-F and passed with a grade of C- or better.

Differences in requirements between B.A. and B.S. degrees

Though the B.S. and B.A. degree programs share many requirements, they differ in the following ways:

The degree requirements listed here apply to all students who began their education at the University of Minnesota during the Fall of 2013 or after for CSE students and Fall 2014 or after for CLA students. Previous degree requirements can be found in the appendix. Degree requirements between the current program and previous programs cannot be mixed. It is recommended that students who enrolled at the University of Minnesota prior to Fall 2013 contact an undergraduate advisor when planning their degree completion.

Distinction between B.A. and B.S. degrees

When working with colleagues in the CSE and CLA Career Centers and with many U.S.-based employers, we are routinely told that employers do not know or care about the difference between graduates with a B.A. in computer science and graduates with a B.S. in computer science. Students earning a bachelor’s degree in computer science are qualified for an extremely wide range of jobs across many sectors and industries; B.A. and B.S. students take the same required core courses and departmental opportunities such as student groups, research opportunities, and studying abroad are available to students in either degree program.

That said, here are things advisors encourage students to consider:

  1. The B.S. upper division technical elective credits can allow for students the opportunity to focus on a particular area of computer science. For students who are more likely to practice in an area that is highly specialized or technical, the B.S. may provide a better background.
  2. The B.A. asks for 8 credits of upper division CSCI coursework and 18 credits of upper division non-CSCI electives. These could include courses in statistics, mathematics, electrical engineering, psychology, or any other 3xxx-level or higher UMN courses. B.A. students may choose to explore another area of study that intersects with computer science, such as psychology, communications, or economics. For applications and future career goals that involve the liberal arts (human-centered computing, big data, and data privacy/public policy, etc.), this broader background may be more appropriate. The B.A. may also be a more efficient option for students pursuing a double major or a large minor.

Transfer students

New student transfers

Students transferring to the University of Minnesota from another school and wishing to select computer science as their major should first consult with the appropriate admissions counselor:

Based on the transfer coursework completed at the time of admission to the University, students will either be admitted as a major or pre-major student.

All transfer students will meet either a college advisor (pre-major students) or a departmental advisor (major students) during their orientation day organized by either CSE or CLA.

Transferring between CLA and CSE

Students wishing to transfer either from CLA to CSE to obtain a B.S. degree or from CSE to CLA to obtain a B.A. degree must file a Change of College Form online. Please pay particular attention to the application deadlines. Students transferring to CSE should refer to this website for admission criteria and information sessions.

Minors

Minor options in the department
Computer science minor

The computer science minor is a great option for students who want to include a basic core of computer science coursework to enhance or supplement their major program.

Information technology minor

This interdisciplinary minor provides opportunities for students from non-technical disciplines to supplement their major with a practical set of courses focused on information technology.

Minor options for computer science majors

Many students find that pursuing minor degree programs can be a strategic way to explore other interests and gain skills that are helpful for future career goals.