# Curriculum Report: Computer Science

## Overview

| Property | Value |
|----------|-------|
| **Institution** | California Berkeley |
| **Degree** | BA Computer Science |
| **System** | semester |
| **Years** | 4 |
| **CIP Code** | 11.07 |
| **Total Credits** | 113.0 |
| **Total Courses** | 30 |

## Complexity Metrics Summary

| Metric | Value | Details |
|--------|-------|---------|
| **Total Structural Complexity** | 100 | Sum of all course complexities |
| **Longest Delay** | 5 | Course: COMPSCI61A |
| **Highest Centrality** | 52 | Course: COMPSCI61A |

### Longest Delay Path (Critical Path)

(COMPSCI61A+MATH1A) → COMPSCI61B → COMPSCI61C → COMPSCI152

---

## Term-by-Term Schedule

| Semester | Courses | Credits |
|---|---|---|
| 1 | COMPSCI61A - The Structure and Interpretation of Computer Programs, MATH1A - Calculus, COMPSCI70 - Discrete Mathematics and Probaility Theory, XXXX_28 - UD L&S Elective | 16.0 |
| 2 | COMPSCI61B - Data Structures, MATH1B - Calculus, XXXX_19 - Elective, XXXX_24 - L&S Breadth | 15.0 |
| 3 | COMPSCI61C - Great Ideas of Computer Architecture, COMPSCI160 - User Interface Design and Development (Upper Division CS Elective), MATH54 - Linear Algebra and Differntial Equations, XXXX_29 - UD L&S Elective | 15.0 |
| 4 | COMPSCI152 - Computer Architecture and Engineering (Upper Division CS Elective), COMPSCI162 - Operating Systems and System Programming (Upper Division CS Elective), COMPSCI164 - Programming Languages and Compilers (Upper Division CS Elective) | 12.0 |
| 5 | COMPSCI169 - Software Engineering (Upper Division CS Elective), XXXX_13 - Reading and Composition B, XXXX_22 - L&S Breadth | 12.0 |
| 6 | ARCH129 - Principles of Computer Aided Architectural Design (Non CS Technical Elective), XXXX_14 - L&S Breadth, XXXX_23 - Elective, XXXX_25 - Elective | 14.0 |
| 7 | COMPSCI10 - The Beauty and Joy of Computing, XXXX_15 - L&S Breadth, XXXX_17 - American Culuters Req, XXXX_26 - Elective | 14.0 |
| 8 | XXXX_12 - Reading and Composition A, XXXX_16 - L&S Breadth, XXXX_18 - Elective, XXXX_27 - Elective | 15.0 |


---

## Course Metrics

| Course | Name | Credits | Complexity | Blocking | Delay | Centrality |
|---|---|---|---|---|---|---|
| MATH1A | Calculus | 4.0 | 15 | 10 | 5 | 0 |
| COMPSCI61A | The Structure and Interpretation of Computer Programs | 4.0 | 12 | 7 | 5 | 52 |
| COMPSCI61B | Data Structures | 4.0 | 11 | 6 | 5 | 36 |
| COMPSCI61C | Great Ideas of Computer Architecture | 4.0 | 9 | 4 | 5 | 36 |
| COMPSCI169 | Software Engineering (Upper Division CS Elective) | 4.0 | 5 | 0 | 5 | 0 |
| COMPSCI164 | Programming Languages and Compilers (Upper Division CS Elective) | 4.0 | 5 | 0 | 5 | 0 |
| COMPSCI152 | Computer Architecture and Engineering (Upper Division CS Elective) | 4.0 | 5 | 0 | 5 | 0 |
| COMPSCI162 | Operating Systems and System Programming (Upper Division CS Elective) | 4.0 | 5 | 0 | 5 | 0 |
| COMPSCI70 | Discrete Mathematics and Probaility Theory | 4.0 | 4 | 2 | 2 | 0 |
| MATH1B | Calculus | 4.0 | 4 | 1 | 3 | 3 |
| COMPSCI160 | User Interface Design and Development (Upper Division CS Elective) | 4.0 | 4 | 0 | 4 | 0 |
| MATH54 | Linear Algebra and Differntial Equations | 4.0 | 3 | 0 | 3 | 0 |
| ARCH129 | Principles of Computer Aided Architectural Design (Non CS Technical Elective) | 4.0 | 1 | 0 | 1 | 0 |
| XXXX_12 | Reading and Composition A | 4.0 | 1 | 0 | 1 | 0 |
| XXXX_13 | Reading and Composition B | 4.0 | 1 | 0 | 1 | 0 |
| XXXX_14 | L&S Breadth | 4.0 | 1 | 0 | 1 | 0 |
| XXXX_15 | L&S Breadth | 3.0 | 1 | 0 | 1 | 0 |
| XXXX_16 | L&S Breadth | 3.0 | 1 | 0 | 1 | 0 |
| XXXX_17 | American Culuters Req | 4.0 | 1 | 0 | 1 | 0 |
| XXXX_18 | Elective | 4.0 | 1 | 0 | 1 | 0 |
| XXXX_19 | Elective | 3.0 | 1 | 0 | 1 | 0 |
| XXXX_22 | L&S Breadth | 4.0 | 1 | 0 | 1 | 0 |
| XXXX_23 | Elective | 3.0 | 1 | 0 | 1 | 0 |
| XXXX_24 | L&S Breadth | 4.0 | 1 | 0 | 1 | 0 |
| XXXX_25 | Elective | 3.0 | 1 | 0 | 1 | 0 |
| XXXX_26 | Elective | 3.0 | 1 | 0 | 1 | 0 |
| XXXX_27 | Elective | 4.0 | 1 | 0 | 1 | 0 |
| XXXX_28 | UD L&S Elective | 4.0 | 1 | 0 | 1 | 0 |
| XXXX_29 | UD L&S Elective | 3.0 | 1 | 0 | 1 | 0 |
| COMPSCI10 | The Beauty and Joy of Computing | 4.0 | 1 | 0 | 1 | 0 |


