CS Minor

The Computer Science Minor is intended to provide students with a core foundation, as well as an opportunity to focus their advanced courses in a particular area.  The Director of Undergraduate Studies advises all the CS minors.  Students should declare as soon as they begin studies in the department.  Students should also consult the undergraduate advising manual for more information about the department and undergraduate life in general.

All courses applied toward the minor requirements must be taken for a grade (not S/U) and receive at least a C- grade.

Core Courses

Student must take at least 4 core courses to get a solid foundation in the field, for a total of 14 credits:

  • 600.107/601.107 Intro Programming in Java (or AP credit, or equivalent background) – 3 credits
  • 600.120/601.220 Intermediate Programming – 4 credits
  • 600.226/601.226 Data Structures – 4 credits
  • At least one of:
    • 600.233/601.229 Computer System Fundamentals (600.120/601.220 is pre-req, this course is a pre-req for some systems upper level courses)
    • 600.271/601.231 Automata and Computation Theory (550.171/553.171 is a pre-req, this course is a pre-req for some analysis upper level courses)

Although not explicitly required, EN.553.171 Discrete Math is also strongly recommended for CS minors.

Upper Level Courses

Students must take at least 3 upper level (600/601.3xx or above) CS courses, each worth at least 3 credits.  These must be chosen in consultation with the minor advisor to form a cohesive program of study.  One way to achieve this is to choose all three courses within the same area: Analysis, Systems, or Applications.  Course descriptions include these tags, and there is also a list of upper level courses with area designators posted on the department website.

Back to top