MACS (Matric Yr 2023)
BSc in Mathematical and Computer Sciences (Double Major)
Curriculum (Matriculation Year 2023)
- Overview
- Course Schedule by Year: Year 1 | Year 2 | Year 3 | Year 4
- Mathematical Sciences and Computer Science Common Core
- Mathematical Sciences Major Core
- Mathematical Sciences Major Prescribed Electives
- Computer Science Core
- Computer Science Major Prescribed Electives
- Professional Internship
- Final Year Project
- Specialization Areas
Curriculum Overview
Mathematical Sciences and Computer Science Common Core (including Final Year Project) | 28 AU |
Mathematical Sciences Core | 20 AU |
Mathematical Sciences Major Prescribed Electives 15 AU from listed courses, with at least 8 AU from MH4xxx courses. | 15 AU |
Computer Science Core | 21 AU |
Computer Science Major Prescribed Electives 5 courses from SC3xxx and SC4xxx, possibly forming part of a specialization area. | 15 AU |
Professional Internship (SC3920) | 10 AU |
Final Year Project (MH4900/SC4079) Students must do a Final Year Project (MH4900 or SC4079). A minimum CGPA of 4.50 and a grade of at least A- for the Final Year Project are required for the award of Honours (Highest Distinction). The Final Year Project must be jointly supervised by faculty members from both SCSE and the Division of Mathematical Sciences in SPMS. | 8 AU |
Interdisciplinary Collaborative Core: Common Core | 17 AU |
Interdisciplinary Collaborative Core: Foundational Core (including Professional Internship SC3920) | 15 AU |
Broadening and Deepening Electives (BDEs) Can take BDEs offered by any School. | 12 AU |
Total | 143 AU |
Notes:
- A specialization area can be fulfilled by taking at least 17 AU from a list of courses. A student may choose to specialize in one or more areas, or none at all.
- All core and track core courses, including Computer Science Core, cannot be mapped to exchange courses. A maximum of three Major Prescribed Electives, including Computer Science Major Prescribed Electives, can be mapped to exchange courses. Please refer to this page for more information.
Year 1
SC1003 - Introduction to Computational Thinking & Programming | 3 AU | Sem 1 |
SC1005 - Digital Logic | 3 AU | Sem 1 |
MH1100 - Calculus I | 4 AU | Sem 1 |
MH1200 - Linear Algebra I | 4 AU | Sem 1 |
MH1300 - Foundations of Mathematics | 4 AU | Sem 1 |
CC0003 - Ethics & Civics in a Multi-Cultural World | 2 AU | Sem 1 |
CC0002 - Navigating the Digital World | 2 AU | Sem 1 |
HW0001 - Introduction to Academic Communication For students who have not passed the Qualifying English Test (QET) | 0 AU | Sem 1 |
SC1006 - Computer Organisation and Architecture | 3 AU | Sem 2 |
SC1007 - Data Structures & Algorithms | 3 AU | Sem 2 |
MH1101 - Calculus II | 4 AU | Sem 2 |
MH1201 - Linear Algebra II | 4 AU | Sem 2 |
MH1301 - Discrete Mathematics | 3 AU | Sem 2 |
CC0001 - Inquiry and Communication in an interdisciplinary World | 2 AU | Sem 2 |
CC0005 - Healthy Living and Wellbeing | 3 AU | Sem 2 |
Year 2
SC2001 - Algorithms Design and Analysis | 3 AU | Sem 1 |
SC2002 - Object Oriented Design & Programming | 3 AU | Sem 1 |
SC2005 - Operating Systems | 3 AU | Sem 1 |
MH2100 - Calculus III | 4 AU | Sem 1 |
MH2500 - Probability and Introduction to Statistics | 4 AU | Sem 1 |
CC0006 - Sustainability: Society, Economy & Environment | 3 AU | Sem 1 |
SC2006 - Software Engineering | 3 AU | Sem 2 |
SC2207 - Introduction to Databases | 3 AU | Sem 2 |
SC2008 - Computer Networks | 3 AU | Sem 2 |
PS0002 - Introduction to Data Science and Artificial Intelligence | 3 AU | Sem 2 |
ML0004 - Career and Innovative Enterprise for the Future World | 2 AU | Sem 2 |
CC0007 - Science & Technology for Humanity | 3 AU | Sem 2 |
Broadening and Deepening Elective 1 | 3 AU | Sem 2 |
Year 3
CS Prescribed Elective 1 | 3 AU | Sem 1 |
MATH Prescribed Elective 1 | 3 AU | Sem 1 |
Broadening and Deepening Elective 2 | 3 AU | Sem 1 |
Broadening and Deepening Elective 3 | 3 AU | Sem 1 |
Broadening and Deepening Elective 4 | 3 AU | Sem 1 |
Effective Communication 2 | 2 AU | Sem 1 |
SC3920 - Professional Internship | 10 AU | Sem 2 |
Year 4
MH4900/SC4079 - Final Year Project | 8 AU | Sem 1+2 |
CS Prescribed Elective 2 | 3 AU | Sem 1 |
CS Prescribed Elective 3 | 3 AU | Sem 1 |
MATH Prescribed Elective 2 | 4 AU | Sem 1 |
MATH Prescribed Elective 3 | 4 AU | Sem 1 |
CS Prescribed Elective 4 | 3 AU | Sem 2 |
CS Prescribed Elective 5 | 3 AU | Sem 2 |
MATH Prescribed Elective 4 | 4 AU | Sem 2 |
Mathematical Sciences and Computer Science Common Core
SC1003 - Introduction to Computational Thinking and Programming | 3 AU |
SC1007 - Data Structures and Algorithms | 3 AU |
SC2001 - Algorithms Design and Analysis | 3 AU |
MH1100 - Calculus I | 4 AU |
MH1200 - Linear Algebra I | 4 AU |
MH1301 - Discrete Mathematics | 3 AU |
MH4900/SC4079 - Final Year Project | 8 AU |
Mathematical Sciences Major Core
MH1300 - Foundations of Mathematics | 4 AU |
MH1101 - Calculus II | 4 AU |
MH1201 - Linear Algebra II | 4 AU |
MH2100 - Calculus III | 4 AU |
MH2500 - Probability and Introduction to Statistics | 4 AU |
Mathematical Sciences Major Prescribed Electives
Student to choose 15AU, at least 8 AU must be from MH4XXX.
Computer Science Core
SC1005 - Digital Logic | 3 AU |
SC1006 - Computer Organization and Architecture | 3 AU |
SC2002 - Object Oriented Design and Programming | 3 AU |
SC2005 - Operating Systems | 3 AU |
SC2006 - Software Engineering | 3 AU |
SC2207 - Introduction to Databases | 3 AU |
SC2008 - Computer Network | 3 AU |
Computer Science Major Prescribed Electives
Students are to choose any five courses from SC3xxx and SC4xxx courses, possibly forming part of a specialization area.
Prescribed Electives | |
SC3000 - Artificial Intelligence | 3 AU |
SC4000 - Machine Learning | 3 AU |
SC4001 - Neural Networks and Deep Learning | 3 AU |
SC4002 - Natural Language Processing | 3 AU |
SC4003 - Intelligent Agents | 3 AU |
SC3010 - Computer Security | 3 AU |
SC4010 - Applied Cryptography | 3 AU |
SC4011 - Security Management | 3 AU |
SC4012 - Software Security | 3 AU |
SC4013 - Application Security | 3 AU |
SC4014 - Concepts and Techniques for Malware Analysis | 3 AU |
SC3020 - Database System Principles | 3 AU |
SC4020 - Data Analytics and Mining | 3 AU |
SC4021 - Information Retrieval | 3 AU |
SC4022 - Network Science | 3 AU |
SC4023 - Big Data Management | 3 AU |
SC4024 - Data Visualisation | 3 AU |
SC3030 - Advanced Computer Networks | 3 AU |
SC4030 - Wireless and Mobile Communication | 3 AU |
SC4031 - IoT - Communications and Networking | 3 AU |
SC4032 - Information Theory | 3 AU |
SC4033 - Network Security | 3 AU |
SC3040 - Advanced Software Engineering | 3 AU |
SC3041 - Compiler Techniques | 3 AU |
SC4040 - Advanced Topics in Algorithms | 3 AU |
SC4041 - Programming Languages | 3 AU |
SC3050 - Advanced Computer Architecture | 3 AU |
SC3051 - Modelling and Simulation | 3 AU |
SC4050 - Parallel Computing | 3 AU |
SC4051 - Distributed Systems | 3 AU |
SC4052 - Cloud Computing | 3 AU |
SC4053 - Blockchain Technology | 3 AU |
SC3060 - Computer Graphics and Visualisation | 3 AU |
SC3061 - Human-Computer Interaction | 3 AU |
SC4060 - Virtual and Augmented Reality | 3 AU |
SC4061 - Computer Vision | 3 AU |
Professional Internship
SC3920 - Professional Internship | 10 AU |
Final Year Project
MH4900/SC4079 - Final Year Project | 8 AU |
The Final Year Project must be jointly supervised by faculty members from both SCSE and the Division of Mathematical Sciences in SPMS.
Specialization Areas
A specialization area is fulfilled by taking at least 17 AU from one of the following course lists. A student may choose to specialize in one or more areas, or none at all.
Theoretical Computer Science | |
---|---|
MH3300 - Graph Theory | 4 AU |
MH3400 - Algorithms for the Real World | 4 AU |
MH4300 - Combinatorics | 4 AU |
MH4301 - Set Theory and Logic | 4 AU |
MH4302 - Theory of Computing | 4 AU |
MH4310 - Coding Theory | 4 AU |
MH4311 - Cryptography | 4 AU |
SC4010 - Applied Cryptography | 3 AU |
SC4040 - Advanced Topics in Algorithms | 3 AU |
SC4050 - Parallel Computing | 3 AU |
Cryptography and Cybersecurity | |
MH2220 - Algebra I | 3 AU |
MH3220 - Algebra II | 4 AU |
MH2200 - Groups and Symmetries | 3 AU |
MH3200 - Abstract Algebra I | 3 AU |
MH3210 - Number Theory | 4 AU |
MH4310 - Coding Theory | 4 AU |
MH4311 - Cryptography | 4 AU |
CZ4024 - Cryptography and Network Security | 3 AU |
CZ4055 - Cyber Physical System Security | 3 AU |
CZ4065 - Digital Forensics | 3 AU |
SC4001 - Neural Networks and Deep Learning | 3 AU |
SC4010 - Applied Cryptography | 3 AU |
SC4011 - Security Management | 3 AU |
SC4012 - Software Security | 3 AU |
SC4013 - Application Security | 3 AU |
Data Science | |
MH3510 - Regression Analysis | 4 AU |
MH3511 - Data Analysis with Computer | 3 AU |
MH3701 - Basic Optimization | 4 AU |
MH4500 - Time Series Analysis | 4 AU |
MH4501 - Multivariate Analysis | 4 AU |
MH4510 - Statistical Learning and Data Mining | 4 AU |
MH4511 - Sampling & Survey | 4 AU |
MH4513 - Survival Analysis | 4 AU |
MH4515 - Applied Bayesian Statistics | 4 AU |
MH4516 - Applied Categorical Data Analysis | 4 AU |
MH4517 - Data Applications in Natural Sciences | 4 AU |
MH4518 - Simulation Techniques in Finance | 4 AU |
SC3020 - Database System Principles | 3 AU |
SC4020 - Data Analytics and Mining | 3 AU |
CZ4033 - Advanced Data Management | 3 AU |
SC4000 - Machine Learning | 3 AU |
SC4011 - Security Management | 3 AU |
SC4022 - Network Science | 3 AU |
SC4023 - Big Data Management | 3 AU |
CZ4073 - Data Science for Business | 3 AU |
Financial Modelling Must include either MH4514 or MH4518. | |
MH3510 - Regression Analysis | 4 AU |
MH3512 - Stochastic Processes | 4 AU |
MH4110 - Partial Differential Equations | 4 AU |
MH4500 - Time Series Analysis | 4 AU |
MH4510 - Statistical Learning and Data Mining | 4 AU |
MH4514 - Financial Mathematics | 4 AU |
MH4518 - Simulation Techniques in Finance | 4 AU |
MH4519 - Financial Econometrics | 4 AU |
SC3020 - Database System Principles | 3 AU |
CZ4033 - Advanced Data Management | 3 AU |
SC4021 - Information Retrieval | 3 AU |
SC4000 - Machine Learning | 3 AU |
SC4001 - Neural Networks and Deep Learning | 3 AU |
CZ4073 - Data Science for Business | 3 AU |