School of Computing > Undergraduates > Computer Science Courses
Info for Current Students
Computer Science Courses Information Systems Courses Concurrent Degree Programmes
Double Degree Programmes Double Major Minor Programmes
Exemptions and Placement Tests
Poly Prep Programme Project Modules
Scholarships & Support
Beyond Classroom
Enhancement Programmes
Honours Roll
Enquiries

Bachelor of Computing (Honours)in Computer Science

Computer Science:

Soul of Modern Technologies

The invention of the steam engine drove the Industrial Revolution in the 18th and 19th centuries, which saw the rapid transition of the manual labour and animal-based economy into the machine-based economy. In the 20th century, the development of computing and communication technologies brought about the Digital Revolution. These computing and communication technologies are made possible by the rapid adoption of digital devices, in particular, computers and computing devices, that are much more versatile than their analog counterparts. Indeed, the National Academy of Engineering's expert vote ranked computers as the 8th most important technological development of the 20th century, after electrification, automobile, airplane, water supply and distribution, electronics, radio and television, and mechanised agriculture.

Now, in the Information Age of the 21st century, characterised by the ability of individuals to transfer information of all modalities and gain instant access to knowledge, computers and computing devices are becoming the workhorses of the modern economy. Without them, all aspects of human activities, be they economic, cultural, technological, and even political, will simply grind to a halt.

Computing devices cannot run by themselves. The software in computing devices is what performs all the calculations, information processing and analysis required for real-world applications. Computer Science is the discipline that studies the correct and efficient development and deployment of computing systems, including hardware and software, in all aspects of human activities.

Overview

The Bachelor of Computing (Honours) in Computer Science or BComp (CS) programme aims to nurture students for a rewarding computing career in various industry sectors. Suitable for those who love hands-on work and keen to apply computing technologies to solve real-world problems, the programme will equip students with the critical knowledge and capacity to take on the world with confidence.

At the time of graduation, students are expected to demonstrate:

  • Strong knowledge of computer science foundations and fundamentals, including (a) familiarity with common computer science themes and principles, (b) high-level understanding of systems as a whole, (c) understanding of the theoretical underpinnings of computer science and their influences in practice.
  • In-depth knowledge in one or more computer science specialisations.
  • Individual competence in applying sound principles and rigorous thinking to (a) analyse an application problem, (b) understand user’s requirement, (c) formulate the problem in terms of computation requirements, (c) conceive novel solution ideas, (e) design appropriate solutions that meet the requirements, (f) implement the solution, (g) evaluate the effectiveness of the solution.
  • Strong communication skills and ability work with, and contribute to, a multi-disciplinary team to bring a range of technologies together to develop computer systems and solutions of multi-disciplinary nature.
  • Ability to engage in continuous professional development.
  • Understanding of the responsibilities of an IT professional and the ethical, social, and legal issues related to computing.

Within 3-5 years from graduation, a graduate from the program is expected to be able to:

  • Have a career as IT professional engaging in research and/or development in one or more specialisation of computer science;
  • Engage in a supportive or leadership role in a multi-disciplinary, collaborative, team environment;
  • Engage in continuous learning of state-of-the-art advances in computer science (including graduate studies);
  • Function as an ethical, legal and socially responsible member of the society;
  • Apply computing knowledge and skills to contribute positively to the betterment of society.

For a well-rounded education, students pursuing this programme will also acquire knowledge in science, including life sciences, mathematics and physics.

The programme is recognised by ABET Inc., the world-respected US-based accreditation agency, as being "substantially equivalent" to similar accredited programmes in the United States.

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

To satisfy the requirements of the BComp (CS) degree, students must accumulate at least 160 modular credits (MCs) as apportioned in the following three groups:

(1) 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 Engineering3
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 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 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 level-4000 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 Mathematics4
MA1521 Calculus for Computing5
MA1101R Linear Algebra I
ST2334 Probability and Statistics6
PC1222 Fundamentals of Physics II
Science Module 17
Science Module 2
Science Module 3

(2) University-level Requirements (20 MCs)

(3) Unrestricted Elections (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 A-level Mathematics. The 4 MC gained from the waiver should be used to read a letter-graded 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.

7Students interested in Physics are recommended to read PC1221 Fundamentals of Physics I.Science modules must be either Physics, Chemistry or Life-Science modules. The Chemistry module can be CM1121 (Organic Chemistry 1) or CM1131 (Physical Chemistry 1) or CM1417 (Fundamentals of Chemistry) or courses approved by the Department of Computer Science. A Life-Science module can be LSM1301 (General Biology) or LSM1302 (Genes and Society) 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.

 

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. Algorithm & Theory
  2. Artificial Intelligence
  3. Computer Networks
  4. Database Systems
  5. Information Retrieval
  6. Parallel Computing
  7. Programming Languages
  8. Software Engineering
  9. Systems Security
  10. 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 satisfy Information Security in Computer Science, students must:

  • Complete 12 MCs from the CS Undergraduate Focus Area of System Security.
  • Complete CP4101 BComp Dissertation (12 MCs) which must be an independent project on a topic related to technical aspect of information security.

Students in this Specialisation are recommended to complete the 8 MCs of Computer Systems Team Project modules on a topic related to technical aspect of 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:

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

Modules MCs Subtotals
UNIVERSITY LEVEL REQUIREMENTS 20
PROGRAMME REQUIREMENTS 120
Computer Science Foundation 36
CS1010 Programming Methodology1 4
CS1020 Data Structures and Algorithms I2 4
CS2010 Data Structures andAlgorithms II2 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:
  • 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 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

8
Either:
  • CP4101B. Comp. Dissertation,
or
  • 3 CS modules at level-4000 or above

12
IT Professionalism 8
IS1103 Computing and Society 4
CS2101 Effective Communication for Computing Professionals3 4
Mathematics and Sciences 32
MA1301Introductory Mathematics4 4
MA1521Calculus for Computing5 4
MA1101R Linear Algebra I 4
ST2334Probability and Statistics6 4
PC1222Fundamentals of Physics II 4
Science Module 17 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 A-level Mathematics. The 4 MCs gained from the waiver should be used to read a letter-graded 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. A Science module can be CM1121 (Organic Chemistry 1), CM1131 (Physical Chemistry 1), CM1417 (Fundamentals of Chemistry) , LSM1301 (General Biology), LSM1302 (Genes and Society), PC1143 (Physics III), PC1144 (Physics IV), PC1221 (Fundamentals of Physics I), PC1432 (Physics IIE) or courses approved by the Department of Computer Science.

*** Best viewed with Internet Explorer 7 & above, Firefox, Chrome and Safari ***