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 at the end of their first or second semester of study based on their CAP and interview. 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.

TP has the same curriculum structure as the revised BComp(CS) programme, but emphasizes research in Computer Science. Some of the modules specially tailored for TP students are :

  • Two-module series of Introductory programming:*
    CS1101S Programming Methodology (5 MCs)
    CS2020 Data Structures and Algorithms Accelerated (6 MCs)
  • CS2309 CS Research Methodology
  • CS4232 Theory of Computation
  • Three R-modules, each of which is a 1-MC module. These modules add a research component to the host module, enabling students to acquire more in-depth understanding of the research issues pertaining to the subject matter.
    For example, to read CS3230R, a student has to read CS3230 at the same time or in the immediately preceding semester.
  • Computer systems team project: Students will take CS3281 & CS3282 Thematic Systems Project I & II with research content.
  • CP4101 BComp Dissertation: to be done with research content.
About Alan M. Turing

Alan M. Turing (1912-1954) was a mathematician, logician, cryptanalyst, and computer scientist. He was influential in the development of computer science, providing the first model of algorithm and computation-the Universal Turing Machine-that allowed us to analyse what a computer can and cannot do. His result on the limit of computability holds true even on today's modern computer systems. Turing was a forerunner and founder of many modern computer science topics. For example, he gave the first feasible detailed design of a stored-program computer, which is an important contribution to computer architecture. He proposed an experiment-the Turing Test-that has become a standard for a machine to be considered "intelligent", which is a provocative contribution to artificial intelligence. He was also famous for his cryptanalysis work during World War II that combined logic, statistics, and algorithm into breaking the German's Enigma and the Lorenz SZ 40/42, which established information security as part of computer science. Towards the end of his life, he even wrote a paper on the chemical basis of morphogenesis and predicted certain chemical reactions that were observed some ten years after his death, which could be considered an early contribution to computational systems biology.

CS Department is also working with prestigious overseas universities to include a concurrent overseas Masters part to TP, which might also include overseas research attachment.

Note:

*  : Students who complete the 3-module series of introductory programming with good grades may also apply for admission into TP; they will be exempted from taking CS1101S and CS2020.

Degree Requirements

The Turing Programme for Bachelor of Computing (Computer Science) requires at least 160 MCs. Students in the programme must maintain a minimum CAP of 4.00 in every semester of their study.

(i)  PROGRAMME REQUIREMENTS (Total of 126 MCs)

Computer Science Foundation
CS1101S     Programming Methodology
CS1231       Discrete Structures
CS2020       Data Structures and Algorithms Accelerated
CS2100       Computer Organisation
CS2103T     Software Engineering1
CS2105       Introduction to Computer Networks
CS2106       Introduction to Operating Systems
CS3230       Design and Analysis of Algorithms
CS3230R     Design and Analysis of Algorithms

Computer Science Breadth & Depth
Complete 26 MCs of CS modules by satisfying the following conditions:2

  • Satisfy at least one CS Focus Area for BComp(CS) by completing 3 modules in the Area Primaries, with at least one module at level-4000 or above. Computer Science Foundation modules that appear in Area Primaries can be counted as one of the 3 modules towards satisfying a Focus Area.
  • At least 12 MCs are at level-4000 or above.
  • At least 2 R-modules.
  • Read CS4232 Theory of Computation3

CS2309       CS Research Methodology
CS3281       Thematic Systems Project I (with research content)4
CS3282       Thematic Systems Project II (with research content)4
CP4101       BComp Dissertation (with research content)

IT Professionalism
IS1103 Computing and Society
CS2101 Effective Communication for Computing Professionals

Mathematics & Sciences
MA1301 Introductory Mathematics5
MA1521 Calculus for Computing6
MA1101R Linear Algebra I
ST2334 Probability and Statistics7
PC1222 Fundamentals of Physics II
3 Science Module8

(i) UNIVERSITY LEVEL REQUIREMENTS (20 MCs)

(iii) UNRESTRICTED ELECTIVES (14 MCs)

Computer Science Focus Areas for BComp(CS)

