Minor in Computer Science

Objectives

This minor will provide students from non-computing discipline a competent level of programming skill, as well as basic knowledge in fundamental fields of computing.

Eligibility

Students from BEng (Electrical Engineering) are precluded from reading this minor.

Application

School of Computing Minor/Second major are restricted programmes which students must apply during the prescribed application window specified by the School via EduRec. Students will not be able to declare themselves in the Academic Plan Declaration Exercise (APAD) before CourseReg begins for each semester. APAD is only for open minors/second majors which do not require special approval from the host department to approve.

To apply for School of Computing minor/second major programme, students must submit their application to the School of Computing by the 4th semester of study, for enrolment at the start of their 5th semester of study.

With the recent revision to total unit requirements for Minor and Second Major programmes, the School is making special provision to allow students from Cohort 2019 a final application round to apply for School of Computing minor/second major programmes in Sem 1 AY21-22 only, for enrolment at the start of Sem 2 AY21-22. Any late request to enroll after our application window has closed will not be entertained.

Please take note that the application date will typically be from the Friday (9:00 AM) before reading week of each regular semester till end of first week of examinations on Sunday (11:59 PM), based on NUS academic calendar hereKindly refer here for more information on the application procedure for restricted programmes.

Structure

The programme structure for Cohort 2021 onwards is given below.

To be awarded a minor in Computer Science, students must pass five (5) courses, with a total of twenty (20) units.

Category I: Complete the following course:

CodeTitleUnits
CS1010 +Programming Methodology4
+: Students may take the equivalents to CS1010. For examples, CS1010E, CS1010FC/X, CS1010J, CS1010S, CS1101S, and CS1020E. Students who are exempted from CS1010 must complete another 4 units of courses from either Category II or III below,

 Category II: Complete three courses (12 units) from the following list:

CodeTitleUnits
CS1231Discrete Structures #4
CS2030Programming Methodology II ++4
CS2040Data Structures and Algorithms *4
CS2100Computer Organisation4
CS2102Database Systems4
CS2103Software Engineering ^4
CS2104Programming Language Concepts4
CS2105Introduction to Computer Networks &4
CS2106Introduction to Operating Systems4
CS2107Introduction to Information Security4
CS2108Introduction to Media Computing4
CS2109SIntroduction to AI and Machine Learning4

#: Student may take CS1231S or MA1100/T Basic Discrete Mathematics in place of CS1231.

++: Students who have taken CS2030S may use the course in place of CS2030.

*: Students who have taken CS2040C or CS2040S may use the course in place of CS2040.
^: Students may take CS2113 Software Engineering & Object-oriented Programming in place of CS2103.

&: Students may take EE4024 Computer Networks in place of CS2105

Category III: Satisfy the total unit requirement (of 20) by taking CS-coded courses at level-3000 and 4000.

Note:
A minimum of 60% of the total units of the Minor requirements must be earned from courses read in NUS. Courses read at NUS include all courses taught, co-taught, supervised or co-supervised by NUS faculty members. These consist of graded courses or courses with an ‘S’ or ‘CS’ grade. The remaining units may be earned through credit transfers, advanced placement and exemptions, from courses deemed relevant to the particular Second Major or Minor.

The programme structure for Cohort 2019/20 to 2020/21 is given below.

To be awarded a minor in Computer Science, students must pass five (5) courses, with a total of twenty (20) units.

Category I: Complete the following course:

CodeTitleUnits
CS1010 +Programming Methodology4

+: Students may take the equivalents to CS1010. For examples, CS1010E, CS1010FC/X, CS1010J, CS1010S, CS1101S, and CS1020E. Students who are exempted from CS1010 must complete another 4 units of courses from either Category II or III below,

Category II: Complete three courses (12 units) from the following list:

CodeTitleUnits
CS1231Discrete Structures #4
CS2030Programming Methodology II ++4
CS2040Data Structures and Algorithms *4
CS2100Computer Organisation4
CS2102Database Systems4
CS2103Software Engineering ^4
CS2104Programming Language Concepts4
CS2105Introduction to Computer Networks &4
CS2106Introduction to Operating Systems4
CS2107Introduction to Information Security4
CS2108Introduction to Media Computing4

