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.
How to Get in
Declaration Requirements
To declare the computer sciences major, students must meet the following requirements1:
- Completion of COMP SCI 300 and MATH 222
- Grade of BC or higher in one of these introductory programming courses, taken at UW-Madison: COMP SCI 300, COMP SCI/E C E 354 or COMP SCI 400
- 2.250 GPA or higher among the first completed attempts of these courses: COMP SCI 300 and MATH 222
- 1
For purposes of computer sciences major declaration requirements, GPA is calculated with UW-Madison courses only and does include the first attempt of all eligible major declaration coursework completed at time of submitting major declaration request. Repeated coursework is not included.
If a student needs additional coursework to meet the 2.250 GPA requirement, COMP SCI/MATH 240, COMP SCI/E C E 354, and/or COMP SCI 400 Programming III may also be used.
Students having difficulties meeting the above requirements should schedule a meeting with a computer sciences advisor.
For instructions on declaring the major, see the Department of Computer Sciences website.
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 |
* 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 Degree Requirements: Bachelor of Arts (BA)
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.
Bachelor of Arts Degree Requirements
Mathematics | Complete the University General Education Requirements for Quantitative Reasoning A (QR-A) and Quantitative Reasoning B (QR-B) coursework. |
Language |
|
LS Breadth |
|
Liberal Arts and Science Coursework | Complete at least 108 credits. |
Depth of Intermediate/Advanced work | Complete at least 60 credits at the intermediate or advanced level. |
Major | Declare and complete at least one major. |
Total Credits | Complete at least 120 credits. |
UW-Madison Experience |
|
Quality of Work |
|
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. They do not need to complete the L&S Degree Requirements above.
Requirements for the Major
Students must complete a minimum of 48 total credits as detailed below.
Basic Computer Sciences
Code | Title | Credits |
---|---|---|
COMP SCI/MATH 240 | Introduction to Discrete Mathematics | 3 |
COMP SCI/E C E 252 | Introduction to Computer Engineering | 3 |
COMP SCI 300 | Programming II | 3 |
COMP SCI/E C E 354 | Machine Organization and Programming | 3 |
COMP SCI 400 | Programming III | 3 |
Total Credits | 15 |
Basic Calculus
Code | Title | Credits |
---|---|---|
Complete one of these sequences: | 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 | ||
Total Credits | 9-14 |
Additional Mathematics
Linear Algebra
Code | Title | Credits |
---|---|---|
Complete one: | ||
MATH 320 | Linear Algebra and Differential Equations | 3 |
MATH 340 | Elementary Matrix and Linear Algebra | 3 |
MATH 341 | Linear Algebra | 3 |
MATH 375 | Topics in Multi-Variable Calculus and Linear Algebra | 5 |
Probability or Statistics
Code | Title | Credits |
---|---|---|
Complete one: | ||
STAT/MATH 309 | Introduction to Probability and Mathematical Statistics I | 3 |
STAT 311 | Introduction to Theory and Methods of Mathematical Statistics I | 3 |
STAT 324 | Introductory Applied Statistics for Engineers | 3 |
MATH 331 | Introductory Probability | 3 |
STAT 333 | Applied Regression Analysis | 3 |
STAT 340 | Data Science Modeling II | 4 |
STAT 371 | Introductory Applied Statistics for the Life Sciences | 3 |
STAT/MATH 431 | Introduction to the Theory of Probability | 3 |
MATH 531 | Probability Theory | 3 |
Advanced Computer Science Courses1
Theory of Computer Science
Code | Title | Credits |
---|---|---|
Complete one: | 3 | |
Introduction to Algorithms | ||
Introduction to Theory of Computing |
Software & Hardware
Code | Title | Credits |
---|---|---|
Complete two: | 6-8 | |
Foundations of Mobile Systems and Applications | ||
Software Engineering | ||
Introduction to Programming Languages and Compilers | ||
or COMP SCI 538 | Introduction to the Theory and Design of Programming Languages | |
Introduction to Operating Systems | ||
Introduction to Software Security | ||
Introduction to Big Data Systems | ||
Introduction to Computer Architecture | ||
Database Management Systems: Design and Implementation | ||
Introduction to Computer Networks | ||
Introduction to Information Security |
Applications
Code | Title | Credits |
---|---|---|
Complete one: | 3 | |
Introduction to Numerical Methods | ||
Introduction to Combinatorial Optimization | ||
Numerical Linear Algebra | ||
Numerical Analysis | ||
Introduction to Optimization | ||
Linear Optimization | ||
Computational Photography | ||
Introduction to Artificial Intelligence | ||
Theory & Algorithms for Data Science | ||
Computer Graphics | ||
Introduction to Data Visualization | ||
Introduction to Computer Vision | ||
Introduction to Human-Computer Interaction | ||
Building User Interfaces |
Electives1
Code | Title | Credits |
---|---|---|
Complete two: | 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 | ||
Wearable Technology | ||
Introduction to Theory of Computing | ||
Introduction to Optimization | ||
Linear Optimization | ||
Advanced Linear Programming | ||
Matrix Methods in Machine Learning | ||
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 Networks | ||
Introduction to Artificial Intelligence | ||
Theory & Algorithms for Data Science | ||
Introduction to Software Security | ||
Introduction to Big Data Systems | ||
Introduction to Computer Architecture | ||
Introduction to Computational Geometry | ||
Computer Graphics | ||
Probability and Information Theory in Machine Learning | ||
Database Management Systems: Design and Implementation | ||
Introduction to Data Visualization | ||
Introduction to Computer Vision | ||
Medical Image Analysis | ||
Introduction to Human-Computer Interaction | ||
Building User Interfaces | ||
Introduction to Bioinformatics | ||
Introduction to Algorithms | ||
Virtual Reality | ||
Computer Sciences Capstone | ||
Tools and Environments for Optimization | ||
Introduction to Computer Networks | ||
Introduction to Information Security | ||
Undergraduate Elective Topics in Computing |
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 residence2
- 15 credits in COMP SCI, taken on campus
Honors in the Major
Students may declare Honors in the Computer Sciences Major in consultation with the Computer Sciences undergraduate coordinator(s). To earn Honors in the Major in Computer Sciences, students must satisfy both the requirements for the major (above) and the following additional requirements:
- Earn a minimum 3.300 University GPA
- Earn a minimum 3.500 GPA for all COMP SCI and major courses
- Complete one COMP SCI course numbered 500 through 699, taken for Honors with a grade of B or higher
- Complete COMP SCI 681 and COMP SCI 682 for a total of 6 credits.3
Footnotes
- 1
COMP SCI courses may only fulfill one COMP SCI major requirement area. For example, if you take a course for the COMP SCI Applications requirement, it cannot also apply to the COMP SCI Elective requirement.
- 2
COMP SCI courses numbered 400 through 699 count as Upper Level.
- 3
Senior Honors Thesis proposal must be approved by the thesis/project advisor and student must be declared as Honors in the Major before enrollment in COMP SCI 681. A final thesis or project must be completed 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. |
Learning Outcomes
- Recognize and apply the core principles of Computing (abstractions and algorithms) to solve real-world problems.
- Describe and apply the theoretical foundations of Computer Science (e.g., complexity analysis) in practical settings.
- Demonstrate knowledge of key elements of computer systems, e.g., hardware, operating systems, networks.
- 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.
- Design, implement, and evaluate software in multiple programming paradigms and languages.
- Develop a substantial piece of software, and recognize the challenges of designing and developing software.
- Exhibit technical (designing, implementing, and testing) and teamwork (communication, collaboration, and professional practice) skills in order to develop solutions as a computer science practitioner.
- Can solve problems by applying a broad toolbox of knowledge and techniques.
Four-Year Plan
This Four-Year Plan is only one way a student may complete an L&S degree with this major. Many factors can affect student degree planning, including placement scores, credit for transferred courses, credits earned by examination, and individual scholarly interests. In addition, many students have commitments (e.g., athletics, honors, research, student organizations, study abroad, work and volunteer experiences) that necessitate they adjust their plans accordingly. Informed students engage in their own unique Wisconsin Experience by consulting their academic advisors, Guide, DARS, and Course Search & Enroll for assistance making and adjusting their plan.
First Year | |||
---|---|---|---|
Fall | Credits | Spring | Credits |
COMP SCI 200 | 3 | COMP SCI 300 | 3 |
MATH 221 | 5 | MATH 222 | 4 |
Communications Part A | 3 | Ethnic Studies | 3 |
First-Semester Language | 4 | Second Semester Language | 4 |
15 | 14 | ||
Second Year | |||
Fall | Credits | Spring | Credits |
COMP SCI 400 | 3 | COMP SCI/E C E 354 | 3 |
COMP SCI/E C E 252 | 3 | COMP SCI/MATH 240 | 3 |
Linear Algebra | 3 | INTER-LS 210 (Optional Career Development Course) | 1 |
Third Semester Language | 4 | Communication Part B | 3 |
Social Science Breadth | 3 | Fourth Semester Language | 4 |
16 | 14 | ||
Third Year | |||
Fall | Credits | Spring | Credits |
COMP SCI Theory (COMP SCI 577 recommended) | 3-4 | COMP SCI Software/Hardware | 3-4 |
Probability or Statistics | 3 | COMP SCI Applications | 3 |
COMP SCI 368 (Optional Programming Course) | 1 | Literature Breadth | 3 |
Humanities Breadth | 3 | Biological Science Breadth | 3 |
Social Science Breadth | 3 | Elective | 3 |
Elective | 3 | ||
16 | 15 | ||
Fourth Year | |||
Fall | Credits | Spring | Credits |
COMP SCI Software/Hardware | 3-4 | COMP SCI Elective | 3 |
COMP SCI Elective | 3 | Physical Science Breadth | 3 |
Humanities Breadth | 3 | Literature Breadth | 3 |
Social Science Breadth | 3 | Social Science Breadth | 3 |
Elective | 3 | Elective | 3 |
15 | 15 | ||
Total Credits 120 |
Advising and Careers
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 on 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.
SuccessWorks at the College of Letters & Science: SuccessWorks 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.
L&S Career Resources
Every L&S major opens a world of possibilities. SuccessWorks at the College of Letters & Science helps students turn the academic skills learned in their major, certificates, and other coursework into fulfilling lives after graduation, whether that means jobs, public service, graduate school or other career pursuits.
In addition to providing basic support like resume reviews and interview practice, SuccessWorks offers ways to explore interests and build career skills from their very first semester/term at UW all the way through graduation and beyond.
Students can explore careers in one-on-one advising, try out different career paths, complete internships, prepare for the job search and/or graduate school applications, and connect with supportive alumni and even employers in the fields that inspire them.
- SuccessWorks
- Set up a career advising appointment
- Enroll in a Career Course - a great idea for first- and second-year students:
- INTER-LS 210 L&S Career Development: Taking Initiative (1 credit)
- INTER-LS 215 Communicating About Careers (3 credits, fulfills Comm B General Education Requirement)
- Learn about internships and internship funding
- INTER-LS 260 Internship in the Liberal Arts and Sciences
- Activate your Handshake account to apply for jobs and internships from 200,000+ employers recruiting UW-Madison students
- Learn about the impact SuccessWorks has on students' lives
Resources and Scholarships
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.