Computer Science The Master of Science program with a major in Computer Science is designed to enhance career options for a broad mix of students, from those with an academic background in computer science just beginning their careers to those who have worked for years as computer professionals who may have academic credentials in other fields.

Although no specific undergraduate major is required, applicants must have a baccalaureate degree from an accredited school. Preferred (but not required) for admission is some relevant work experience. Students will be admitted only if their academic accomplishments, work experience, and motivation predict the ability to complete the program successfully. (See the admissions requirements section of this catalog for specific admissions information and transfer of credit policies). Students with baccalaureate degrees from Southern Polytechnic State University should receive approval before taking graduate courses with content similar to that of undergraduate classes they have taken. Students may include a graduate course approved in advance that is taken in another department at S.P.S.U. or at another institution while admitted to this program. (Additional regulations about joint enrollment or transient status may apply).

The requirements are 36 hours of graduate work as designated below. A grade of "B" or better for each course is required.

Students applying to the program who do not have a degree in Computer Science or Software Engineering may be accepted conditionally. Upon acceptance the student's transcripts will be evaluated by the admissions committee. If the committee determines necessary prerequisite courses the student must take before being fully admitted into the Master's Program, the student will be admitted with Conditionally Matriculated status. The required prerequisite courses are listed on the student's conditional acceptance letter and are required to make up deficiencies in the student's academic background. Upon completion of the prerequisite courses with a grade of "B" or better, the student will be fully admitted into the MSCS program and eligible to register for regular Master's (6000 level) coursework. None of the prerequisite courses (5000 level) will count towards the Master's Program.

Transition Courses (none of these courses may be used to meet degree requirements)
 
      Hours
CS 5123 Advanced Programming and Data Structures 3
CS 5153 Database Systems 3
CS  5183 Object-Oriented Programming in C++ 3
CS 5223 Computer Architecture 3
CS 5243 Operating Systems 3
CS 5424 Mathematical Structures for Computer Science 4

Some students may need to start with the undergraduate Computer Science I course.
 

Required Core Courses (18 hours)
CS 6023 Research Methods and Presentations 3
CS  6123 Programming Language Concepts 3
CS 6153 Advanced Database Systems 3
CS 6223 Advanced Computer System Architecture 3
CS 6423 Algorithmic Processes 3
SE 6623 Software Engineering I 3

Required Electives (one required from each group; 9 hours)
[SE 6743 may be used in at most one of the groups]
 
a. CS 6323 Human Factors 3
  SE 6643 Issues in Information Management 3
  SE 6743 Object-Oriented Analysis and Design 3
         
b. CS 6243 Advanced Concepts in Operating Systems 3
  CS 6263 Computer Networks 3
  CS 6283 Real-Time Systems 3
         
c. SE 6723 Software Engineering II 3
  SE 6743 Object-Oriented Analysis and Design 3
  SE 6883 Formal Methods in Software Engineering 3

Required: Project (3 hours) or Thesis (6 hours)
 
CS 7701-7703* Master's Project 1 to 3
CS 7801-7803* Master's Thesis 1 to 3

* May be repeated as needed. Usual enrollment is 3 hours at a time. Exactly 3 hours must be applied toward degree for project or 6 hours for thesis.

Electives:

The student may choose electives as needed to complete 36 hours. Any CS/SE course at the 6000-level not taken to meet a requirement above but approved by the department for MSCS may be used.

Note: A maximum of 9 semester hours of work from transfer credit or credit by examination may be counted toward the degree.