computer-sciences

Our graduates discover that computer science (CS) opens up a world of possibilities. 

Computer scientists enjoy exceptional career opportunities, in settings ranging from large, established companies to adventurous new start-ups. They are also well qualified to pursue graduate study in a number of fields.

Our students are creative, analytical problem-solvers. This is a rich, collaborative and varied field that you will find challenging, no matter where your individual interests lie.

And there is more to CS than programming. While software engineering is an important skill, computer scientists also work with robots and other physical devices, design hardware that runs faster and more efficiently, and apply machine learning techniques to gain insight from large data sets—to name just a few examples.

Because CS has become highly interconnected with medicine, business and many other fields, it is a great fit with other interests you may have. You will enjoy a strong career outlook while having an impact on society.

Declaration Requirements

To declare the computer sciences major, students must complete one Comp Sci course at UW–Madison and achieve a grade of "C" or better in that course. The course must be worth 2 or more credits. 

Information on declaring the major is available on the Department of Computer Sciences advising pages.

University General Education Requirements

All undergraduate students at the University of Wisconsin–Madison are required to fulfill a minimum set of common university general education requirements to ensure that every graduate acquires the essential core of an undergraduate education. This core establishes a foundation for living a productive life, being a citizen of the world, appreciating aesthetic values, and engaging in lifelong learning in a continually changing world. Various schools and colleges will have requirements in addition to the requirements listed below. Consult your advisor for assistance, as needed. For additional information, see the university Undergraduate General Education Requirements section of the Guide.

General Education
  • Breadth—Humanities/Literature/Arts: 6 credits
  • Breadth—Natural Science: 4 to 6 credits, consisting of one 4- or 5-credit course with a laboratory component; or two courses providing a total of 6 credits
  • Breadth—Social Studies: 3 credits
  • Communication Part A & Part B *
  • Ethnic Studies *
  • Quantitative Reasoning Part A & Part B *

* The mortarboard symbol appears before the title of any course that fulfills one of the Communication Part A or Part B, Ethnic Studies, or Quantitative Reasoning Part A or Part B requirements.

College of Letters & Science Breadth and Degree Requirements: Bachelor of Arts (B.A.)

Students pursuing a bachelor of arts degree in the College of Letters & Science must complete all of the requirements below. The College of Letters & Science allows this major to be paired with either a bachelor of arts or a bachelor of science curriculum. View a comparison of the degree requirements here.

Bachelor of Arts degree requirements

Mathematics Fulfilled with completion of University General Education requirements Quantitative Reasoning a (QR A) and Quantitative Reasoning b (QR B) coursework. Please note that some majors may require students to complete additional math coursework beyond the B.A. mathematics requirement.
Foreign Language
  • Complete the fourth unit of a foreign language; OR
  • Complete the third unit of a foreign language and the second unit of an additional foreign language

Note: A unit is one year of high school work or one semester/term of college work.
L&S Breadth
  • Humanities, 12 credits: 6 of the 12 credits must be in literature
  • Social Sciences, 12 credits
  • Natural Sciences, 12 credits: must include one 3+ credit course in the biological sciences; must include one 3+ credit course in the physical sciences
Liberal Arts and Science Coursework 108 credits
Depth of Intermediate/Advanced work 60 intermediate or advanced credits
Major Declare and complete at least one (1) major
Total Credits 120 credits
UW-Madison Experience 30 credits in residence, overall
30 credits in residence after the 90th credit
Minimum GPAs 2.000 in all coursework at UW–Madison
2.000 in intermediate/advanced coursework at UW–Madison

Non–L&S students pursuing an L&S major

Non–L&S students who have permission from their school/college to pursue an additional major within L&S only need to fulfill the major requirements and do not need to complete the L&S breadth and degree requirements above.

Requirements for the Major


INTRODUCTORY PROGRAMMING PREREQUISITE

Select one of the following courses:3
Programming I (recommended)
Introduction to Data Programming
Introduction to Programming
Problem Solving Using Computers
Signals, Information, and Computation

REQUIRED COURSEWORK

No course may be used to satisfy more than one requirement in the computer sciences major.
Courses taken on a pass/fail basis will not count toward any major requirements.

 BASIC COMPUTER SCIENCES

Complete all of the following courses:14
Introduction to Discrete Mathematics
Introduction to Computer Engineering
Programming II
Machine Organization and Programming
Programming III

 BASIC CALCULUS

Select one of the following options:9-14
Calculus and Analytic Geometry 1
and Calculus and Analytic Geometry 2
Calculus with Algebra and Trigonometry I
and Calculus with Algebra and Trigonometry II
and Calculus and Analytic Geometry 2
Topics in Calculus I
and Topics in Calculus II

ADDITIONAL MATHEMATICS

