-
9-course:
-
Algorithms:
MPCS 55001 Algorithms
-
MPCS 55003 Intermediate Algorithms
-
MPCS 55005 Advanced Algorithms
-
Programming:
MPCS 51036 Java Programming
-
MPCS 51040 C Programming
-
MPCS 51043 Swift Programming
-
MPCS 51100 Advanced Programming
-
Computer Systems, Networks and Architecture:
MPCS 53001 Databases
-
MPCS 53003 Advanced Databases
-
MPCS 52011 Introduction to Computer Systems
-
MPCS 51300 Compilers
-
MPCS 54001 Networks
-
MPCS 52010 Computer Architecture
-
MPCS 51400 Functional Programming
-
MPCS 52030 Operating Systems
-
MPCS 52040 Distributed Systems
-
12-course:
-
1. Complete 6 core courses (OR 5 core courses + 4 specialization courses)
-
(1) Algorithms course
-
(1) Programming course
-
(3) Computer Systems, Networks and Architectures courses
-
(1) Additional Algorithms or Computer Systems, Networks and Architectures
core course, or a practicum course.
Courses that satisfy each core area:
-
Algorithms:
-
MPCS 55001 Algorithms
-
MPCS 55003 Intermediate Algorithms
-
MPCS 55005 Advanced Algorithms
-
Programming:
MPCS 51036 Java Programming
-
MPCS 51040 C Programming
-
MPCS 51042 Python Programming
-
MPCS 51043 Swift Programming
-
MPCS 51100 Advanced Programming
-
Computer Systems, Networks and Architecture:
MPCS 53001 Databases
-
MPCS 53003 Advanced Databases
-
MPCS 52011 Introduction to Computer Systems
-
MPCS 51300 Compilers
-
MPCS 54001 Networks
-
MPCS 51020 Computer Architecture
-
MPCS 51400 Functional Programming
-
MPCS 52030 Operating Systems
-
MPCS 52040 Distributed Systems
-
2. Complete three (3) specialization courses (OR 5 core courses + 4
specialization courses):
Software Engineering
MPCS 51030 iOS Application Development
-
MPCS 51240 Product Management
-
MPCS 51230 User Interface and User Experience Design
-
MPCS 51200 Introduction to Software Engineering
-
MPCS 51044 C++ for Advanced Programmers
-
MPCS 52553 Web Development
-
MPCS 51050 OO Architecture: Patterns, Technologies, Implementations
-
MPCS 51031 Android App Development
-
MPCS 51220 Applied Software Engineering
-
MPCS 51221 Applied Software Engineering II
-
High Performance Computing
MPCS 55005 Advanced Algorithms
-
MPCS 58001 Numerical Methods
-
MPCS 51087 High Performance Computing
-
MPCS 51083 Cloud Computing
-
MPCS 56420 Bioinformatics for Computer Scientists
-
MPCS 58020 Time Series Analysis and Stochastic Processes
-
Data Analytics
MPCS 51083 Cloud Computing
-
MPCS 53110 Foundations of Computational Data Analysis
-
MPCS 53003 Advanced Databases
-
MPCS 53013 Big Data
-
MPCS 53111 Machine Learning
-
MPCS 53112 Advanced Data Analytics
-
MPCS 53120 Applied Data Analysis
-
MPCS 56420 Bioinformatics for Computer Scientists
-
Mobile Computing
MPCS 51030 iOS Application Development
-
MPCS 51031 Android Application Development
-
MPCS 51032 Advanced iOS
-
MPCS 51033 Backends for Mobile Applications
-
MPCS 51230 User Interface and User Experience Design
-
MPCS 51034 React Native Application Development
-
3. Complete three (3) elective courses.
-
4. No double counting of classes. No course may fulfill more than one
requirement.