The Software Systems Track

The Software Systems track is for students who want to pursue knowledge of software development and software systems methodologies and technologies. Software plays the key role in practical, real-world computing systems and applications. This track enables students to understand and master classic and current software systems, and provides the fundamentals for later self-study of future software systems.

1. Overall Requirements

Students must complete at least a total of 30 graduate credits.

  1. Fulfill the twelve point core requirement; three core courses COMS W4115, COMS W4118 and COMS W4156 are prerequisites for this track.
  2. Two 4000-level courses (6 points) selected from the list of section 3.
  3. Two 6000-level courses (6 points) selected from the list of section 4.
  4. Six points of general elective graduate courses; at least three of these points must be CS graduate courses.
  5. Students using previous courses to fulfill core requirements may complete the 30 graduate credits by expanding their electives, selected either from the track or from other graduate courses; at most three points overall may be from "non-technical" graduate courses.

2. Prerequisites

Candidates must complete the core courses W4115, W4118 and W4156, or equivalent imported courses, to develop a fundamental understanding of software systems. Ideally, students should complete these courses prior to pursuing track courses, but they may be taken concurrently with track courses. 

For the core requirement, students must choose at least one course from the following three, in addition to the three core prerequisites:

CSOR W4231 Analysis of Algorithms

COMS W4701 Artificial Intelligence

COMS W4824 Computer Architecture (same as CSEE W4824 Computer Architecture)

 

3. 4000-level Elective Track Courses

Candidates are required to complete at least two 4000-level courses (6 points) selected from the following list of track courses:

Course ID

Title

COMS W4111

Introduction to Databases

COMS W4112

Database System Implementation

COMS W4117

Compilers and Interpreters

COMS W4130
Principles and Practice of Parallel Programming

COMS W4170

User Interface Design

COMS W4187

Security Architecture and Engineering

COMS W4444

Programming and Problem Solving

COMS
W4460

Principles of Innovation and
Entrepreneurship

COMS W4995*

Topics in Computer Science


*Topics in Computer Science (4995) sections must be approved as qualifying "software systems" track courses by your Software Systems Track Advisor. Typically this would mean topics offered by a software systems faculty member or by an affiliated adjunct.

**This list of offerings is tentative.  Check the registrar's website for definitive information.

4. 6000-level Elective Track Courses

Candidates are required to complete at least two 6000-level courses (6 points) selected from the following list of track courses: 

Course ID

Title

COMS E6111

Advanced Database Systems

COMS E6117

Topics in Programming Languages and Translators

COMS E6118

Operating Systems II

COMS E6121
Reliable Software

COMS E6125

Web-Enhanced Information Management

COMS E6901*

Projects in Computer Science

COMS E6998*

Topics in Computer Science


*Projects in Computer Science (6901) and Topics in Computer Science (6998) courses must be approved as qualifying "software systems" electives by your Software Systems Track Advisor. Typically this would mean topics/projects offered by a software systems faculty member or by an affiliated adjunct. Although rarely used, COMS E6900 Tutorial in Computer Science can be substituted for E6901 with the advisor's approval. 

**This list of offerings is tentative.  Check the registrar's website for definitive information.

5. General Electives

Candidates are required to complete at least six additional graduate points at or above the 4000 level; at least three of these points must be CS, the other three points may be technical or non-technical electives approved by the track advisor. At most three credits overall of the 30 graduate credits required for the MS degree may be "non-technical".

Important note: Not all COMS or SEAS courses qualify as "technical", a few are considered "non-technical" (most non-SEAS courses are considered "non-technical", but a few may be deemed "technical").  Please complete a non-tech approval form, and once it is signed, forward it to Janine Maslov or Remi Moss. 

** Known non-technical course **

COMS W4995 The Business of Software Delivery

6. Track Planning

Please visit the Directory of Classes to get the updated course listings. If you would like to see how often the courses are offered, please visit the course page on the CS Department website.  

Not all courses are offered every semester, or even every year; a few courses are offered only once every two or three years or even less frequently. Among the core courses, 4115, 4118, 4701, and 4231 are normally offered every semester (fall and spring) but 4156 and 4824 are normally offered only one semester per year and which semester (fall vs. spring) may vary. Among the 4000-level track electives, only 4111 is normally offered every semester; none of the 6000-level track courses are offered every semester and some are not even offered every year. There are, however, typically one or more relevant 4995 and/or 6998 offerings each semester, and its generally possible to find a suitable 6901 project any semester. For more information, please see the SEAS Bulletin CS course-offering schedule (Please note that the course-offering schedule can change due to unforeseeable circumstances; thus, it should only be used as a reference. Past performance does not guarantee future results.)

7. Contact

Please direct all questions concerning the Software Systems Track to your designated advisor, which should be , or . However, track students seeking approvals for CPT or OPT should instead contact .

8. Graduation

Candidates preparing for graduation should submit a completed application for degree to the Registrar's Office and submit a track graduation form to CS Student Services (an example of a completed form is available here).


Last updated September 19, 2012.