Skip to main content

CSC Undergraduate Restricted Electives

These are the planned classes for each semester. The CSC Department may update this list at any time. The items listed in MyPack's Enrollment Wizard will be the planned final offerings by the department, and may differ from this list.

There is no limit to the number of CSC 495 sections students may use to satisfy degree requirements, as long as each section covers a different topic.

Click on the semester below to see the planned classes for that semester. Course descriptions and up-to-date requisite information are available on https://webappprd.acs.ncsu.edu/php/coursecat/directory.php.

A note about reserved seats: Some courses have seats that are reserved for Concentration students. This means that X number of seats are reserved for students currently enrolled in a concentration and Y number are available for CSC majors without a concentration. Once the number of unreserved seats is full, students may add themselves to the waitlist -- all sections have a waitlist. If the waitlist is full, please keep checking back for an open seat on the waitlist. The number of reserve seats will be lowered throughout the enrollment period and students on the waitlist will be enrolled first.

A note about waitlists: All courses on the lists below have a waitlist. Students who are on the waitlist will be enrolled in an available, unreserved seat if they meet the requisites. Students may not be enrolled in a time conflict, so use the "swap to waitlist" feature in the enrollment wizard so your enrollment may be processed without delay.

Spring | Summer | Fall | Concentration Approved Special Topics

Spring 2024

CourseTitlePre-RequisitesDetails
CSC 236 – 001AssemblyCSC 230 or ECE 209Some seats are reserved for CySec concentration students.
CSC 342 – 001Applied Web-based Client-Server ComputingCSC 216 (C or higher)n/a
CSC 401 – 001Data and Computer Communications Networks[ST 370 or ST 371] and CSC 246n/a
CSC 405 – 001Computer SecurityCSC 246Some seats are reserved for CySec concentration students. This course is only offered in the Spring.
CSC 411 – 001Intro to AICSC 316 or ECE 309Some seats are reserved for AI and GDC concentration students. This course is the undergraduate version of CSC 520. Students cannot get credit for both courses.
CSC 411 – 002Intro to AICSC 316 or ECE 309Some seats are reserved for AI and GDC concentration students. This course is the undergraduate version of CSC 520. Students cannot get credit for both courses.
CSC 415 – 001Software SecurityCSC 316 or ECE 309Some seats are reserved for CySec concentration students. This course is the undergraduate version of CSC 515. Students cannot get credit for both courses.
CSC 416 – 001CombinatoricsGrade of C or better in either MA 225 or CSC 226Offered by MA department
CSC 422 – 001Automated Learning and Data Analysis[ST 370 or ST 371] and [MA 305 or MA 405], and [CSC 226 or LOG 201 or MA 225]Some seats are reserved for AI concentration students.
CSC 428 – 001Introduction to Numerical Analysis II[MA 305 or MA 405] and [CSC 111 or CSC 112 or CSC 113 or CSC 114 or CSC 116 or MA 116 or PY 251 or ST 114 or ECE 209]This counts as ORE Group A or B or an AI RE only and is offered by the MA department.
CSC 442 – 001Introduction to Data Science[MA 305 or MA 405] and [ST 305 or ST 312 or ST 370 or ST 372 or ST 380] and [CSC 111 or CSC 112 or CSC 113 or CSC 114 or CSC 116 or ST 114 or ST 445]Some seats are reserved for AI concentration students.
CSC 453 – 001Intro to IoT Systems[CSC 246 or ECE 306] and [CSC 230 or ECE 209] and [CSC 316 or ECE 309]Students will be expected to purchase equipment for the course, costing about $70-$130.
CSC 456 – 001Computer Architecture and MultiprocessorsCSC 236 and CSC 316n/a
CSC 472 – 001Cybersecurity ProjectsCSC 471Some seats are reserved for CySec concentration students. This course is offered in Spring only.
CSC 484 – 001Building Game AICSC 316 or ECE 309Some seats are reserved for GDC concentration students. This course is the undergraduate version of CSC 584 and is cross-listed. Students cannot get credit for both courses.
CSC 495 – 001Self-driving Cars[MA 305 or MA 405] and [ST 370 or ST 371]. Python experience recommended.See notes in Enrollment Wizard when available.
CSC 495 – 002Software Systems Design & AnalysisCSC 246, CSC 333, and CSC 326See notes in Enrollment Wizard when available.
CSC 495 – 003Robot Motion Planning[MA 305 or MA 405] and [CSC 316 or ECE 309]See notes in Enrollment Wizard when available.
CSC 495 – 004Accelerating Deep LearningCSC 316 or ECE 309. Python experience recommended.See notes in Enrollment Wizard when available. This section is approved as a CSC AI RE. Some seats are reserved for AI concentration students.
CSC 495 – 053Introduction to Quantum ProgrammingECE 309 or CSC 316; comfortable with object-oriented programming, and willing to learn Python. This class is cross-listed with ECE 492 – 047 .
CSC 495 – 054Signal Processing Quantum Computing[ST 370 or ST 371] and [MA 305 or MA 405] and [CSC 316 or ECE 309]This class is cross-listed with ECE 492 – 054.
CSC 498 – 001Independent Projectn/aClick here for more information.
CSC 499 – 001Independent Researchn/aClick here for more information.
Last updated: 10/12/2023

