Offered Courses
Last updated on 2023/07/05
Requirements Legendβ
πBachelor of Computer Science (General)
πBachelor of Computer Science (Honours)
π²Bachelor of Computer Science (Honours Applied Computing)
π½Bachelor of Science (Honours Computer Information Systems)
βBachelor of Science (Honours Computer Science with Software Engineering Specialization)
πBachelor of Commerce (Honours Business Administration and Computer Science)
πBachelor of Mathematics (Honours Mathematics and Computer Science)
πBachelor of Information Technology (BIT)
Disclaimerβ
The offering sequence of the courses listed in this table is an estimate based on previous years' data and the typical annual offering table offered by the School of Computer Science. The Computer Science Society cannot guarantee the offering of any courses that are listed below, so it is best to consult an academic advisor about your course sequencing every semester.
Course Requirementsβ
The required courses listed here are limited to Computer Science and Math/Stats courses that are common in CS programs. For all course requirements for your program, see the current Undergraduate Calendar.
Course Offering Table | ||||||
---|---|---|---|---|---|---|
Course Code | Course Name | Fall | Winter | Summer | Required | Prerequisite(s) |
Search: | ||||||
COMP-1000 | Key Concepts in Computer Science | β | β | β | πππ²π½βπππ | |
COMP-1047 | Computer Concepts for End-Users | β | β | β | π | |
COMP-1400 | Intro to Programming and Algorithms I | β | β | β | πππ²π½βππ | |
COMP-1410 | Intro to Programming and Algorithms II | β | β | β | πππ²π½βππ | COMP-1000 or MATH-1720, COMP-1400 |
COMP-2057 | Intro to the Internet | β | β | β | π | COMP-1047 or COMP-2067 or COMP-1400 |
COMP-2067 | Programming for Beginners | β | β | β | π | |
COMP-2077 | Problem Solving and Information on the Internet | β | β | β | COMP-1047, COMP-2057 | |
COMP-2087 | Programming for Beginners II | β | β | β | π | COMP-2067 |
COMP-2097 | Social Media and Mobile Technology for End Users | β | β | β | π | |
COMP-2120 | Object Oriented Programming Using Java | β | β | β | πππ²π½βππ | COMP-1410 or COMP-2087 |
COMP-2140 | Computer Languages, Grammars and Translators | β | β | β | πβπ | COMP-1000, COMP-2120 |
COMP-2310 | Theoretical Foundations of Computer Science | β | β | β | πβπ | COMP-1000, MATH-1020 |
COMP-2540 | Data Structures and Algorithms | β | β | β | πππ²π½βππ | COMP-1000, COMP-1410 |
COMP-2547 | Applied Algorithms and Data Structures | β | β | β | π | COMP-1000, COMP-2087 |
COMP-2560 | System Programming | β | β | β | πππ²π½βππ | COMP-1410 or COMP-2087 |
COMP-2650 | Computer Architecture I | β | β | β | πππ²π½βππ | COMP-1400 or COMP-2650 |
COMP-2660 | Computer Architecture II | β | β | β | πππ²π½β | COMP-2650 |
COMP-2707 | Advanced Website Design | β | β | β | π | COMP-2057 |
COMP-2750 | Selected Topics | β | β | β | COMP-1000 or MATH-1720, COMP-1410 or COMP-2087 | |
COMP-2800 | Software Development | β | β | β | β | COMP-2120 |
COMP-3037 | Information Security for IT | β | β | β | π | COMP-2057 or COMP-2067 |
COMP-3057 | Cyber-Ethics | β | β | β | π | COMP-1047, COMP-2057 |
COMP-3067 | Applied Databases | β | β | β | π | COMP-2547 |
COMP-3077 | Web-Based Data Management | β | β | β | π | COMP-2707 |
COMP-3110 | Introduction to Software Engineering | β | β | β | πβ | COMP-2120, COMP-2540 or COMP-2547 |
COMP-3150 | Database Management Systems | β | β | β | πππ²π½βππ | COMP-2560 or COMP-2650, COMP-2540 |
COMP-3220 | Obj Oriented Software Analysis and Design | β | β | β | πππ²π½β | COMP-2540, COMP-2120 |
COMP-3250 | Data Analytics I | β | β | β | π | COMP-2547 or COMP-2540, STAT-2910 |
COMP-3300 | Operating System Fundamentals | β | β | β | πππ²π½βπ | COMP-2540, COMP-2120, COMP-2560, COMP-2650 or COMP-2660 |
COMP-3340 | WWW Information System Development | β | β | β | ππ²π½π | COMP-2540, COMP-2120 |
COMP-3400 | Advanced Object Oriented System Design Using C++ | β | β | β | π²π½ | COMP-2560, COMP-2120 |
COMP-3500 | Introduction to Multimedia Systems | β | β | β | COMP-2540, COMP-2650 | |
COMP-3520 | Introduction to Computer Graphics | β | β | β | COMP-2540, MATH-1250 | |
COMP-3540 | Theory of Computation | β | β | β | πβ | COMP-2540, COMP-2310, COMP-2140 |
COMP-3670 | Computer Networks | β | β | β | ππ²βπ | COMP-2120, COMP-2540 or COMP-2547, COMP-2560, COMP-2650 |
COMP-3680 | Network Practicum | β | β | β | COMP-3300, COMP-3670 | |
COMP-3710 | Artificial Intelligence Concepts | β | β | β | STAT-2910 or STAT-2920, COMP-2540 | |
COMP-3770 | Game Design, Development, and Tools | β | β | β | COMP-2540, COMP-2120 | |
COMP-4110 | Software Verification and Testing | β | β | β | β | COMP-3110, COMP-3300 |
COMP-4150 | Advanced and Practical Database Systems | β | β | β | π² | COMP-3150, COMP-3300 |
COMP-4200 | Mobile Application Development | β | β | β | π² | COMP-3150, COMP-3220 |
COMP-4220 | Agile Software Development | β | β | β | π² | COMP-3220 |
COMP-4250 | Big Data Analytics and Database Design | β | β | β | π²π | COMP-3150 or COMP-3250 |
COMP-4400 | Principles of Programming Languages | β | β | β | πβ | COMP-2140, COMP-2310, COMP-2540 |
COMP-4500 | 3D Multimedia System Development | β | β | β | Other requirements (see [1]) | |
COMP-4540 | Design and Analysis of Algorithms | β | β | β | πβ | COMP-2310, COMP-2540 |
COMP-4670 | Network Security | β | β | β | COMP-3670 | |
COMP-4680 | Advanced Networking | β | β | β | COMP-3670, COMP-3680 | |
COMP-4730 | Advanced Topics in AI I | β | β | β | COMP-3710 | |
COMP-4740 | Advanced Topics in AI II | β | β | β | COMP-3710 | |
COMP-4770 | Artifical Intelligence for Games | β | β | β | COMP-3770 | |
COMP-4800 | Selected Topics in Software Engineering | β | β | β | β | COMP-3110, COMP-3220, COMP-3300 |
COMP-4960 | Research Project | β | β | β | πβ | |
COMP-4990 | Project Management: Techniques and Tools | β | β | β | ππ²π½βπ | |
MATH-1020 | Mathematical Foundations | β | β | β | πβπ | COMP-1000 or MATH-1250 or MATH-1260 or MATH-1270 |
MATH-1250 | Linear Algebra I | β | β | β | πππ²π½βππ | |
MATH-1720 | Differential Calculus | β | β | β | πππ²π½βππ | |
MATH-1730 | Integral Calculus | β | β | β | πβπ | MATH-1760 or MATH-1720 |
MATH-3940 | Numerical Analysis for Computer Scientists | β | β | β | π | MATH-1250 or MATH-1260 or MATH-1270, COMP-1410, MATH-1730 |
STAT-2910 | Statistics for the Sciences | β | β | β | πππ²π½βππ |
Special Instructionsβ
- [1] The only requirements for enrolling in COMP-4500 is to be in Year 3/4 standing in Computer Science or Communication, Media, and Film or Visual Art programs. In addition, you need the consent of the instructor to enroll in the course.
- [2] MATH-1250 can be substituted by MATH-1260, and MATH-1720 can be substituted by MATH-1760.