The Bachelor of Computing (Computer Science) programme, BComp(CS), requires at least 160 MCs. This programme satisfies the ABET requirements for accreditation.

Students who aim for Honours (Highest Distinction) must pass the CP4101 BComp Dissertation .

Industrial Experience which is optional can be fullfilled by doing one of the following options:

    • A 6-month internship through CP3880 Advanced Technology Attachment Programme (12 MCs)
    • Two 3-month internships through CP3200 Internship (6MCs) and CP3202 Internship II (6 MCs). With two internships, the student will be able to experience work in two distinct types of organizations, such as a start-up and a MNC, or in two different industries.
    • IS4010 Industry Internship Programme (12 MCs) from the IS department.
    • A 3-month internship through CP3200 Internship (6 MCs) and an approved Industry Course from Computer Science Department (4 MCs). The remaining 2 MCs may be satisfied using Unrestricted Electives. Students should consult the CS Deputy Head (CS Programmes) in advance if they are interested in this option as industry courses may not be offered every year.
    • iLead (16 MCs) or NOC (32 MCs). For students who opt for iLead or NOC, the additional MCs beyond the 12-MCs allocated to Industry Experience Training should be taken from Unrestricted Electives and/or exempted modules..
    • Other forms of industry experience approved by the Department of Computer Science.

 

(i) PROGRAMME REQUIREMENTS (Total of 120 MCs)

 Computer Science Foundation

CS1010 Programming Methodology1
 CS1020 Data Structures and Algorithms I2
 CS1231 Discrete Structures
 CS2010 Data Structures and Algorithms II 2
 CS2100 Computer Organisation
 CS2103T Software Engineering 3
 CS2105 Introduction to Computer Networks
 CS2106 Introduction to Operating Systems
 CS3230 Design and Analysis of Algorithms


Computer Science Breadth & Depth

Complete 24 MCs of CS modules by satisfying the following conditions: 4

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

 

Complete at least 8 MCs of Computer Systems Team Project modules from the following pairs, or modules approved by the Department of Computer Science:

  • CS3201 Software Engineering Project I and CS3202 Software Engineering Project II, or
  • CS3216 Software Product Engineering for Digital Markets and CS3217 Software Engineering on Modern Application Platforms
  • CS3281 Thematic Systems Project I and CS3282 Thematic Systems Project II, or
  • CS3283 Media Technology Project I and CS3284 Media Technology Project II

Both CS3216 and CS3217 are 5-MC modules. Students who choose to take CS3216 and CS3217 will count 8-MC towards the Computer Systems Team Project requirement and 2- MC towards Unrestricted Electives. Students must take both CS3216 and CS3217 to complete the Software Engineering Team Project requirement. If a student completed only one of CS3216 and CS3217, he or she has to take another pair of modules to meet the Computer Systems Team Project requirement.

Either
CP4101 BComp Dissertation
or
Complete 12 MCs by taking CS modules at level-4000 or above, or modules approved by the Department of Computer Science
or
12 MCs of Industrial Experience Training.

IT Professionalism
IS1103 Computing and Society/IS Innovations in Organisations and Society
CS2101 Effective Communication for Computing Professionals 3

Mathematics & Sciences
MA1301 Introductory Mathematics5
MA1521 Calculus for Computing6
MA1101R Linear Algebra I
ST2334 Probability and Statistics7
PC1221 Fundamentals of Physics I or PC1222 Fundamentals of Physics II8
Science Module 19
Science Module 2
Science Module 3

 

(ii) UNIVERSITY LEVEL REQUIREMENTS (20 MCs)

(iii) UNRESTRICTED ELECTIVES (20 MCs)

 

Footnotes:

1 CS1010 can be replaced by CS1101S Programming Methodology.
2 CS1020 and CS2010 can be replaced by CS2020 Data Structures and Algorithms Accelerated. The remaining 2 MC will be added to the Unrestricted Electives Requirements.
3 Students taking CS2103T Software Engineering must take CS2101 Effective Communication for Computing Professionals in the same semester.
4 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.
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 who have not taken 'O'-level Physics may replace PC1221 or PC1222 by a life-science module.
9 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.

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. The ten focus areas are listed below. Please  click here for details about these focus areas.

  1. Algorithms &Theory
  2. Artificial Intelligence
  3. Computer Graphics and Games (New area wef AY15/16)
  4. Computer Networks ( Renamed to: Networking and Distributed Systems wef AY15/16)
  5. Database Systems
  6. Information Retrieval (Renamed to: Multimedia Information Retrieval wef AY15/16)
  7. Interactive Media
  8. Parallel Computing
  9. Programming Languages
  10. Software Engineering
  11. Computer Security
  12. Visual Computing


Enrichment

Students are encouraged to read the following enrichment module:

 CS3882 Breakthrough Ideas for Digital Markets
 CS4880 Digital Entrepreneurship

Advanced Technology Attachment Programme

CP3880 Advanced Technology Attachment Programme is a 12-MC module. It can be used to replace 12 MCs of Unrestricted Electives to satisfy ABET requirements.

 

