The Turing Programme for Bachelor of Computing (Computer Science) programme [TP] is yet another special programme in Computer Science. TP aims to nurture students who aspire to engage in pure research careers in Computing. It is most suitable for students who love to solve technically challenging problems and are able to handle theoretical and practical work. Students will be selected for admission to TP based on their performance in selected courses, including CS2309 and CS3230. Students in TP are expected to build sufficient track records by the time they graduate to gain admission into PhD programmes in top schools including SoC. Students pursuing the Bachelor of Computing (Computer Science) degree will be eligible for admission into TP at the end of their first or second semester of studies based on their GPA and interview. Students in this programme will be assigned CS professors as their mentors to help them to build their research track records.

Degree Requirements

Students in the programme must maintain a minimum GPA of 4.00 in every semester of their studies and must complete the requirements of Bachelor of Computing (Computer Science), with the following variations:

  • They may read CS1101S Programming Methodology in place of CS1010.
  • They will read CS2020 Data Structures and Algorithms Accelerated (6 units) instead of CS1020 and CS2010.
  • They will read CS2309 CS Research Methodology (4 units). They will have 22 units remaining in the Unrestricted Electives.
  • They will take CP3208 and CP3209 Undergraduate Research in Computing I and II (8 units) to meet the Software Engineering Team Project requirement
  • They will take CP4101 BComp Dissertation (12 units) with research content to meet the Industrial Experience Training Requirement.


Computer Science Study Planner 

Please click here for the study planner for cohort 2017.


NUS Overseas Colleges (NOC) – Computer Science – Turing Programme

Students who attended NOC programme may:

  1. count TR3201/N Entrepreneurship Practicum (8 units) towards CS3882 Breakthrough Ideas for Digital Markets (4 units) and one bridging course at 4 units. The mapping to bridging course (MA1301/PC1221/PC1222) applies to CS students with A-level or equivalent qualifications in either Mathematics or Physics. These students replace the missing units for the bridging courses with unrestricted electives. Dummy CS codes CSX3741 and CSX3742 will be issued in place of MA1301 and PC1221/PC1222 respectively.
  2. count TR3202/N Start-up Internship Programme (12 units) towards Industrial Experience Requirement.
  3. count TR3203 Start-up Case Study and Analysis towards Unrestricted Electives. Students working on computer systems term projects for TR3203 may seek approval to instead take TR3203P, which counts towards CS3281/2 Thematic Systems Project I/II. Alternatively, TR3203 can be mapped to TR3203E in which 8 units of CS electives at level-3000 can be considered for the fulfilment of CS Breadth and Depth Requirements.

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:

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

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

Computer Science Foundation 36  
CS1010 Programming Methodology 2 4
CS1231 Discrete Structures 4
CS2030 Programming Methodology II 4
CS2040 Data Structures and Algorithms 4
CS2100 Computer Organisation 4
CS2103T Software Engineering 3 4
CS2105 Introduction to Computer Networks 4
CS2106 Introduction to Operating Systems 4
CS3230 Design and Analysis of Algorithms 4
Computer Science Breadth & Depth 48
CS2309 CS Research Methodology 4
Satisfy 1 CS Focus Area, with 3 CS courses at Level – 4000 or above4 24
CP3208 Undergraduate Research in Computing I 4
CP3209 Undergraduate Research in Computing II 4
CP4101 B.Comp. Dissertation (with research content) 12
IT Professionalism 12
IS1103/X IS Innovations in Organisations and Society 4
CS2101 Effective Communication for Computing Professionals  3 4
ES2660 Communicating in the Information Age 4
Mathematics and Sciences 16
MA1521 Calculus for Computing 5 4
MA1101R Linear Algebra I or MA2001 Linear Algebra I 4
ST2334 Probability and Statistics 6 and a Science Course  7 8
Grand Total   160

1Students can refer to: http://www.nus.edu.sg/registrar/gem/home for the requirements for ULR.

2 CS1010 can be replaced by CS1101S Programming Methodology.

3Students taking CS2103T Software Engineering must take CS2101 Effective Communication for Computing Professionals in the same semester.

4The 24 units of CS courses refer to CS-coded courses listed in the 11 CS Focus areas as well as IFS-coded courses.

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

6 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.

7 Students who have not taken ‘A’-level / H2 Physics must take either PC1221/X or PC1222/X to meet the Science course requirement.  Students who have not taken ‘O’-level Physics may take a Life-Science course.  Otherwise, students (who have taken ‘A’-level / H2 Physics) may take either a Physics, Chemistry or Life-Science or Mathematics course as a Science course.  The Science course must be a course from List S1 (recommended) or List S2.  Please refer here for details

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