# An Analysis of the Math Requirements of 199 CS BS/BA Degrees at 158 U.S. Universities

2404.15177

2

0

š

## Abstract

For at least 40 years, there has been debate and disagreement as to the role of mathematics in the computer science curriculum. This paper presents the results of an analysis of the math requirements of 199 Computer Science BS/BA degrees from 158 U.S. universities, looking not only at which math courses are required, but how they are used as prerequisites (and corequisites) for computer science (CS) courses. Our analysis shows that while there is consensus that discrete math is critical for a CS degree, and further that calculus is almost always required for the BS in CS, there is little consensus as to when a student should have mastered these subjects. Based on our analysis of how math requirements impact access, retention and on-time degree completion for the BS and the BA in CS, we provide several recommendations for CS departments to consider.

Get summaries of the top AI research delivered straight to your inbox:

## Overview

- This paper examines the role of mathematics in computer science (CS) degree programs in the United States.
- The researchers analyzed the math requirements of 199 CS bachelor's degree programs across 158 universities.
- They looked at which math courses are required and how they are used as prerequisites or co-requisites for CS courses.

## Plain English Explanation

The paper explores the longstanding debate around the importance of mathematics in computer science education. The researchers took a deep dive into the math requirements for 199 CS bachelor's degrees at 158 U.S. universities. They didn't just look at which math courses are required, but how those math courses are used as prerequisites or taken alongside CS courses.

The key finding is that there is widespread agreement that discrete math is critical for a CS degree, and that calculus is almost always required for a BS in CS. However, there is little consensus on when students should master these foundational math subjects.

Based on their analysis of how math requirements impact access, retention, and timely degree completion for both BS and BA CS programs, the researchers provide several recommendations for CS departments to consider. These recommendations aim to ensure that math requirements support student success in computer science programs.

## Technical Explanation

The researchers conducted a comprehensive analysis of the math requirements across 199 CS bachelor's degree programs from 158 U.S. universities. They examined not only which specific math courses are required, but how those math courses are structured as prerequisites (or co-requisites) for various CS courses.

The results show broad agreement that discrete mathematics is a critical foundation for a CS degree. Similarly, calculus is almost universally required for the BS in CS. However, the analysis reveals little consensus on the optimal timing for students to complete these key math requirements.

The paper provides recommendations based on their findings about how math prerequisites impact access, retention, and on-time graduation for both the BS and BA in CS. These recommendations are intended to help CS departments structure their math requirements in a way that supports student success.

## Critical Analysis

The researchers acknowledge several limitations to their study. For example, they were unable to capture nuances in how individual institutions apply their math prerequisites, as their analysis was based on publicly available degree program information.

Additionally, the paper does not delve deeply into the pedagogical rationale behind the various math requirements. Further research could explore the academic justifications and expected learning outcomes associated with specific math courses in CS curricula.

That said, the broad insights around the lack of consensus on math timing are compelling and worthy of further exploration. The researchers' recommendations provide a solid starting point for CS departments to critically evaluate their math requirements and their impact on student success.

## Conclusion

This paper offers a comprehensive, data-driven analysis of the role of mathematics in computer science education. While there is broad agreement on the importance of discrete math and calculus, the optimal timing and integration of these foundational subjects remains an open question.

The researchers' recommendations provide a framework for CS departments to assess their math requirements and ensure they are supporting student access, retention, and timely degree completion. As the field of computer science continues to evolve, understanding the appropriate mathematical foundations will be crucial for preparing the next generation of computing professionals.

This summary was produced with help from an AI and may contain inaccuracies - check out the links to read the original source documents!

## Related Papers

š¬

### A Survey in Mathematical Language Processing

Jordan Meadows, Andre Freitas

0

0

Informal mathematical text underpins real-world quantitative reasoning and communication. Developing sophisticated methods of retrieval and abstraction from this dual modality is crucial in the pursuit of the vision of automating discovery in quantitative science and mathematics. We track the development of informal mathematical language processing approaches across five strategic sub-areas in recent years, highlighting the prevailing successful methodological elements along with existing limitations.

