Master of Science in Computer Science
The Master of Science in Computer Science (MSCS) program of the College of Computer Studies is a two-year post-graduate course designed to train students in undertaking high-level research in the advanced field of computing. In the course of the program students develop a rigorous and deeper understanding of the theoretical and underlying principles of computation in the areas of programming languages, computer architecture, operating systems, algorithms and complexity, automata, and intelligent systems. By engaging students to work in research laboratories, they are further equipped with technical project management skills to lead in the advancement of computer science research. The program makes extensive use of published research papers and journals to encourage students to develop new or adapt existing algorithms, and to explore their innovative applications in various domains. These heavily rely upon independent research by students, and provide opportunities to integrate theories and disseminate research results to local and international audiences.
Students coming from non-CS and non-IT academic backgrounds who wish to take the program are prepared through a series of remedial courses. Candidates’ understanding of the theories in computing, and their proficiency and style in written and oral communicate are primarily attested to by the successful completion and defense of a master’s thesis.
The program is an appropriate preparation for those aspiring to discover new approaches to solving a computing problem, and to adapt existing technology to new application areas; for those seeking a career in the dynamic field of computing; and for those intending to develop their skills in conducting research and further studies at the doctoral level.
The program accepts applicants who have a Bachelor’s degree in Computer Science or ITE allied fields (e.g. sciences, math, and engineering). Other Bachelor’s degrees may be considered on a case-to-case basis.
- Applicants may be required to take remedial courses depending on their degree or courses they have taken up during their Bachelor’s degree.
- Since the program will be administered in English, students will be expected to demonstrate a strong grasp of the language.
Academic Program Components
The program is composed of 18 units of foundation courses, 12 units of elective courses, and 6 units of thesis.
Foundation Courses (18 units)
- Advanced Operating Systems
- Advanced Computer Architecture
- Automata, Computability, and Formal Languages
- Theory of Programming Languages
- Methods of Research for Computer Science
- Human-Centric Computing
- Empathic Computing
- Natural Language Processing
- Neural Networks
- User Modelling
- Man-Machine Interaction
- Machine Learning
- Digital Signal Processing
- Image Processing
- Wireless Sensors
Thesis (6 units)
The final thesis provides a venue for the students to demonstrate mastery and application of learning. This requirement serves as a summative expression of what the student has learned in the program.