The Bachelor of Computing (Computer Science) programme, BComp(CS), requires at least 160 MCs. This programme satisfies the ABET requirements for accreditation.
(i) PROGRAMME REQUIREMENTS (Total of 120 MCs)
Computer Science Foundation
CS1010 Programming Methodology^{1}
CS1020 Data Structures and Algorithms I^{2}
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:
 Satisfy at least one CS Focus Area for BComp(CS) by completing 3 modules in the Area Primaries, with at least one module at level4000 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 level4000 or above.
Complete 8 MCs of Computer Systems Team Project modules from the following list, or modules approved by the Department of Computer Science:
 CS3201 Software Engineering Project I and CS3202 Software Engineering Project II, or
 CS3281 Thematic Systems Project I and CS3282 Thematic Systems Project II
Either
CP4101 BComp Dissertation
or
Complete 12 MCs by taking CS modules at level4000 or above, or modules approved by the Department of Computer Science.
IT Professionalism
IS1103 Computing and Society
CS2101 Effective Communication for Computing Professionals ^{3}
Mathematics & Sciences
MA1301 Introductory Mathematics^{4}
MA1521 Calculus for Computing^{5}
MA1101R Linear Algebra I
ST2334 Probability and Statistics^{6}
PC1222 Fundamentals of Physics II
Science Module 1^{7}
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} MA1301 is waived for students with Alevel Mathematics. The 4 MC gained from the waiver should be used to read a lettergraded module.
^{5} Students pursuing double degree in Computer Science and Mathematics/Applied Mathematics are recommended to replace MA1521 Calculus for Computing by MA1102R Calculus.
^{6} 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.
^{7} Students interested in Physics are recommended to read PC1221 Fundamentals of Physics I.Science modules must be either Physics, Chemistry or LifeScience 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 4000level 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.
 Algorithm Theory
 Artificial Intelligence
 Computer Networks
 Database Systems
 Information Retrieval
 Parallel Computing
 Programming Languages
 Software Engineering
 Computer Security
 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 12MC 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 IScoded 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
 IS4231 Information Security Management
 IS4232 Topics in Information Security
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 FirstTier 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)
Modules  MCs  Subtotals 

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 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 and Depth 
44 

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

24 

Complete 8 MCs of Computer Systems Team Project modules from the following list, or modules approved by the Department of Computer Science:
CS3201 Software Engineering Project I and CS3202 Software Engineering Project II, or 
8 

Either: CP4101 B. Comp. Dissertation, or 3 CS modules at level4000 or above 
12 

IT Professionalism 
8 

IS1103 Computing and Society 
4 

CS2101 Effective Communication for Computing Professionals^{3} 
4 

Mathematics and Sciences 
32 

MA1301 Introductory Mathematics^{4} 
4 

MA1521 Calculus for Computing^{5} 
4 

MA1101R Linear Algebra I 
4 

ST2334 Probability and Statistics^{6} 
4 

PC1222 Fundamentals of Physics II 
4 

Science Module 1^{7} 
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. .
^{4} : MA1301 is waived for students with Alevel Mathematics. The 4 MCs gained from the waiver should be used to read a lettergraded module.
^{5} : Students pursuing double degree in Computer Science and Mathematics/Applied Mathematics are recommended to replace MA1521 Calculus for Computing by MA1102R Calculus.
^{6} : 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.
^{7} : 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.