CS majors are required to take a minimum of three CS Electives in addition to their CS System Elective and CS Algorithm Elective. Depending on their interests and career goals, students can select CS Electives from multiple areas to gain broad experience or opt to focus in a certain area to gain depth. 

This page is not intended as a substitute for the catalog.
Please consult with your advisor and the catalog for the year in which you were admitted.

This is not an exhaustive list of our CS Electives. See the JMU Course Catalog for full list of CS courses.

Algorithms (required to take one)
  • CS 412 Applied Algorithms
  • CS 452 Design and Analysis of Algorithms
Artifical Intelligence
  • CS 354 Introduction to Autonomous Robotics
  • CS 444 Artificial Intelligence
  • CS 445 Machine Learning
Cyber Defense
  • CS 457 Information Security
  • CS 458 Cyber Defence
  • CS 482 Topics: Cryptography
Software Development
  • CS 343 Application Development
  • CS 347 Web-Based Information Systems
  • CS 349 Developing Interactive Multimedia
  • CS 412 Applied Algorithms
  • CS 446 Software Analysis and Design
  • CS 447 Interaction Design
  • CS 470 Parallel and Distributed Systems
Systems (required to take a least one)
  • CS 432 Compiler Construction
  • CS 450 Operating Systems
  • CS 455 Advanced Computer Networking
  • CS 456 Computer Architecture
  • CS 470 Parallel and Distributed Systems
Graduate School
  • CS 442 Logic in Computer Science
  • CS/MATH 448-449 Numerical Mathematics and Computer Applications
  • CS 452 Design and Analysis of Algorithms
  • CS 488 Computer Graphics Applications
Independent Study

CS 497 Advanced, independent study course

Back to Top