Summer 2024

CourseTitlePre-RequisitesDetails
CSC 401Data and Computer Communications Networks[ST 370 or ST 371] and CSC 246Offered Summer I, 5 week
CSC 498Independent Projectn/aClick here for more information. Offered as 5 week Summer I or II, or as 10 week.
CSC 499Independent Researchn/aClick here for more information. Offered as 5 week Summer I or II, or as 10 week.
Last updated: 10/12/2023

Fall 2024

CourseTitlePre-RequisitesDetails
CSC 236
CSC 302
CSC 342
CSC 401
CSC 4112 sections
CSC 416offered by MA dept (TBD offering)
CSC 417
CSC 419DevOpsMight be offered as a CSC 495
CSC 422
CSC 440
CSC 442
CSC 447
CSC 450
CSC 455
CSC 461
CSC 471
CSC 474
CSC 481
CSC 495Animal-Centered Computing
CSC 495Theory of Algorithms
CSC 495Human Centered Security
CSC 495Introduction to Robot Motion Planning
CSC 495Natural Language Processing
CSC 495Software Architectures for the Cloud
CSC 495Product Management
Last updated 12/8/2023

Spring 2025

Please check back in February 2024.

CourseTitlePre-RequisitesDetails
CSC 236
CSC 342
CSC 4012 sections
CSC 402
CSC 405
CSC 4112 sections
CSC 412
CSC 415
CSC 422
CSC 433
CSC 442
CSC 453
CSC 454
CSC 456
CSC 462
CSC 472
CSC 474
CSC 484
CSC 486
CSC 495Introduction to Mobile Robotics
CSC 495Introduction to Responsible Machine Learning
CSC 495Robust and Efficient Deep Learning
CSC 495Self-Driving Cars: Theory and Practice
CSC 495Product Management
CSC 495Software for Robotics
CSC 495Software Systems Design
CSC 495Testing
Last updated 12/8/2023

Concentration Approved Special Topics

The below table includes topics approved as concentration restricted electives. Students who take these sections must fill out the Degree Audit Shift Request form in order to have it count correctly in the degree audit.

If the course is offered as CSC 495, that is appropriate for undergraduate students.

If it is listed as CSC 591, it may only be taken by ABM or CSC Honors students.

TopicConcentration Category
Deep Learning Beyond AccuracyCSC AI Restricted Elective
Neural NetworksCSC AI Restricted Elective
Natural Language ProcessingCSC AI Restricted Elective
Machine Learning for User-Adaptive SystemsCSC AI Restricted Elective
Generative AI For Software EngineeringCSC AI Restricted Elective
Machine Learning with GraphsCSC AI Restricted Elective
Accelerating Deep LearningCSC AI Restricted Elective
LLMs for SecurityCSC Cybersecurity Restricted Elective
Cellular and Telephone Network Security CSC Cybersecurity Restricted Elective
Last updated: 11/15/2023