---

## Curriculum Graph

The following diagram shows the prerequisite relationships between courses.
- **Solid arrows** (→) indicate prerequisites
- **Dashed arrows** (⤍) indicate corequisites
- **C:N** indicates the complexity score

```mermaid
flowchart LR
    subgraph term1["Semester 1"]
        COMPSCI61A["COMPSCI61A<br/>The Structure and...<br/>C:12"]
        MATH1A["MATH1A<br/>Calculus<br/>C:15"]
        COMPSCI70["COMPSCI70<br/>Discrete Mathemat...<br/>C:4"]
        XXXX_28["XXXX_28<br/>UD L&S Elective<br/>C:1"]
    end

    subgraph term2["Semester 2"]
        COMPSCI61B["COMPSCI61B<br/>Data Structures<br/>C:11"]
        MATH1B["MATH1B<br/>Calculus<br/>C:4"]
        XXXX_19["XXXX_19<br/>Elective<br/>C:1"]
        XXXX_24["XXXX_24<br/>L&S Breadth<br/>C:1"]
    end

    subgraph term3["Semester 3"]
        COMPSCI61C["COMPSCI61C<br/>Great Ideas of Co...<br/>C:9"]
        COMPSCI160["COMPSCI160<br/>User Interface De...<br/>C:4"]
        MATH54["MATH54<br/>Linear Algebra an...<br/>C:3"]
        XXXX_29["XXXX_29<br/>UD L&S Elective<br/>C:1"]
    end

    subgraph term4["Semester 4"]
        COMPSCI152["COMPSCI152<br/>Computer Architec...<br/>C:5"]
        COMPSCI162["COMPSCI162<br/>Operating Systems...<br/>C:5"]
        COMPSCI164["COMPSCI164<br/>Programming Langu...<br/>C:5"]
    end

    subgraph term5["Semester 5"]
        COMPSCI169["COMPSCI169<br/>Software Engineer...<br/>C:5"]
        XXXX_13["XXXX_13<br/>Reading and Compo...<br/>C:1"]
        XXXX_22["XXXX_22<br/>L&S Breadth<br/>C:1"]
    end

    subgraph term6["Semester 6"]
        ARCH129["ARCH129<br/>Principles of Com...<br/>C:1"]
        XXXX_14["XXXX_14<br/>L&S Breadth<br/>C:1"]
        XXXX_23["XXXX_23<br/>Elective<br/>C:1"]
        XXXX_25["XXXX_25<br/>Elective<br/>C:1"]
    end

    subgraph term7["Semester 7"]
        COMPSCI10["COMPSCI10<br/>The Beauty and Jo...<br/>C:1"]
        XXXX_15["XXXX_15<br/>L&S Breadth<br/>C:1"]
        XXXX_17["XXXX_17<br/>American Culuters...<br/>C:1"]
        XXXX_26["XXXX_26<br/>Elective<br/>C:1"]
    end

    subgraph term8["Semester 8"]
        XXXX_12["XXXX_12<br/>Reading and Compo...<br/>C:1"]
        XXXX_16["XXXX_16<br/>L&S Breadth<br/>C:1"]
        XXXX_18["XXXX_18<br/>Elective<br/>C:1"]
        XXXX_27["XXXX_27<br/>Elective<br/>C:1"]
    end

    term1 ~~~ term2
    term2 ~~~ term3
    term3 ~~~ term4
    term4 ~~~ term5
    term5 ~~~ term6
    term6 ~~~ term7
    term7 ~~~ term8

    COMPSCI61B --> COMPSCI160
    COMPSCI61A --> COMPSCI61B
    MATH1A --> MATH1B
    COMPSCI61B --> COMPSCI162
    COMPSCI61C --> COMPSCI162
    COMPSCI70 --> COMPSCI162
    COMPSCI61B --> COMPSCI164
    COMPSCI61C --> COMPSCI164
    COMPSCI61C --> COMPSCI152
    MATH1B --> MATH54
    COMPSCI61B --> COMPSCI169
    COMPSCI61C --> COMPSCI169
    COMPSCI70 --> COMPSCI169
    COMPSCI61A --> COMPSCI61C
    COMPSCI61B --> COMPSCI61C
    MATH1A -.-> COMPSCI61A
```


---

*Generated by NuAnalytics*
