Turing Programme (TP) for BComp (CS)

Preparing students for a research career in Computer Science

This four year programme is named after Alan M. Turing to commemorate this outstanding pioneer of computer science.

Alan M. Turing is an excellent role model for students of the Turing Programme, inspiring them to pursue fundamental work, to take bold new direction, and to make concrete contributions to the world. This special programme therefore aims to nurture students who aspire to engage in a pure research career in computing.

The Turing Programme is most suitable for students who love to solve technically challenging problems and are able to handle both theoretical and practical work. Students will be selected for admission into TP based on their performance in selected modules such as CS2309 and CS3230. Students in TP are expected to build a sufficient track record by the time they graduate to gain admission into the Ph.D. programmes in top schools including SoC. So, students admitted into TP will be assigned CS professors as their mentors to help them to build their track records. They must maintain a minimum CAP of 4.0 throughout their study.


Degree Requirements

Students admitted into the Turing Programme will complete the BComp(CS) degree program requirements, with the following variations:

  • They will read CS2309 CS Research Methodology (4 MCs).
  • They will take CP3208 and CP3209 Undergraduate Research in Computing I and II (8 MCs) to meet the Software Engineering Team Project requirement.
  • They will take CP4101 BComp Dissertation (12 MCs) with research content to meet the Industrial Experience Requirement.


Student Exchange Programme (SEP)

Students in this programme have the opportunity to go for exchange or internship to approved universities and laboratories overseas. The exchange or internship may include coursework or research component that can be mapped to the CS modules approved by the Department of Computer Science.

University Scholars Programme (Computer Science)

Students in the University Scholars Programme who choose the Bachelor of Computing (Computer Science) major will follow the Computer Science programme, but with the following variations:

  • They will read GER1000 Quantitative Reasoning (4 MCs) as compulsory module for the University Level Requirements (ULR). The remaining 16 MCs in ULR are replaced by the 3 USP Inquiry Modules and 1 USP Foundation module ( i.e. University Scholars Seminar).
  • They will not be required to read CS2101 Effective Communication for Computing Professionals. It is replaced by USP Foundation module: Writing and Critical Thinking
  • They will not be required to read one Science Module (4 MCs). It is replaced by one USP Inquiry module in Sciences and Technologies basket.
  • They will read CP3208 and CP3209 as independent study modules (ISMs) which will also be counted as 2 USP Inquiry modules in Sciences and Technologies basket.


Summary of degree requirements for Bachelor of Computing (Computer Science) – Turing Programme

Modules MCsSubtotals







Computer Science Foundation





CS1010     Programming Methodology


CS1231     Discrete Structures


CS2030     Programming Methodology II


CS2040      Data Structures and Algorithms 4

CS2100      Computer Organisation


CS2103T     Software Engineering 2


CS2105      Introduction to Computer Networks


CS2106      Introduction to Operating Systems


CS3230 & CS3230R Design and Analysis of Algorithms


Computer Science Breadth & Depth3


CS2309      CS Research Methodology


Satisfy 1 CS Focus Area,
with 3 CS modules at level-4000 or above 3


CS3208      Undergraduate Research in Computing I


CS3209      Undergraduate Research in Computing II


CP4101      BComp Dissertation (with research content)


IT Professionalism


IS1103/X     IS Innovations in Organisations and Society


CS2101       Effective Communication for Computing Professionals


ES2660        Communicating in the Information Age 4

Mathematics and Sciences


MA1521      Calculus for Computing4


MA1101R   Linear Algebra I


ST2334       Probability and Statistics5


One Science Module6





Grand Total 




1 : Students can refer to: http://www.nus.edu.sg/registrar/gem/home for the requirements for ULR.
2 : Students taking CS2103T Software Engineering must take CS2101 Effective Communication for Computing Professionals in the same semester.

3 : The 24 MCs of CS modules refer to CS-coded modules listed in the 10 CS Focus Areas and IFS-coded modules.

4 : Students pursuing double degree in Computer Science and Mathematics/Applied Mathematics are recommended to replace MA1521 Calculus for Computing by MA1102R Calculus.

5 :  Students pursuing a double degree in Computer Science and Mathematics/Applied Mathematics or Second Major in Mathematics/Statistics will take ST2131 Probability and ST2132 Mathematical Statistics in place of ST2334 Probability and Statistics.

6 : Students who have not taken ‘A’-level / H2 Physics must take either PC1221/X or PC1222/X to meet the Science module requirement.  Students who have not taken ‘O’-level Physics may take a Life-Science module.  Otherwise, students (who have taken ‘A’-level / H2 Physics) may take either a Physics, Chemistry or Life-Science or Mathematics module as a Science module.  The Science module must be a module from List S1 (recommended) or List S2.  Please refer to:
http://www.comp.nus.edu.sg/undergraduates/documents/Sciencemodules_S1_S2.pdf for details

7 : Students without A-level or H2 Mathematics are required to complete the bridging module MA1301/X as part of the Unrestricted Electives.