#: Student may take CS1231S or MA1100/T Basic Discrete Mathematics in place of CS1231.
++: Students who have taken CS2030S may use the course in place of CS2030.
*: Students who have taken CS2040C or CS2040S may use the course in place of CS2040.
^: Students may take CS2113 Software Engineering & Object-oriented Programming in place of CS2103.
&: Students may take EE4024 Computer Networks in place of CS2105

Category III: Satisfy the total unit requirement (of 20) by taking CS-coded courses at level-3000 and 4000.

Note:
A minimum of 60% of the total units of the Minor requirements must be earned from courses read in NUS. Courses read at NUS include all courses taught, co-taught, supervised or co-supervised by NUS faculty members. These consist of graded courses or courses with an ‘S’ or ‘CS’ grade. The remaining units may be earned through credit transfers, advanced placement and exemptions, from courses deemed relevant to the particular Second Major or Minor.

The programme structure for Cohorts 2017 to 2018 is given below.

To be awarded a minor in Computer Science, students must pass six (6) courses, with a total of twenty-four (24) units.

Category I: Complete the following course:

CodeTitleUnits
CS1010 +Programming Methodology4

+: Students may take the equivalents to CS1010. For examples, CS1010E, CS1010FC/X, CS1010J, CS1010S, CS1101S, and CS1020E. Students who are exempted from CS1010 must complete another 4 units of courses from either Category II or III below,

Category II: Complete four courses from the following list:

CodeTitleUnits
CS1231Discrete Structures #4
CS2030Programming Methodology II ++4
CS2040Data Structures and Algorithms *4
CS2100Computer Organisation4
CS2102Database Systems4
CS2103Software Engineering ^4
CS2104Programming Language Concepts4
CS2105Introduction to Computer Networks &4
CS2106Introduction to Operating Systems4
CS2107Introduction to Information Security4
CS2108Introduction to Media Computing4

#: Student may take CS1231S or MA1100 in place of CS1231.
++: Students who have taken CS2030S may use the course in place of CS2030.
*: Students who have taken CS2040C or CS2040S may use the course in place of CS2040.
^: Students may take CS2113 Software Engineering & Object-oriented Programming in place of CS2103.
&: Students may take EE4024 Computer Networks in place of CS2105

Category III: Satisfy the total unit requirement (of 24) by taking CS-coded courses at level-3000 and 4000.

Note:
A minimum 16 units of the Minor requirements must be earned from courses read in NUS, unless indicated otherwise by Faculties/Departments for specific minors. Courses read at NUS include all courses taught, co-taught, supervised or co-supervised by one or more NUS faculty members. These would consist of graded courses with assigned grade points, or courses with an ‘S’ or ‘CS’ grade. The other 8 units may be earned through credit transfers, advanced placement and exemptions, provided these units are earned from courses deemed relevant to the particular Minor programme.

The programme structure for Cohorts 2016 and earlier is given below.

To be awarded a minor in Computer Science, students must pass six (6) courses, with a total of twenty-four (24) units.

Category I: Complete the following one course:

CodeTitleUnits
CS1010 +Programming Methodology4
Category I: Complete four courses from the following list:
CodeTitleUnits
CS1020+Data Structures and Algorithms I #4
CS1231Discrete Structures4
CS2010Data Structures and Algorithms II #4
CS2030Programming Methodology II #4
CS2040/CData Structures and Algorithms #4
CS2100Computer Organisation4
CS2102Database Systems4
CS2103Software Engineering ^4
CS2104Programming Language Concepts4
CS2105Introduction to Computer Networks4
CS2106Introduction to Operating Systems4
CS2107Introduction to Information Security4
CS2108Introduction to Media Computing4

+: Students may take the equivalents to CS1010 and CS1020. For examples, CS1010E, CS1010FC/X, CS1010J, CS1010S, CS1101S, and CS1020E.
#: Students who have already read CS1020 should read CS2010 as the subsequent course instead of CS2030 and CS2040 pair.  Students may take CS2040C in place of CS2040.
^: Students can take CS2113 Software Engineering & Object-Oriented Programming in place of CS2103.

Category I: Satisfy the total unit requirement (of 24) by taking CS-coded courses at level-3000 and 4000.

Note:
A minimum 16 units of the Minor requirements must be graded and factored into the GPA. The other 8 units may be earned through credit transfers, advanced placement, exemptions and CS-graded courses.