Degree Structure
Overview
The Bachelor of Computing (Honours) in Computer Science programme aims to equip graduates with strong and broad technical knowledge in computer science and technology. It also provides the flexibility for students to specialise in various fields of computer science. The programme emphasises the four pillars in computer science, viz. programming languages, computer systems, modelling and algorithms, and human-computer interaction.
The programme has gained recognition by ABET Inc., the world-respected US-based accreditation agency. The agency certified that the programme is “substantially equivalent†to accredited programmes in the United States, which is the standard status that the agency offer to universities outside the United States. Students pursuing a degree in Bachelor of Computing (Honours) in Computer Science will also pick up knowledge in science, including life sciences, mathematics, and physics. The programme inculcates in students an awareness of information technology application across multiple disciplines. It also provides the opportunity for students to receive interdisciplinary education.
Graduates with the Bachelor of Computing (Honours) in Computer Science degree can position themselves in a large number of exciting fields of work, including project management, knowledge engineering, software architecture, web design, digital media, and security consultancy.
Degree Requirements
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):
(i) PROGRAMME REQUIREMENTS (Total of 117 MCs)
Common Essentials |
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: |
CS4101 B.Comp. Dissertation, and
Complete 12 MCs by taking modules, at level-4000 or above, in elective areas A1 to A4, or modules approved by the Department of Computer Science (CS Elective list). |
| |
or |
Complete 24 MCs by taking modules, at level-4000 or above, in elective areas A1 to A4, or modules approved by the Department of Computer Science (CS Elective list).
|
| |
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
|
(ii) UNIVERSITY LEVEL REQUIREMENTS Breadth Modules must be taken from outside the Faculty of Science, Faculty of Engineering and School of Computing.
(iii) UNRESTRICTED ELECTIVES
Unrestricted Electives must be modules taken from outside the Faculty of Science, Faculty of Engineering and School of Computing. Students can choose to do CS3880 Advanced Technology Attachment Programme or any MC-incurring internship and count them towards fulfilling the ABET humanity subject requirement.
The exception is: Students can use their UE to to partially meet the minor or second major requirements from either Engineering or Science faculty subject to declaration and successful completion of the minor/second major requirements.
University Scholars Programme (Computer Science)
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:
1. They will not be required to read the following:
(a) University Level Requirements (20 MCs)
(b) One Physics Module (4 MCs)
(c) One Life-Sciences Module (4 MCs)
(These are replaced by appropriate First-Tier Scholars Modules.)
2. They will read UROP modules CS3208 and CS3209 in place of CS3215 (Software Engineering Project). CS3208 and CS3209 are independent study modules (ISMs) and they will also be counted as two of the four Advanced Scholars Modules (8 MCs).
3. They will have 19 (instead of 23) MCs under Unrestricted Electives.
Summary of degree requirements for B.Comp. (Computer Science)
Modules |
MCs |
Subtotals |
UNIVERSITY LEVEL REQUIREMENTS |
|
20 |
| PROGRAMME REQUIREMENTS
|
|
117 |
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.
|