Select two from the following:6-10
Elementary Matrix and Linear Algebra (recommended) 1
Introductory Applied Statistics for Engineers (recommended)
Introduction to Numerical Methods 2
Introduction to Cryptography
Numerical Linear Algebra
Numerical Analysis
Linear Programming Methods
Advanced Linear Programming
Calculus--Functions of Several Variables 1
Techniques in Ordinary Differential Equations
Linear Algebra and Differential Equations 1
Applied Mathematical Analysis
Applied Mathematical Analysis
An Introduction to Probability and Markov Chain Models
Linear Algebra
Topics in Multi-Variable Calculus and Linear Algebra 1
Topics in Multi-Variable Calculus and Differential Equations
Introduction to the Theory of Probability
Applied Linear Algebra
College Geometry I
Introduction to Combinatorics
Analysis I
Modern Algebra
Modern Algebra
Elementary Number Theory
Mathematical Logic
Introduction to Probability and Mathematical Statistics I
Introduction to Probability and Mathematical Statistics II
Introduction to Theory and Methods of Mathematical Statistics I
Introduction to Theory and Methods of Mathematical Statistics II
Introduction to Random Signal Analysis and Statistics
1

MATH 375 may not be combined with MATH 234 Calculus--Functions of Several Variables, MATH 320 Linear Algebra and Differential Equations, or MATH 340 Elementary Matrix and Linear Algebra. The math department may have additional restrictions on giving credit to certain pairs of math courses.

​ADVANCED COMPUTER SCIENCES
 

Some of the advanced COMP SCI courses listed below have prerequisites not specifically required for the major. It is recommended that students plan ahead to ensure prerequisites are completed in advance of their selected coursework.

THEORY

Select one of the following courses:3
Introduction to Algorithms (recommended)
Introduction to Theory of Computing

 SOFTWARE/HARDWARE

Select two of the following courses:6-8
Foundations of Mobile Systems and Applications
Software Engineering
Introduction to Programming Languages and Compilers 1
Introduction to Operating Systems
Introduction to the Theory and Design of Programming Languages 1
Introduction to Computer Architecture
Database Management Systems: Design and Implementation
Introduction to Computer Networks
Introduction to Information Security
1

 COMP SCI 536 Introduction to Programming Languages and Compilers may not be combined with COMP SCI 538 Introduction to the Theory and Design of Programming Languages.

 APPLICATIONS

Select one of the following courses:
Introduction to Numerical Methods 1
Introduction to Combinatorial Optimization
Numerical Linear Algebra
Numerical Analysis
Introduction to Optimization
Linear Programming Methods
Computational Photography
Introduction to Artificial Intelligence
Natural Language and Computing
Computer Systems Modeling Fundamentals
Computer Graphics
Introduction to Human-Computer Interaction
1

COMP SCI 412 Introduction to Numerical Methods is used to satisfy the "Additional Mathematics" requirement, it cannot satisfy the "Applications" requirement.

COMPUTER SCIENCES ELECTIVES

Select two of the following courses:6-8
Foundations of Mobile Systems and Applications
Introduction to Numerical Methods
Introduction to Combinatorial Optimization
Introduction to Cryptography
Introduction to Computational Statistics
Introduction to Combinatorics
Software Engineering
Numerical Linear Algebra
Numerical Analysis
Introduction to Theory of Computing
Introduction to Optimization
Linear Programming Methods
Advanced Linear Programming
Theory and Applications of Pattern Recognition
Image Processing
Computational Photography
Introduction to Programming Languages and Compilers
Introduction to Operating Systems
Introduction to the Theory and Design of Programming Languages
Introduction to Artificial Neural Network and Fuzzy Systems
Introduction to Artificial Intelligence
Natural Language and Computing
Computer Systems Modeling Fundamentals
Introduction to Computer Architecture
Introduction to Computational Geometry
Computer Graphics
Database Management Systems: Design and Implementation
Medical Image Analysis
Introduction to Human-Computer Interaction
Introduction to Bioinformatics
Introduction to Algorithms
Virtual Reality
Tools and Environments for Optimization
Introduction to Computer Networks
Introduction to Information Security
Computer Game Technology

Residence and quality of work:

2.000 GPA in all COMP SCI courses and courses counting toward the major

2.000 GPA on 15 upper-level credits, taken in residence1

15 credits in COMP SCI, taken on campus

1

 COMP SCI courses numbered 400 and higher count as Upper-Level.



DISTINCTION IN THE MAJOR:

Distinction in the major is awarded automatically upon graduation to computer sciences majors who meet the qualifications below.

 QUALIFICATIONS FOR DISTINCTION IN THE COMPUTER SCIENCES MAJOR