CS modules are organised into Focus Areas of coherent modules according to technical areas of study. A CS Focus Area is satisfied by completing 3 modules from the Area Primaries, with at least one module at 4000-level or above. CS Foundation Modules (CFM) that appear in the Area Primaries can be counted as one of the 3 modules towards satisfying a Focus Area. In this case, a student has to read just two other modules in the Area Primaries to satisfy the Focus Area. Elective modules are grouped into the Focus Areas as a guide for indicating their related areas of study.

  • Algorithm & Theory
  • Artificial Intelligence
  • Computer Networks
  • Database Systems
  • Information Retrieval
  • Parallel Computing
  • Programming Languages
  • Software Engineering
  • Systems Security
  • Visual Computing

Modules classified in each focus area can be found here.

Study Planners

Students matriculated in AY2013-14 may click here to access to the sample planners.

Enrichment

Students are encouraged to read the following enrichment module:

  • CS3882 Breakthrough Ideas for Digital Markets
  • CS4880 Digital Entrepreneurship

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 not be required to read University Level Requirements (20 MCs). These are replaced by the 3 USP Inquiry Modules and 2 USP Foundation modules (Quantitative Reasoning Foundation and 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 two Science Modules (8 MCs). These are replaced by 2 USP Inquiry modules in Sciences and Technologies basket.
  • They will read UROP modules (CP3208 and CP3209) in place of CS3201 and CS3202 or CS3281 and CS3282. CP3208 and CP3209 are 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

MCs

Subtotals

UNIVERSITY LEVEL REQUIREMENTS

 

20

PROGRAMME REQUIREMENTS

 

126

Computer Science Foundation

36 

 

 

 

 

 

 

 

 

 

 

 

CS1101S     Programming Methodology

5

CS1231       Discrete Structures

4

CS2020       Data Structures and Algorithms Accelerated

6

CS2100       Computer Organisation

4

CS2103T      Software Engineering

4

CS2105       Introduction to Computer Networks

4

CS2106       Introduction to Operating Systems

4

CS3230 & CS3230R Design and Analysis of Algorithms

5

Computer Science Breadth & Depth

50

CS2309       CS Research Methodology

4

Satisfy 1 CS Focus Area,
with 3 CS modules at level-4000 or above,
with 2 R-modules,
with CS4232 Theory of Computation3

26

CS3281       Thematic Systems Project I (with research content)4

4

CS3282      Thematic Systems Project II (with research content)4

4

CP4101       BComp Dissertation (with research content)

12

IT Professionalism

8

IS1103        Computing and Society

4

CS2101       Effective Communication for Computing Professionals

4

Mathematics and Sciences

32 

MA1301      Introductory Mathematics5

4

MA1521      Calculus for Computing6

4

MA1101R   Linear Algebra I

4

ST2334        Probability and Statistics7

6

PC1222       Fundamentals of Physics II

4

3 Science Modules8

12

UNRESTRICTED ELECTIVES

 

14

Grand Total 

 

160

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

2 : The 24 MCs of CS modules refer to CS-coded modules listed in the 10 CS Focus areas. The listing of IS-coded modules in the CS focus areas provide a guide to students should they be interested in taking more related modules in the respective areas for depth. These IS modules, if taken, will be used to fulfill unrestricted electives.

3 : CS4232 can be counted towards satisfying Algorithms and Theory Focus Area. It is also one of the 3 level-4000 modules that counts towards 26 MCs.

4 : CS3281 and CS3282 may be replaced by CP3208 and CP3209 Undergraduate Research in Computing I and II with approval of Department of Computer Science.

5 : MA1301 is waived for students with A-level Mathematics. The 4 MCs gained from the waiver should be used to read a letter-graded module.

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

7 : Students pursuing double degree in Computer Science and Mathematics/Applied Mathematics will take ST2131 Probability and ST2132 Mathematical Statistics in place of ST2334 Probability and Statistics.

8 : Students interested in Physics are recommended to read PC1221 Fundamentals of Physics I.Science modules must be either Physics, Chemistry or Life-Science modules. Science modules must be either Physics, Chemistry or Life-Science modules. Science modules must be modules from List S1 (recommended) or List S2. Please click here for the lists.