# Curriculum Report: Colostate_CS_2017

## Overview

| Property | Value |
|----------|-------|
| **Institution** | Colorado State University |
| **Degree** | BS Colostate_CS_2017 |
| **System** | semester |
| **Years** | 4 |
| **CIP Code** | 11.0701 |
| **Total Credits** | 120.0 |
| **Total Courses** | 37 |

## Complexity Metrics Summary

| Metric | Value | Details |
|--------|-------|---------|
| **Total Structural Complexity** | 208 | Sum of all course complexities |
| **Longest Delay** | 7 | Course: MATH160 |
| **Highest Centrality** | 124 | Course: CS165 |

### Longest Delay Path (Critical Path)

MATH160 → CS270 → CS253 → CS314 → CS414

---

## Term-by-Term Schedule

| Semester | Courses | Credits |
|---|---|---|
| 1 | CS164 - Java (Prior) programming experience, MATH160 - Calculus I, CO150 - Composition, SCI2++_31 - CS Science 2 w/lab, elec3++_36 - Elective | 17.0 |
| 2 | CS165 - CS2--Data Structures, MATH161 - Calculus II, STAT301 - Introduction to Applied Statistical Methods, CO300 - Advanced Writing | 15.0 |
| 3 | CS220 - Discrete Structures and their Applications, CS270 - Computer Organization, MATH369 - Linear Algebra, CIS413 - Tech Elective | 14.0 |
| 4 | CS253 - Software Development with C++, CS370 - Operating Systems, CS320 - Algorithms--Theory and Practice, JTC372 - Tech Elective, SCI2++_37 - CS Science 2 w/lab | 15.0 |
| 5 | CS314 - Software Engineering, CS356 - Computer Security, CS455_17 - 400++ Course, CS455_21 - 400+ | 14.0 |
| 6 | CS414 - 400++ Course, CS462 - 400++ Course, Soc1xx - Social Science Elective, elec3++_15 - Tech Elective | 14.0 |
| 7 | AH1xx_2 - A&H elective, CHEM107 - CS Science w/lab, CHEM108 - CS Science lab, PH121 - CS Science, elec1xx_33 - Elective, elec3++_35 - Elective | 16.0 |
| 8 | AH1xx_4 - A&H elective, DEI1xx - DEI Elective, HIST1xx - History Elective, elec1xx_32 - Elective, elec3++_34 - Elective | 15.0 |


---

## Course Metrics

