Computer Science M.S.
30 credits – Thesis track
33 credits – Non-thesis track
Purpose of degree
The purpose of the degree is to prepare students for technical leadership roles which requiring greater knowledge, skills and responsibility than would the bachelor’s degree. The program provides advanced, in-depth instruction on cutting-edge computer science areas such as machine learning, parallel computing, and computer security. It develops skills, such as the ability to perform independent research, which are essential to success in the computer technology field. The program also provides excellent preparation for those wishing to enter a Ph.D. program.
Mission statement of the department
The mission of the Computer Science Department is to prepare students to become successful computer science problem solvers.
Special resources of the department
The Computer Science Department has modern, well-equipped laboratories and an active externally funded research program.
Illustrative plan of study
There are two options for the Master of Science in Computer Science: a thesis option and a non-thesis programming language option. For either option, the degree candidate must select a minimum of 18 credits of courses open only to graduate students.
Option I – Thesis Option – 30 Semester Hours
Programming Languages Area
Required:
At least one of the following:
CPSC 531 | Advanced Topics in Software Engineering | 3 credits |
CPSC 532 | Natural Language Processing | 3 credits |
CPSC 533 | Compiler Construction | 3 credits |
CPSC 535 | Parallel Computing | 3 credits |
Operating Systems/Architecture Area
Required:
At least one of the following:
CPSC 542 | Operating System Design | 3 credits |
CPSC 544 | Real Time Systems | 3 credits |
CPSC 545 | Networking and Data Communications | 3 credits |
CPSC 547 | Distributed Object Programming | 3 credits |
CPSC 548 | Applied Network Security | 3 credits |
Theory
At least one of the following:
CPSC 562 | Theory of Computation | 3 credits |
CPSC 563 | Theory of Abstract Languages | 3 credits |
Data/File Structures
At least one of the following:
CPSC 550 | Algorithmic Graph Theory | 3 credits |
CPSC 553 | Database Systems | 3 credits |
CPSC 554 | Data Structures and Algorithm Analysis | 3 credits |
Topics/Electives
At least one additional course numbered 520 or higher.
Culminating Activities
Required:
Option II – Non-Thesis Option – 33 Semester Hours
Programming Languages Area
Required:
At least one of the following:
CPSC 531 | Advanced Topics in Software Engineering | 3 credits |
CPSC 532 | Natural Language Processing | 3 credits |
CPSC 533 | Compiler Construction | 3 credits |
CPSC 535 | Parallel Computing | 3 credits |
Operating Systems/Architecture Area
Required:
At least one of the following:
CPSC 542 | Operating System Design | 3 credits |
CPSC 544 | Real Time Systems | 3 credits |
CPSC 545 | Networking and Data Communications | 3 credits |
CPSC 547 | Distributed Object Programming | 3 credits |
CPSC 548 | Applied Network Security | 3 credits |
Theory
At least one of the following:
CPSC 562 | Theory of Computation | 3 credits |
CPSC 563 | Theory of Abstract Languages | 3 credits |
Data/File Structures
At least one of the following:
CPSC 550 | Algorithmic Graph Theory | 3 credits |
CPSC 553 | Database Systems | 3 credits |
CPSC 554 | Data Structures and Algorithm Analysis | 3 credits |
Topics/Electives
At least three additional courses numbered 520 or higher.
Culminating Activities
Required:
No graduate student who has an A, B, or incomplete grade in a graduate course may re-enroll for credit in the course for a second time without approval of the department chair and the department graduate coordinator.
Admission requirement and deadlines
Graduate school requirements and deadlines apply.
Graduate Independent Study
You may take Graduate Independent Study to fulfill part of your electives, which allows the student to pursue special topics beyond regular courses. It cannot cover the same topic as your project or thesis. The application must include a study plan and objectives, and needs to be approved by a supervising fulltime faculty member and the department.
Graduate Assistantships
Graduate Assistantships (GAs) are available through the department. These are awarded based upon merit and achievement to full-time students in the graduate program. GAs do not teach classes, but complete projects and tasks assigned by professors.
The GA is awarded for the first year of full-time study, with the possibility of extension through the first summer. Prospective students should apply for a graduate assistantship at the time of original application to the program, using the application form online.
For more information, contact the department chair and/or graduate coordinator at 570-422-3666.