Effective Spring 2024, all MS CS (Computer Science) academic advising will now be performed by Dr. Kasi Periyasamy (E-mail link). If you were originally assigned to Dr. Theodore Manikas for academic advising, please note that Dr. Periyasamy will now be your advisor.
The MS-CS program allows for flexibility in course selection and allow student specialization in areas of interest. A link to the MS CS program degree plan is below:
There are four specialization areas in the MS-CS program – details can be found in the following links :
This will have the most recent SMU Graduate Catalog. Look for the Lyle School of Engineering and Computer Science links.
The Master's Degree is an extension of our undergraduate degree program in computer science. If your undergraduate degree is not in Computer Science, then you may need to take articulation courses in your first semester at SMU (see course descriptions below). Note that articulation courses are taken in addition to your required courses, so do not count as part of your 30 credit hour degree requirements. If you are unsure if you need to take either of these courses, please consult with your academic advisor.
NOTE: You may have received a message from Lyle Graduate Admissions about taking a competency exam. Please note that this exam is no longer required, thus we have discontinued the exam.
CS 7310: Python for Computer Science
Python has become the de-facto language for artificial intelligence and data science, due primarily to the wide availability of libraries that support machine learning, data analysis and visualization. This course provides a grounding in the Python programming language for students pursing study in artificial intelligence and data science. Topics include Python language fundamentals, data structures, functional programming, object-oriented programming, concurrency/multi-threading, software testing, plotting and visualization The course is intended as articulation for students entering the computer science master's degree programs. Credit cannot be applied toward a master's degree in computer science, software engineering, or security engineering.
CS 7311: Foundations of Computing
A comprehensive foundation course covering the major topic areas of computer science. Topics include computer organization, compilation and execution processes, data structures, algorithmic analysis and order of growth, function abstraction and the run-time stack, pointers and dynamic allocation, recursion, object-oriented programming concepts, processes and threads, concurrency and deadlock, and memory management. Prepares students without a computer science background for master's degree work in the Computer Science Department. Credit cannot be applied toward a master's degree in computer science, software engineering, or security engineering. Prerequisite: Ability to program in a high-level language such as Python, Java or C++. (Note: if you don't have this background, you may take CS 7310 concurrenlty with CS 7311).