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 to work with, and contribute to, a team to bring a range of technologies together to develop computer systems and solutions.
  • 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 and mathematics.

 

Degree Requirements

The Bachelor of Computing (Computer Science) programme, BComp(CS), requires at least 160 MCs.

(1) University-level Requirements1 (20 MCs)

(2) Unrestricted Electives (20 MCs)

(3) Programme Requirements (120 MCs)

Computer Science Foundation

  • CS1010 Programming Methodology2
  • CS1020 Data Structures and Algorithms I3
  • CS1231 Discrete Structures
  • CS2010 Data Structures and Algorithms II3
  • CS2100 Computer Organisation
  • CS2103T Software Engineering4
  • 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: 5

  • 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 at least 8 MCs of Computer Systems Team Project modules from the following pairs, or modules approved by the Department of Computer Science:

  • CS3201 Software Engineering Project I and CS3202 Software Engineering Project II, or
  • CS3216 Software Product Engineering for Digital Markets and CS3217 Software Engineering on Modern Application Platforms, or
  • CS3281 Thematic Systems Project I and CS3282 Thematic Systems Project II, or
  • CS3283 Media Technology Project I and CS3284 Media Technology Project II

Both CS3216 and CS3217 are 5-MC modules. Students who choose to take CS3216 and CS3217 will count 8-MC towards the Computer Systems Team Project requirement and 2- MC towards Unrestricted Electives. Students must take both CS3216 and CS3217 to complete the Software Engineering Team Project requirement. If a student completed only one of CS3216 and CS3217, he or she has to take another pair of modules to meet the Computer Systems Team Project requirement.

Industrial Experience Requirement

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 approved Industry Course from Computer Science Department (4 MCs). The remaining 2 MCs may be satisfied using Unrestricted Electives. Students should consult the CS Deputy Head (CS Programmes) in advance if they are interested in this option as industry courses may not be offered every year.
  • iLead or NOC. 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.

IT Professionalism

  • IS1103/FC Computing and Society
  • CS2101 Effective Communication for Computing Professionals 4
  • ES2660 Communicating in the Information Age

Mathematics & Sciences

  • MA1301 Introductory Mathematics6
  • MA1521 Calculus for Computing7
  • MA1101R Linear Algebra I
  • Either
    (ST2334 Probability and Statistics and a Science Module8)
    or
    (ST2131 Probability and ST2132 Mathematical Statistics)
  • PC1221 Fundamentals of Physics I or PC1222 Fundamentals of Physics II9
  • Science Module 110

 

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. Algorithms & Theory
  2. Artificial Intelligence
  3. Computer Graphics and Games
  4. Computer Security
  5. Database Systems
  6. Multimedia Information Retrieval
  7. Networking and Distributed Systems
  8. Parallel Computing
  9. Programming Languages
  10. Software Engineering

 

NUS Overseas Colleges (NOC) – Computer Science

Students who attended NOC programme may:

  • count TR3201 Entrepreneurship Practicum (8 MCs) towards CS3882 Breakthrough Ideas for Digital Markets (4 MCs) and one bridging module at 4 MCs. The mapping to bridging module (MA1301/PC1221/PC1222) applies to CS students with A-level or equivalent qualifications in either Mathematics or Physics.  These students replace the missing MCs for the bridging modules with unrestricted electives.  Dummy CS codes CSX3741 and CSX3742 will be issued in place of MA1301 and PC1221/PC1222 respectively.
  • count TR3202 Start-up Internship Programme (12 MCs) towards Industrial Experience Requirement.
  • count TR3203 Start-up Case Study and Analysis towards Unrestricted Electives. Students working on computer systems term projects for TR3203 may seek approval to instead take TR3203P, which counts towards CS3201/2 Software Engineering Project I/II or equivalent pairs.  Alternatively, TR3203 can be mapped to TR3203E in which 8 MCs of CS-coded electives at level-3000 can be considered for the fulfilment of CS Breadth and Depth Requirements.

 

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 read GER1000 Quantitative Reasoning (4 MCs) as compulsory module for the University Level Requirements (ULR). The remaining 16 MCs in ULR are replaced by the 3 USP Inquiry Modules and 1 USP Foundation module ( i.e. 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.

 

Computer Science degree with a minor in Management from NUS Business School

During Admission Exercise AY2015-16, candidates may apply for direct admission for CS courses with a minor in Management from the NUS Business School. For details of minor in Management requirements, please click here. The modular credit (MC) requirement for a Minor programme should be at least 24 MCs, of which up to 8 MCs may be used to meet the requirements for both the Minor and a Major or another Minor subject to the agreement of the particular department(s), faculty/faculties or programme(s) hosting the Minor. For further details on minor structure, please click here.

 

Summary of degree requirements for Bachelor of Computing (Computer Science)

ModulesMCsSubtotals

UNIVERSITY LEVEL REQUIREMENTS1

  20
PROGRAMME REQUIREMENTS   120
Computer Science Foundation
36
 
CS1010 Programming Methodology2
4
CS1020 Data Structures and Algorithms I3
4
CS2010 Data Structures andAlgorithms II3
4
CS1231 Discrete Structures
4
CS2100 Computer Organisation
4
CS2103T Software Engineering4
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:5
  • 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 at least 8 MCs of Computer Systems Team Project modules from the following pairs, or modules approved by the Department of Computer Science:

CS3201 Software Engineering Project I and CS3202 Software Engineering Project II, or
CS3216 Software Product Engineering for Digital Markets and CS3217 Software Engineering on Modern Application Platforms, 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
12
IS1103/FC/X Computing and Society
4
CS2101 Effective Communication for Computing Professionals4
4
ES2660 Communicating in the Information Age 4
Mathematics and Sciences
28
MA1301/FC/X Introductory Mathematics6
4
MA1521Calculus for Computing7
4
MA1101R Linear Algebra I
4
Either
(ST2334 Probability and Statistics and a Science Module8>)
or
(ST2131 Probability and ST2132 Mathematical Statistics)
8
PC1221/FC/X Fundamental of Physics I or PC1222/X Fundamentals of Physics II 9
4
1 Science Module10
4
UNRESTRICTED ELECTIVES   20
Grand Total   160

 

Footnote:

1 : Students can refer to: http://www.nus.edu.sg/registrar/gem/home for the requirements for ULR.

2 : CS1010 can be replaced by CS1101S Programming Methodology.

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

4 : Students taking CS2103T Software Engineering must take CS2101 Effective Communication for Computing Professionals in the same semester.

5 : The 24 MCs of CS modules refer to CS-coded modules listed in the 10 CS Focus areas and IFS4101 Legal Aspects of Information Security. 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.

6 : MA1301/FC/X is waived for students with A-level Mathematics. The 4 MCs gained from the waiver should be used to read another module.

7 : Students pursuing double degree in Computer Science and Mathematics/Applied Mathematics are recommended to replace MA1521 Calculus for Computing by MA1102R Calculus.

8 : The Science module must be from List S1 (recommended) or List S2. Please click here for the lists.

9 : Students who have not taken ‘O’-level Physics may replace PC1221 or PC1222 by a life-science module.  PC1221 or PC1222 is waived for students with A-level Physics. The 4 MCs gained from the waiver should be used to read another module.

10 : Science modules must be either Physics, Chemistry or Life-Science or Mathematics modules. Science modules must be modules from List S1 (recommended) or List S2. Please refer to: Sciencemodules_S1_S2.pdf for the details.

 

Student Statistics

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