4/9/2024

š¤Æ

### Lessons Learned: The Evolution of an Undergraduate Robotics Course in Computer Science

R. Pito Salas

0

0

Seven years ago (2016), we began integrating Robotics into our Computer Science curriculum. This paper explores the mission, initial goals and objectives, specific choices we made along the way, and why and outcomes. Of course, we were not the first to do so. Our contribution in this paper is to describe a seven-year experience in the hope that others going down this road will benefit, perhaps avoiding some missteps and dead-ends. We offer our answers to many questions that anyone undertaking bootstrapping a new robotics program may have to deal with. At the end of the paper, we discuss a set of lessons learned, including striking the right balance between depth and breadth in syllabus design and material organization, the significance of utilizing physical robots and criteria for selecting a suitable robotics platform, insights into the scope and design of a robotics lab, the necessity of standardizing hardware and software configurations, along with implementation methods, and strategies for preparing students for the steep learning curve.

4/30/2024

### Comparison of Three Programming Error Measures for Explaining Variability in CS1 Grades

Valdemar v{S}v'abensk'y, Maciej Pankiewicz, Jiayi Zhang, Elizabeth B. Cloude, Ryan S. Baker, Eric Fouh

0

0

Programming courses can be challenging for first year university students, especially for those without prior coding experience. Students initially struggle with code syntax, but as more advanced topics are introduced across a semester, the difficulty in learning to program shifts to learning computational thinking (e.g., debugging strategies). This study examined the relationships between students' rate of programming errors and their grades on two exams. Using an online integrated development environment, data were collected from 280 students in a Java programming course. The course had two parts. The first focused on introductory procedural programming and culminated with exam 1, while the second part covered more complex topics and object-oriented programming and ended with exam 2. To measure students' programming abilities, 51095 code snapshots were collected from students while they completed assignments that were autograded based on unit tests. Compiler and runtime errors were extracted from the snapshots, and three measures -- Error Count, Error Quotient and Repeated Error Density -- were explored to identify the best measure explaining variability in exam grades. Models utilizing Error Quotient outperformed the models using the other two measures, in terms of the explained variability in grades and Bayesian Information Criterion. Compiler errors were significant predictors of exam 1 grades but not exam 2 grades; only runtime errors significantly predicted exam 2 grades. The findings indicate that leveraging Error Quotient with multiple error types (compiler and runtime) may be a better measure of students' introductory programming abilities, though still not explaining most of the observed variability.

4/10/2024

### Teaching Algorithm Design: A Literature Review

Jonathan Liu, Seth Poulsen, Erica Goodwin, Hongxuan Chen, Grace Williams, Yael Gertner, Diana Franklin

0

0

Algorithm design is a vital skill developed in most undergraduate Computer Science (CS) programs, but few research studies focus on pedagogy related to algorithms coursework. To understand the work that has been done in the area, we present a systematic survey and literature review of CS Education studies. We search for research that is both related to algorithm design and evaluated on undergraduate-level students. Across all papers in the ACM Digital Library prior to August 2023, we only find 94 such papers. We first classify these papers by topic, evaluation metric, evaluation methods, and intervention target. Through our classification, we find a broad sparsity of papers which indicates that many open questions remain about teaching algorithm design, with each algorithm topic only being discussed in between 0 and 10 papers. We also note the need for papers using rigorous research methods, as only 38 out of 88 papers presenting quantitative data use statistical tests, and only 15 out of 45 papers presenting qualitative data use a coding scheme. Only 17 papers report controlled trials. We then synthesize the results of the existing literature to give insights into what the corpus reveals about how we should teach algorithms. Much of the literature explores implementing well-established practices, such as active learning or automated assessment, in the algorithms classroom. However, there are algorithms-specific results as well: a number of papers find that students may under-utilize certain algorithmic design techniques, and studies describe a variety of ways to select algorithms problems that increase student engagement and learning. The results we present, along with the publicly available set of papers collected, provide a detailed representation of the current corpus of CS Education work related to algorithm design and can orient further research in the area.

5/3/2024