In ITU’s M.S. Computer Science program, you’ll prepare for a successful career as a computer scientist or in any field that utilizes computerization. As essential portion of your studies will be dedicated to understanding and researching algorithms, as well as developing new ones. You’ll master operating systems, compilers, internals of databases, visual and sound recognition, and robotics—as well as acquire in-depth theoretical knowledge to contribute to computerization in fields not yet discovered.
As an ITU computer science student, you can:
- Get hands-on research experience in embedded systems, green energy, AI robotics, and more
- Learn from instructors who come from industry-leading companies like ARM, Fujitsu, and Intel, and receive insider insight into the latest trends
- Gain global perspective in current research developments through our unique partnerships with schools around the world, like Peking University in China
- Be part of a STEM program designed to teach students the skills required to thrive in Silicon Valley’s ever-evolving tech sector
- Bachelor’s degree with a minimum GPA of 2.75, or a Master’s degree with a minimum GPA of 3.0.
- Proof of English proficiency:* All applicants whose native language is not English and who did not receive either a bachelor’s or graduate degree from an English-speaking institution must take an English proficiency test.
- Test of English as a Foreign Language (TOEFL) examination: score of 72 or better for the internet-based test (iBT).
- International English Language Testing System (IELTS) examination: band score of 6.0 or better for the academic module. Demonstrated commitment to contribute to and complete the program
* U.S. citizens or U.S. Permanent Residents who have earned an undergraduate or graduate degree from a regionally accredited institution in the U.S. are waived from this requirement.
Here are our program learning outcomes:
- Lead and organize Information Technology (IT) implementations at companies and institutions.
- Invent and improve algorithms for storing, accessing, processing, and analyzing collected data.
- Invent real-time computation methods for analysis and processing of data in robotics (optical, sound, and other real-time data from digital sensors).
- Create innovative and useful features for modern operating systems (multiprocessor, multiprocessing, distributed).
- Contribute to research and development of algorithms in all areas that are now and in the future subject to computerization.
- Clearly explain Computer Science concepts in research, development, and educational institutions.
- Show proficiency and skills in the most important areas of state of the art computer science.
The curriculum consists of 4 required (core) courses, an Internship, ITU presents and a sufficient number of elective courses to accumulate 36 total credit units.
- Optimization Techniques
- iPhone Application Programming
- Advanced Applied Mathematics Methods
- Python Programming
- 4 Core Courses: 12 Credit Hours
- 1 Capstone Course: Project or Thesis: Up to 3 credit hours (counts as Elective)
- Internship: 1 Credit Hour
Elective Courses: 11-20 Credit Hours
- Elective Courses: 11-20 Credit Hours
- Cross-Disciplinary Course: Up to 3 credit hours (counts as Elective)
- Transfer Credits:: Up to 9 credit hours (counts as Elective)
36 Total Credit Hours
- CSC 501 Discrete Structures
- CSC 502 Principles of OS & Distributed Systems
- CSC 620 Programming Language Theory
- CSC 680 Advanced Computer Algorithms
Capstone Course or Thesis
A capstone is the summative component of the masters degree program. It consists of either a Capstone Project or a Master’s Thesis with the purpose to allow assessment of a student’s learning and qualification to receive the master’s degree. Students have the option to either complete CSC690 or CSC695, but not both. Completing either course means the completion of the capstone. The capstone is also meant to be practical and useful. The student should choose an area that is uniquely and personally important and research or perform a project in that area. The capstone is performed by arrangement with the capstone advisor.
- CSC 690 Capstone Project
- CSC 695 Master’s Thesis
Capstone Course or Thesis
A capstone is the summative component of the master's degree program. It consists of either a Capstone Project or a Master’s Thesis with the purpose to allow assessment of a student’s learning and qualification to receive the master’s degree. Students have the option to either complete CSC690 or CSC695, but not both. Completing either course means the completion of the capstone. The capstone is also meant to be practical and useful. The student should choose an area that is uniquely and personally important and research or perform a project in that area. The capstone is performed by arrangement with the capstone advisor.
- CSC 690 Capstone Project
- CSC 695 Master’s Thesis
ITU provides for Internship through Curricular Practical Training with a variety of employers. At least 1 unit of Internship must be completed. Exceptions can be granted by the department chair, in which case the missing credit units must be made up with electives. Halftime internship (employment <= 20 hrs/week) accounts for 1 credit unit per trimester, full-time internship accounts for 3 credit units per trimester. If the students changes the employer after week four, no academic credit will be given for the internship.
Each student will be supervised by an adviser at ITU and by a supervisor at their job. Students must prepare and present a comprehensive report to demonstrate how they have implemented the program core values in the various practical aspects of their work.
The regulations are described in the Internship Handbook
- CFL591 Internship Preparation (1)
- CFL592 Internship Preparation (2)
- INT593 Internship P is part-time (1), F is full time (3)
The remaining units must be chosen from the list of electives shown below.
- AMS 510 Linear Algebra (3)
- AMS 512 Applied Mathematics Methods (3)
- AMS 520 Optimization Techniques (3)
- AMS 530 Numerical Analysis (3)
- AMS 540 Discrete Mathematics (3)
- AMS 552 Probability & Statistics for Engineers (3)
- AMS 612 Advanced Applied Mathematics Methods (3)
- AMS 620 Advanced Optimization Techniques (3)
- AMS 750 Abstract Algebra (3)
- CEN540 Network security techniques (3)
- CEN542 Digital Image Processing (3)
- CEN551 Computer Architecture (3)
- CEN566 Routing in Computer Networks (3)
- CSC507 Windows Administration (3)
- CSC511 OO Programming with C++ (3)
- CSC513 C# Programming (3)
- CSC514 OO Programming with Objective-C (3)
- CSC515 I-Phone Application Development (3)
- CSC518 OO Programming with Java (3)
- CSC519 Android Application Development (3)
- CSC520 Python Programming (3)
- CSC522 R Language Programming (3)
- CSC525 HTML/CSS Programming (3)
- CSC527 Mobile Web Development (3)
- CSC532 Client Programming with JS/jQuery (3)
- CSC535 Server Programming with PHP (3)
- CSC540 Computer Graphics (3)
- CSC550 Big Data (3)
- CSC555 Bio Informatics (3)
- CSC560 Introduction to Data Science (3)
- CSC570 Web Security Fundamentals (3)
- CSC575 Current Topics in CSC (3)
- CSC580 Computer Algorithms (3)
- CSC605 Principles of Operating Systems (3)
- CSC610 Compiler Design (3)
- CSC618 GUI Development with Java (3)
- CSC625 Advanced HTML5 (3)
- CSC630 Information Retrieval (3)
- CSC631 Data Mining (3)
- CSC632 Natural Language Processing (3)
- CSC633 Machine Learning (3)
- CSC635 Practical Neural Networks Techniques (3)
- CSC640 Advanced Computer Graphics (3)
- CSC642 Computer Graphics with WebGL (3)
- CSC650 Big Data Analytics (CPO) (SAS or SPSS)
- CSC682 Graph Algorithms (3)
- CSC730 Cryptography & Cryptanalysis (3)
- CSC750 Coding Theory (3)
- CSC760 Advanced Topics in Data Science (3)
- DGA524 Virtual Reality/Augmented Reality (3)
- SWE500 Software Engineering (3)
- SWE510 Information Security Countermeasures (3)
- SWE518 UI Design & Implementation (3)
- SWE520 Principles of Ethical Hacking (3)
- SWE530 Cloud Computing Security (3)
- SWE535 Cloud and Virtualization Security (CPO) (3)
- SWE550 Software Project Management (CPO for ACP)
- SWE560 Principles of Database Systems (3)
- SWE561 Cloud Computing (3)
- SWE562 Oracle Database Management/Administration (3)
- SWE600 Advanced Software Engineering (3)
- SWE610 Ruby on Rails (3)
- SWE615 Angular JS (3)
- SWE618 Software Design using UML (3)
- SWE620 Scala Programming (3)
- SWE630 Semantic Web (3)
- SWE632 Software Risk Management (3)
- SWE633 Software Refactoring (3)
- SWE640 Artificial Intelligence (3)
- SWE645 Performance Critical Design (3)
- SWE646 Model Driven Architectures (3)
Not allowed for credit in MSCS:
- SEN760 SWE540 SQA/Manual Testing (for SWE only)
- SEN860 SWE542 SQA/manual/auto/perf Testing
- SEN930 SWE 544 SQA/Software Testing Tools (3)
- SEN960 SQA/Performance Testing (3)
For more information on program requirements and course, descriptions click here.