3.750 GPA in all COMP SCI courses and courses counting toward the major
OR
3.500 GPA in all COMP SCI courses and courses counting toward the major, plus completion of one of the following:
-Completion of COMP SCI 691 & COMP SCI 692 for at least 6 credits, or
-One COMP SCI course, at the 500 level or above, and counted towards the major, must be taken for honors credit and completed with a grade of “B” or better
  

Honors in the Major

Students may declare Honors in the Computer Sciences Major in consultation with the Computer Sciences undergraduate coordinator(s).

Honors in the Computer Sciences Major Requirements

  • Earn a 3.300 overall university GPA
  • Earn a 3.500 GPA for all COMP SCI courses, and all courses accepted in the major
  • Complete the following coursework, earning a B or better in each individual course:
    • One COMP SCI course, at the 500 level or above, taken for Honors credit, which counts toward the COMP SCI major
    • A two-semester Senior Honors Thesis in COMP SCI 681 Senior Honors Thesis and COMP SCI 682 Senior Honors Thesis, for a total of 6 credits.1
1

The thesis proposal must be approved by both the thesis/project advisor and the department undergraduate coordinator before enrollment in COMP SCI 681. A final thesis or project must be filed with the Department of Computer Sciences before a final grade for COMP SCI 682 can be awarded.

University Degree Requirements

Total Degree To receive a bachelor's degree from UW–Madison, students must earn a minimum of 120 degree credits. The requirements for some programs may exceed 120 degree credits. Students should consult with their college or department advisor for information on specific credit requirements.
Residency Degree candidates are required to earn a minimum of 30 credits in residence at UW–Madison. "In residence" means on the UW–Madison campus with an undergraduate degree classification. “In residence” credit also includes UW–Madison courses offered in distance or online formats and credits earned in UW–Madison Study Abroad/Study Away programs.
Quality of Work Undergraduate students must maintain the minimum grade point average specified by the school, college, or academic program to remain in good academic standing. Students whose academic performance drops below these minimum thresholds will be placed on academic probation.

Upon graduation, students will be able to:

  1. Recognize and apply the core principles of Computing (abstractions and algorithms) to solve real-world problems.
  2. Describe and apply the theoretical foundations of Computer Science (e.g., complexity analysis) in practical settings.
  3. Demonstrate knowledge of key elements of computer systems, e.g., hardware, operating systems, networks.
  4. Use fundamental and detailed knowledge, skills, and tools (e.g., specific algorithms, techniques methods, etc.) of computer science and develop the ability to acquire new knowledge, skills, and tools.
  5. Design, implement, and evaluate software in multiple programming paradigms and languages.
  6. Develop a substantial piece of software, and recognize the challenges of designing and developing software.
  7. Exhibit technical (designing, implementing, and testing) and teamwork (communication, collaboration, and professional practice) skills in order to develop solutions as a computer science practitioner.
  8. Can solve problems by applying a broad toolbox of knowledge and techniques.

Advising

The undergraduate coordinators in the Department of Computer Sciences are ready to help students with questions about the major, L&S degree requirements and policy, and course selection. Information on academic advising for students interested or declared in the computer sciences major is posted to the Computer Sciences advising page

CAREERS

Demand for those with a computer sciences education is exceptionally strong. According to figures from the U.S. Bureau of Labor Statistics, the vast majority of growth in STEM (science, technology, engineering, and math) occupations through 2020 will occur within computing fields.

Computer sciences majors are encouraged to begin working on their career exploration and preparation soon after arriving on campus to explore different career paths, participate in co-ops or summer internships, prepare for the job search and/or graduate school applications, and network with professionals in the field.

Department of Computer Sciences: the department hosts one major career fair per year, in the fall, as well as other opportunities to connect with employers, such as technical talks and information sessions.

Letters & Science Career Services: L&S Career Services offers two major career fairs per year, assists with resume writing and interviewing skills, and offers individual career advising appointments for L&S students.

Engineering Career Services (ECS): ECS offers two major career fairs per year, assists with resume writing and interviewing skills, and hosts workshops on the job search. 

Professors A. Arpaci-Dusseau, R. Arpaci-Dusseau, Bach, Barford, Banerjee, Cai, Doan, Dyer, Ferris, Gleicher, Hill, Jha, Livny, Miller, Patel, Reps, Ron, Shavlik, Sohi, van Melkebeek, Wood, Wright, Zhu

Associate Professors Akella, Chawla, Liblit, Mutlu, Sankaralingam, Swift

Assistant Professors Albarghouthi, D'Antoni, Gupta, Koutris, Sifakis

Faculty Associates Dahl, Deppeler, Hasti, Legault, Lewis-Williams, Skrentny, Williams

Visit Scholarships@UW-Madison to find UW–Madison scholarships and apply online.

Visit the scholarships page on the Department of Computer Sciences website for a compendium of opportunities available to students studying computer sciences.