| Course | Name | Credits | Complexity | Blocking | Delay | Centrality |
|---|---|---|---|---|---|---|
| MATH160 | Calculus I | 4.0 | 25 | 18 | 7 | 0 |
| CS164 | Java (Prior) programming experience | 4.0 | 21 | 14 | 7 | 68 |
| CS165 | CS2--Data Structures | 4.0 | 20 | 13 | 7 | 124 |
| CS270 | Computer Organization | 4.0 | 15 | 8 | 7 | 90 |
| CS220 | Discrete Structures and their Applications | 4.0 | 13 | 6 | 7 | 60 |
| CS253 | Software Development with C++ | 4.0 | 11 | 4 | 7 | 96 |
| CS314 | Software Engineering | 3.0 | 8 | 1 | 7 | 36 |
| CS370 | Operating Systems | 3.0 | 8 | 2 | 6 | 30 |
| MATH161 | Calculus II | 4.0 | 7 | 3 | 4 | 10 |
| CS414 | 400++ Course | 4.0 | 7 | 0 | 7 | 0 |
| CS356 | Computer Security | 3.0 | 6 | 0 | 6 | 0 |
| CS455_17 | 400++ Course | 4.0 | 6 | 0 | 6 | 0 |
| CS462 | 400++ Course | 4.0 | 6 | 0 | 6 | 0 |
| CS455_21 | 400+ | 4.0 | 6 | 0 | 6 | 0 |
| CS320 | Algorithms--Theory and Practice | 3.0 | 5 | 0 | 5 | 0 |
| MATH369 | Linear Algebra | 3.0 | 5 | 1 | 4 | 4 |
| STAT301 | Introduction to Applied Statistical Methods | 4.0 | 4 | 1 | 3 | 3 |
| JTC372 | Tech Elective | 3.0 | 4 | 0 | 4 | 0 |
| CIS413 | Tech Elective | 3.0 | 4 | 0 | 4 | 0 |
| CO150 | Composition | 3.0 | 3 | 1 | 2 | 0 |
| CHEM107 | CS Science w/lab | 3.0 | 3 | 1 | 2 | 0 |
| SCI2++_31 | CS Science 2 w/lab | 3.0 | 3 | 1 | 2 | 0 |
| CO300 | Advanced Writing | 3.0 | 2 | 0 | 2 | 0 |
| CHEM108 | CS Science lab | 1.0 | 2 | 0 | 2 | 0 |
| SCI2++_37 | CS Science 2 w/lab | 2.0 | 2 | 0 | 2 | 0 |
| AH1xx_2 | A&H elective | 3.0 | 1 | 0 | 1 | 0 |
| AH1xx_4 | A&H elective | 3.0 | 1 | 0 | 1 | 0 |
| elec3++_15 | Tech Elective | 3.0 | 1 | 0 | 1 | 0 |
| PH121 | CS Science | 3.0 | 1 | 0 | 1 | 0 |
| DEI1xx | DEI Elective | 3.0 | 1 | 0 | 1 | 0 |
| HIST1xx | History Elective | 3.0 | 1 | 0 | 1 | 0 |
| Soc1xx | Social Science Elective | 3.0 | 1 | 0 | 1 | 0 |
| elec1xx_32 | Elective | 3.0 | 1 | 0 | 1 | 0 |
| elec1xx_33 | Elective | 3.0 | 1 | 0 | 1 | 0 |
| elec3++_34 | Elective | 3.0 | 1 | 0 | 1 | 0 |
| elec3++_35 | Elective | 3.0 | 1 | 0 | 1 | 0 |
| elec3++_36 | Elective | 3.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"]
        CS164["CS164<br/>Java (Prior) prog...<br/>C:21"]
        MATH160["MATH160<br/>Calculus I<br/>C:25"]
        CO150["CO150<br/>Composition<br/>C:3"]
        SCI2___31["SCI2++_31<br/>CS Science 2 w/lab<br/>C:3"]
        elec3___36["elec3++_36<br/>Elective<br/>C:1"]
    end

    subgraph term2["Semester 2"]
        CS165["CS165<br/>CS2--Data Structures<br/>C:20"]
        MATH161["MATH161<br/>Calculus II<br/>C:7"]
        STAT301["STAT301<br/>Introduction to A...<br/>C:4"]
        CO300["CO300<br/>Advanced Writing<br/>C:2"]
    end

    subgraph term3["Semester 3"]
        CS220["CS220<br/>Discrete Structur...<br/>C:13"]
        CS270["CS270<br/>Computer Organiza...<br/>C:15"]
        MATH369["MATH369<br/>Linear Algebra<br/>C:5"]
        CIS413["CIS413<br/>Tech Elective<br/>C:4"]
    end

    subgraph term4["Semester 4"]
        CS253["CS253<br/>Software Developm...<br/>C:11"]
        CS370["CS370<br/>Operating Systems<br/>C:8"]
        CS320["CS320<br/>Algorithms--Theor...<br/>C:5"]
        JTC372["JTC372<br/>Tech Elective<br/>C:4"]
        SCI2___37["SCI2++_37<br/>CS Science 2 w/lab<br/>C:2"]
    end

    subgraph term5["Semester 5"]
        CS314["CS314<br/>Software Engineering<br/>C:8"]
        CS356["CS356<br/>Computer Security<br/>C:6"]
        CS455_17["CS455_17<br/>400++ Course<br/>C:6"]
        CS455_21["CS455_21<br/>400+<br/>C:6"]
    end

    subgraph term6["Semester 6"]
        CS414["CS414<br/>400++ Course<br/>C:7"]
        CS462["CS462<br/>400++ Course<br/>C:6"]
        Soc1xx["Soc1xx<br/>Social Science El...<br/>C:1"]
        elec3___15["elec3++_15<br/>Tech Elective<br/>C:1"]
    end

    subgraph term7["Semester 7"]
        AH1xx_2["AH1xx_2<br/>A&H elective<br/>C:1"]
        CHEM107["CHEM107<br/>CS Science w/lab<br/>C:3"]
        CHEM108["CHEM108<br/>CS Science lab<br/>C:2"]
        PH121["PH121<br/>CS Science<br/>C:1"]
        elec1xx_33["elec1xx_33<br/>Elective<br/>C:1"]
        elec3___35["elec3++_35<br/>Elective<br/>C:1"]
    end

    subgraph term8["Semester 8"]
        AH1xx_4["AH1xx_4<br/>A&H elective<br/>C:1"]
        DEI1xx["DEI1xx<br/>DEI Elective<br/>C:1"]
        HIST1xx["HIST1xx<br/>History Elective<br/>C:1"]
        elec1xx_32["elec1xx_32<br/>Elective<br/>C:1"]
        elec3___34["elec3++_34<br/>Elective<br/>C:1"]
    end

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

    CS270 --> CS370
    MATH161 --> MATH369
    MATH160 --> MATH161
    CO150 --> CO300
    CS165 --> CS270
    MATH160 --> CS270
    CS164 --> CS165
    MATH160 --> CS165
    CS314 --> CS414
    CS220 --> CS253
    CS270 --> CS253
    CS165 --> CS220
    MATH160 --> CS220
    SCI2___31 --> SCI2___37
    CS370 --> CS455_17
    CS165 --> JTC372
    CS220 --> CS320
    MATH161 --> CS320
    MATH369 --> CS320
    CS253 --> CS356
    CS270 --> CS356
    STAT301 --> CS356
    CS165 --> CIS413
    CS370 --> CS455_21
    MATH160 --> STAT301
    CS253 --> CS462
    MATH161 --> CS462
    CS253 --> CS314
    CHEM107 -.-> CHEM108
    MATH160 -.-> CS164
```


---

*Generated by NuAnalytics*
