Bachelor of Computing (Honours) in Computer Science


Student Statistics


The number of students enrolled in the School of Computing can be found here.

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.

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.

Degree Requirements

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

Students will be required to satisfy 12 MCs of Industrial Experience Requirement by doing:

    • A 6-month internship through CP3880 Advanced Technology Attachment Programme (12 MCs)
    • Two 3-month internships through CP3200 Internship (6 MCs) and CP3202 Internship II (6MCs). 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 Industry Course (4 MCs). Possible Industry Course includes CP3101A Global Open Source Project and other relevant courses approved by the Department of Computer Science. The remaining 2 MCs may be satisfied using Unrestricted Electives.
    • 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.

Students with CAP of 4.0 or higher may opt to replace Industry Experience Requirement by CP4101 B.Comp. Dissertation.

Students who aim for Honours (Highest Distinction) must pass the CP4101 BComp Dissertation. Students with CAP of 4.0 or higher at the end of their fifth semester of undergraduate study may opt to replace the Industry Experience Requirement by B.Comp Dissertation (12 MCs). As with other students with CAP of 4.0 or higher, these students may opt to replace Industry Experience Requirement by B.Comp. Dissertation.

(1) 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 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:
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 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, or
  • CS3283 Media Technology Project I and CS3284 Media Technology Project II


Industrial Experience Requirement

IT Professionalism
IS1103 Computing 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

(2) University-level Requirements (20 MCs)

(3) 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 MC gained from the waiver should be used to read an unrestricted elective.

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.

9Students interested in Physics are recommended to read PC1221 Fundamentals of Physics I.Science modules must be either Physics, Chemistry or Life-Science modules. 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. Algorithm & Theory
  2. Artificial Intelligence
  3. Computer Networks
  4. Database Systems
  5. Information Retrieval
  6. Interactive Media
  7. Parallel Computing
  8. Programming Languages
  9. Software Engineering
  10. Computer Security
  11. Visual Computing

Study Planners

Students matriculated in AY2013-14 may click here to access to the sample planners.

 

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 Specialisation, students must:
  • Satisfy System Security Focus Area, i.e.,
    complete at least 3 Primary Modules in System Security Focus Area with at least 1 Primary Module at level 4000 or above.
  • Complete additional modules in the Primary and/or Elective lists of System Security so that a total of 12 MCs (including the Primary Modules taken) are at level 3000 or above.
  • Complete CP4101 BComp Dissertation (12 MCs) which must be an independent project 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 CS3201 and CS3202 or other modules approved by the Department of Computer Science as 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
(including GEK1901 Critical Thinking in the Information Age as a compulsory GEM)

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: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 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, or
CS3283 Media Technology Project I and CS3284 Media Technology Project II

8
Industrial Experience Requirement 12
IT Professionalism 8
IS1103 Computing and Society 4
CS2101 Effective Communication for Computing Professionals3 4
Mathematics and Sciences 32
MA1301Introductory Mathematics5 4
MA1521Calculus for Computing6 4
MA1101R Linear Algebra I 4
ST2334Probability 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.

4 : The 24 MCs of CS modules refer to CS-coded modules listed in the 11 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 or H2 Mathematics. The 4 MCs gained from the waiver should be used to read an unrestricted elective.

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. PC1221 or PC1222 is for students without A-level or H2 Physics. Those who are precluded from doing either PC1221 or PC1222 will take a graded unrestricted elective in place of it.

9 : 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.