BSc in Computer Science (From 2018/2019)
Year I
|  |  |  | 
| CISC1001 | Programming Science | 3 | 
| CISC1004 | Introduction to Computer Science | 3 | 
| CISC1006 | Probability and Statistics | 3 | 
| MATH1003 | Intermediate Calculus | 3 | 
| Languages & Skills*: | ||
| EELC1001 | Interactive English I | 3 | 
| EELC1002 | Interactive English II | 3 | 
| CISC1000 | Information Technology Fundamentals and Practices | 3 | 
| CHLL1000 | Chinese Language or | |
| PORT1000 | Portuguese Language | 3 | 
| Community and Peer Education: | ||
| CPED1000 | Residential College Experiential Learning | 1 | 
| CPED1001 | Physical Education I | 0.5 | 
| CPED1002 | Physical Education II | 0.5 | 
| General Education Courses: | ||
| GEST1004 | Quantitative Reasoning for Science and Technology | 3 | 
| GELH1000 | Chinese Language and Culture | 3 | 
| GESB1000 | Ethics, Values, Law and Society | 3 | 
| Total Credits: | 35 | |
Year II
| CISC1002 | Discrete Structures | 3 | 
| CISC2001 | Computer Organization | 3 | 
| CISC2002 | Numerical Methods and Computation | 3 | 
| CISC2003 | Object Oriented Programming and Data Structures | 3 | 
| CISC2005 | Principles of Operating Systems | 3 | 
| CISC2006 | Algorithm Design and Analysis | 3 | 
| MATH1001 | Linear Algebra I | 3 | 
| Languages & Skills*: | ||
| EELC1003 | Academic English | 3 | 
| Community and Peer Education: | ||
| CPED2000 | Communication Skills and Leadership | 1 | 
| General Education Courses: | ||
| GEGA1000 | Macao and Chinese Civilization | 3 | 
| 1 GE course (Area of Science and Technology area) | 3 | |
| 1 GE course (Area of Literature and Humanities) | 3 | |
| 1 Free Elective Course | 3 | |
| Total Credits: | 37 | |
Year III
| CISC3000 | Introduction to Database Systems | 3 | 
| CISC3001 | Computer Networks | 3 | 
| CISC3026 | Software Engineering Principles | 3 | 
| CISC3002 | Mobile Application Programming or | 3 | 
| CISC3003 | Web Programming | |
| General Education Courses: | ||
| 1 GE Course (Area of Society and Behaviour) | 3 | |
| 1 GE Course (Area of Global Awareness) | 3 | |
| 1 Free Elective Course | 3 | |
| 4 CS Required Elective Courses | 12 | |
| Total Credits: | 33 | |
Year IV
| CISC4000 | Graduation Project | 6 | 
| CISC4001 | Professionalism and Ethics in Computer Science | 3 | 
| STGC3000 | Work-Integrated Education | 3 | 
| 2 Free Elective Courses | 6 | |
| 3 CS Required Elective Courses | 9 | |
| Total Credits: | 27 | |
| Grand Total: | 132 | |
| CS Required Elective Course List (each course is 3 credits)** | ||
| Stream A: Data Science and Artificial Intelligence | ||
| CISC3005 | Advanced Database Systems | 3 | 
| CISC3012 | Artificial Intelligence | 3 | 
| CISC3014 | Information Retrieval and Web Search | 3 | 
| CISC3018 | Cloud Computing and Big Data Systems | 3 | 
| CISC3023 | Machine Learning | 3 | 
| CISC3024 | Pattern Recognition | 3 | 
| CISC3025 | Natural Language Processing | 3 | 
| Stream B: Multimedia Computing | ||
| CISC3009 | Computer Graphics | 3 | 
| CISC3011 | Digital Image Processing | 3 | 
| CISC3016 | Multimedia Computing | 3 | 
| CISC3021 | Multimedia Forensics and Security | 3 | 
| CISC3024 | Pattern Recognition | 3 | 
| CISC3029 | Computer Vision | 3 | 
| Stream C: Software Engineering | ||
| CISC2007 | Human-Computer Interaction | 3 | 
| CISC2008 | Object-Oriented Analysis and Design Patterns | 3 | 
| CISC3010 | Distributed Computer Systems | 3 | 
| CISC3020 | Formal Software Specification | 3 | 
| CISC3022 | Software Testing | 3 | 
| CISC4002 | Software Project Management | 3 | 
| Other Electives: | ||
| CISC2004 | Compiler Construction | 3 | 
| CISC3006 | Computer Based Simulation | 3 | 
| CISC3007 | Formal Languages and Automata | 3 | 
| CISC3015 | Data and Information Visualization | 3 | 
| CISC3017 | Bioinformatics | 3 | 
| CISC3019 | Competition Programming and Problem Solving | 3 | 
| CISC3027 | Special Topics in Computer and Information Science | 3 | 
| CISC4003 | Information Security | 3 | 
| CISC3028 | Entrepreneurship in Computer Science | 3 | 
Remarks
- *Students who test out of some or all of the Languages course(s) are required to make up the credits by taking additional Free Elective(s).
- **Students are required to take 4 courses from one of the Stream A, B or C, and 3 courses from outside that Stream or from Other Electives in the CS Required Elective Course list.
