This page describes various options for technical tracks. However, you must consult with your advisor before filling in your technical-track declaration form.

Note: BA degree students must choose either (1) the Software Engineering and Design technical track or (2) a technical track, complete a significant project or senior thesis in their non-technical or technical tracks and take a WID course in their second major.

Note: For a course to count towards the technical track requirement, it must have a pre-requisite of at least CSCI 2113.


Computer Security and Information Assurance: For students interested in the design and implementation of secure computing infrastructures.

  • BS degree: Take at least three courses from the following list:
    CSCI 4331, CSCI 4531, CSCI 4541.
    Graduate level courses may be substituted with advisor approval.
  • BA degree: CSCI 4331, CSCI 4531, CSCI 4541.
    Graduate level courses may be substituted with advisor approval.

Computer Graphics and Digital Media: For students interested in computer graphics, visualization, animation and digital media. Take the three following courses: CSCI 4554: Computer Graphics I, CSCI 6554: Computer Graphics II, CSCI 6555: Computer Animation.


Foundations and Theory: for students interested in exploring theory or developing strong foundations, perhaps in preparation for graduate work in Computer Science. Take three courses from CSCI 4331, CSCI 4572, CSCI 4341, CSCI 6212, CSCI 6311, CSCI 6312, CSCI 6351, CSCI 6343, CSCI 6318.


Systems: for students interested in the design, implementation and management of hardware and software systems. Take three courses from CSCI 3410,CSCI 4417, CSCI 4431, CSCI 4237, CSCI 4415, CSCI 4541, CSCI 4235, CSCI 6431, CSCI 6433, CSCI 6434, CSCI 6421, CSCI 6441, CSCI 6442.


Software engineering and Application Development (BS program): for students interested in the software engineering concepts and techniques required for the design and implementation of large software systems and applications. Take three courses from CSCI 4561, CSCI 4235, CSCI 6235, CSCI 6234, CSCI 6231, CSCI 6232, CSCI 6233,
CSCI 6561.

Software engineering and Design (BA program): Take one course from CSCI 4561, CSCI 4235, CSCI 6235, CSCI 6234, CSCI 6231, CSCI 6232, CSCI 6233, CSCI 6561, together with the three-course senior design sequence.In this case your track may be titled Software engineering and Design.


AI: Take at least three courses from the following list: CSCI 4521: Introduction to Mobile Robotics, CSCI 4527: Introduction to Computer Vision, CSCI 4525: Introduction to Robot Manipulation and Walking,CSCI 4364: Machine Learning, CSCI 4511: Introduction to Artificial Intelligence, CSCI 4572: Computational Biology, CSCI 4314: Continuous Algorithms, CSCI 6351: Data Compression, CSCI 6443: Data Mining, CSCI 6515: NLU.


Data Science: Take at least three courses from the following list: CSCI 4364: Machine Learning, CSCI 6515: NLU, CSCI 6351: Data Compression,CSCI 6443: Data Mining, CSCI 4341: Continuous Algorithms.
Computational Mathematics and Sciences: Take at least three courses from the following list: CSCI 4331: Crypto, CSCI 4341: Continuous Algorithms, CSCI 4572: Computational Bio,CSCI 6313: Advanced Discrete Structures, CSCI 6343: Numerical Solutions of Algebraic Systems, Algorithms for CS Course, Numerical Linear Algebra.
Individually designed technical track: This track is designed by you with the agreement of your advisor.It will comprise at least three courses, not necessarily with CSci designations, but the content must meet a broad technical requirement that it be closely related to the disciplines of computing.