Specialisation in Information Security

To be awarded Specialisation in Information Security, students need to complete:
  • CS2107 Introduction to Information Security
  • CS3235 Introduction to Computer Security

and complete 20 MCs from the list below meeting the following conditions:

(i) at least one of CS4236 and CS4238 must be completed; and
(ii) at most one IS-coded module

List:

  • CP4101 B.Comp. Dissertation on a topic related to technical aspect of information security (worths 12 MCs)
  • CS4236 Cryptography Theory and Practice
  • CS4238 Computer Security Practices
  • CS4239 Software Security
  • CS5231 Systems Security
  • CS5321 Network Security
  • CS5322 Database Security
  • CS5331 Web Security
  • CS5332 Biometric Authentication
  • IFS4101 Legal Aspects of Information Security
  • IFS4102 Digital Forsensics
  • IS4231 Information Security Management
  • IS4232 Topics in Information Security

 

NUS Overseas Colleges (NOC) Computer Science

Students who attended NOC programme may:            
  • count TR3201 Entrepreneurship Practicum (8 MCs) towards CS3882 Breakthrough Ideas for Digital Markets (4 MCs) and one bridging module at 4 MCs. The mapping to bridging module (MA1301/PC1221/PC1222) applies to CS students with A-level or equivalent qualifications in either Mathematics or Physics.  These students replace the missing MCs for the bridging modules with unrestricted electives.  Dummy CS codes CSX3741 and CSX3742 will be issued in place of MA1301 and PC1221/PC1222 respectively.
  • count TR3202 Start-up Internship Programme (12 MCs) towards Industrial Experience Requirement.
  • 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 CS3201/2 Software Engineering Project I/II or equivalent pairs.  Alternatively, TR3203 can be mapped to TR3203E in which 8 MCs of CS-coded 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. The following modules will be replaced by appropriate First-Tier Scholars Modules:

  • University Level Requirements (20 MCs)
  • CS2101 Effective Communication for Computing Professionals (4 MCs)
  • Two Science Modules (8 MCs)

2. They will read UROP modules CP3208 and CP3209 in place of the two Computer Systems Team Project modules (CS3201/CS3202 or CS3281/CS3282). CP3208 and CP3209 are independent study modules (ISMs) and they will also be counted as two of the four Advanced Scholars Modules (8 MCs).

Summary of degree requirements for Bachelor of Computing (Computer Science)

ModulesMCsSubtotals
UNIVERSITY LEVEL REQUIREMENTS  

20

PROGRAMME REQUIREMENTS  

120

Computer Science Foundation

36

 
CS1010     Programming  Methodology 1

4

CS1020     Data Structures and Algorithms I 2

4

CS2010     Data Structures and Algorithms II 2

4

CS1231     Discrete Structures

4

CS2100     Computer Organisation

4

CS2103T   Software Engineering3

4

CS2105     Introduction to Computer Networks

4

CS2106     Introduction to Operating Systems

4

CS3230     Design and Analysis of Algorithms

4

Computer Science Breadth and Depth

44 

Complete 24 MCs of CS modules by satisfying the following conditions: 4
  • 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.

24

Complete at least 8 MCs of Computer Systems Team Project modules from the following pairs, or modules approved by the Department of Computer Science:

CS3201 Software Engineering Project I and CS3202 Software Engineering Project II, or
CS3216 Software Product Engineering for Digital Markets and CS3217 Software Engineering on Modern Application Platforms, or
CS3281 Thematic Systems Project I and CS3282 Thematic Systems Project II
CS3283 Media Technology Project I and CS3284 Media Technology Project II

8

Either:
CP4101    B. Comp. Dissertation,
or
3 CS modules at level-4000 or above,
or
Industrial Experience Training

12

IT Professionalism

8

IS1103     Computing and Society/IS Innovations in Organisations and Society

4

CS2101     Effective Communication for Computing Professionals3

4

Mathematics and Sciences

32

MA1301     Introductory Mathematics5

4

MA1521     Calculus for Computing6

4

MA1101R   Linear Algebra I

4

ST2334     Probability and Statistics7

4

PC1221 Fundamental of Physics I or PC1222 Fundamentals of Physics II 8

4

Science Module 19

4

Science Module 2

4

Science Module 3

4

UNRESTRICTED ELECTIVES  

20

Grand Total   

160

1 : CS1010 can be replaced by CS1101S Programming Methodology.

2 : CS1020 and CS2010 can be replaced by CS2020 Data Structures and Algorithms Accelerated. The remaining 2 MCs will be added to the Unrestricted Electives Requirements.

3 : Students taking CS2103T Software Engineering must take CS2101 Effective Communication for Computing Professionals in the same semester. Students who are taking IEM1201x or IEM2201x module on grade basis in place of CS2101 will take CS2103 instead.

4 : The 24 MCs of CS modules refer to CS-coded modules listed in the 10 CS Focus areas as well as IFS4101. 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.

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 modules from List S1 (recommended) or List S2. Please click here for the lists.