![]() |
The Computer Science programme requires at least 160 MCs. Modules are classified as follows (note that every module can only be counted towards satisfying exactly one requirement):
CS1101/S Programming Methodology
CS1102/S Data Structures and Algorithms
CS1105 Computing and Society
CS2100 Computer Organisation
CS2102 Database Systems
CS2105 Introduction to Computer Networks
Major Requirements
Computing Related
CS1231 Discrete Structures
CS2103 Software Engineering
CS2106 Introduction to Operating Systems
CS3212 Programming Languages
CS3215 Software Engineering Project *
CS3230 Design and Analysis of Algorithms
Minimum of 4 MCs from the following lists of Theoretical Computing modules and CS Recommended Course List or modules approved by the Department of Computer Science:
Theoretical Computing Modules
CS3231 Theory of Computation
CS3234 Logic and Formal Systems
MA3219 Computability Theory
MA4207 Mathematical Logic I
CS Recommended Course list
CS3211 Parallel and Concurrent Programming
CS3220 Computer Architecture
CS3243 Foundations of Artificial Intelligence
Either:
Science Related
MA1301 Introductory Mathematics
MA1521 Calculus for Computing ++
MA1101R Linear Algebra I
ST2334 Probability and Statistics #
Life Science Module &
Science Module 1 %
Science Module 2
Science Module 3
Programme Breadth
CS2301 Business and Technical Communication
Breadth Modules must be taken from outside the Faculty of Science, Faculty of Engineering and School of Computing.
Students can pursue a specialisation in Information Security under this programme. This specialisation will enable students to pursue careers that are related to prevention, detection and management of security threats. Please click here for details.
Students in the University Scholars Programme who choose the Bachelor of Computing (Computer Science) major will take the four-year Computer Science programme, but with the following variations:
| Modules | MCs | Subtotals |
| UNIVERSITY LEVEL REQUIREMENTS |
|
20 |
| PROGRAMME REQUIREMENTS |
|
|
Common Essentials |
|
25 |
CS1101/S Programming Methodology |
5 |
|
CS1102/S Data Structures and Algorithms |
5 |
|
CS1105 Computing and Society |
3 |
|
CS2100 Computer Organisation |
4 |
|
CS2102 Database Systems |
4 |
|
CS2105 Introduction to Computer Networks |
4 |
|
Major Requirements |
|
92 |
Computing Related |
|
56 |
CS1231 Discrete Structures |
4 |
|
CS2103 Software Engineering |
4 |
|
CS2106 Operating Systems |
4 |
|
CS3212 Programming Languages |
4 |
|
CS3215 Software Engineering Project * |
8 |
|
CS3230 Design and Analysis of Algorithms |
4 |
|
1 module in Theoretical Computing and CS Recommended Course List |
4 |
|
Either CS4101 Honours Project, and Modules from A1 to A4, with restriction |
12 12 |
|
Modules from A1 to A4, with restriction |
24 |
|
Science Related |
|
32 |
MA1301 Introductory Mathematics |
4 |
|
MA1521 Calculus for Computing ++ |
4 |
|
MA1101R Linear Algebra I |
4 |
|
ST2334 Probability and Statistics # |
4 |
|
Life Science Module & |
4 |
|
Science Module 1 % |
4 |
|
Science Module 2 |
4 |
|
Science Module 3 |
4 |
|
Programme Breadth |
|
4 |
CS2301 Business and Technical Communication |
4 |
|
UNRESTRICTED ELECTIVES |
|
23 |
Grand Total |
160 |
*: This module may be replaced by CS3208/CS3209 Undergraduate Research in Computing I/II with the special permission from the UROP coordinator if the project involves significant programming content.
++: Students pursuing double degree in Computer Science and Mathematics are recommended to replace MA1521 Calculus for Computing by MA1102R Calculus.
#: Students seeking more comprehensive knowledge of probability and statistics are encouraged to take ST2131 Probability and ST2132 Mathematical Statistics in place of ST2334 Probability and Statistics.
&: A Life-Science module can be LSM1301 (General Biology), LSM1302 (Genes and Society), or courses approved by the Department of Computer Science.
%: The three Science modules must be either Physics, Chemistry or Life-Science modules. The Chemistry module can be CM1101 (Principles of Modern Chemistry) or CM1417 (Fundamentals of Chemistry) or courses approved by the Department of Computer Science. A Physics module can be PC1143 (Physics III), PC1144 (Physics IV), PC1221 (Fundamentals of Physics I), PC1222 (Fundamentals of Physics II), PC1432 (Physics IIE) or courses approved by the Department of Computer Science.