Course offerings
Explore the courses offered to graduate and undergraduate students at the Department of Computer Science.
Note that the term information below is current as of the time when this document was produced. Course availability may vary by term or year. Always confirm your course planning in Aurora or by speaking to a science academic advisor.
Check with your instructor for up-to-date and term-specific information, such as whether the current offering has a website or additional materials. Official course details are available through the Academic Calendar; below is a general reference only and is subject to change.
On this page
Undergraduate courses
Below, we present a detailed and structured list of the undergraduate courses that students typically engage with during their academic journey. The courses are categorized year-by-year, spanning from the foundational year 1 through the specialized and advanced topics of year 4.
2024 - 2025 courses
Presented below is the most recent and updated list of undergraduate courses for the academic years 2024 - 2025. This compilation reflects the latest curricular changes and offerings for students.
COMP 1000 courses
Year 1 courses
- COMP 1000 - Introductory Programming: Think Like a Computer
- COMP 1002 - Introduction to Tools and Techniques in Computer Science 1
- COMP 1006 - Introduction to Tools and Techniques in Computer Science 2
- COMP 1010 - Introductory Computer Science 1
- COMP 1012 - Computer Programming for Scientists and Engineers
- COMP 1020 - Introductory Computer Science 2
- COMP 1600 - Navigating Your Digital World
COMP 2000 courses
Year 2 courses
- COMP 2002 - Tools and Techniques in Computer Science 1
- COMP 2006 - Tools and Techniques in Computer Science 2
- COMP 2080 - Analysis of Algorithms
- COMP 2140 - Data Structures and Algorithms
- COMP 2150 - Object Orientation
- COMP 2160 - Programming Practices
- COMP 2280 - Introduction to Computer Systems
- COMP 2600 - Technical Communication in Computer Science
COMP 3000 courses
Year 3 courses
- COMP 3010 - Distributed Computing
- COMP 3020 - Human-Computer Interaction 1
- COMP 3030 - Automata Theory and Formal Languages
- COMP 3060 - Programming Paradigms
- COMP 3170 - Analysis of Algorithms and Data Structures
- COMP 3190 - Introduction to Artificial Intelligence
- COMP 3350 - Software Engineering 1
- COMP 3370 - Computer Organization
- COMP 3380 - Databases Concepts and Usage
- COMP 3430 - Operating Systems
- COMP 3490 - Computer Graphics 1
COMP 4000 courses
Year 4 courses
- COMP 4020 - Human-Computer Interaction 2
- COMP 4060 - Advanced Topics in Computer Science
- COMP 4062 - Honours Topics in Computer Science
- COMP 4140 - Introduction to Cryptography and Cryptosystems
- COMP 4190 - Artificial Intelligence
- COMP 4350 - Software Engineering 2
- COMP 4360 - Machine Learning
- COMP 4420 - Advanced Design and Analysis of Algorithms
- COMP 4510 - Introduction to Parallel Computation
- COMP 4522 - Honours Project
- COMP 4550 - Real-Time Systems
- COMP 4560 - Industrial Project
- COMP 4580 - Computer Security
- COMP 4620 - Professional Practice in Computer Science
- COMP 4710 - Introduction to Data Mining
- COMP 4820 - Bioinformatics
Undergraduate course syllabus
Provided are the PDF files for our undergraduate courses, offering in-depth details for each subject. These documents cover everything from learning objectives to assessment criteria, equipping students with a clear academic roadmap.
This content is available in alternate formats upon request to sci.accessibility@umanitoba.ca.
COMP 1000 courses
COMP 2000 courses
COMP 3000 courses
COMP 4000 courses
- COMP 4020 (PDF)
- COMP 4050 (PDF)
- COMP 4140 (PDF)
- COMP 4190 (PDF)
- COMP 4350 (PDF)
- COMP 4360 (PDF)
- COMP 4300 (PDF)
- COMP 4420 (PDF)
- COMP 4380 (PDF)
- COMP 4430 (PDF)
- COMP 4490 (PDF)
- COMP 4510 (PDF)
- COMP 4522 (PDF)
- COMP 4560 (PDF)
- COMP 4550 (PDF)
- COMP 4580 (PDF)
- COMP 4620 (PDF)
- COMP 4710 (PDF)
- COMP 4820 (PDF)
Graduate courses
For those advancing to postgraduate studies, we've compiled an extensive overview of our graduate courses. This includes not only the course titles, but also the specific semesters they are offered, the esteemed instructors responsible for teaching them, the scheduled days and times for each session, and the corresponding credit values.
2024 - 2025 courses
Presented below is the most recent and updated list of graduate courses for the academic years 2024 - 2025. This compilation reflects the latest curricular changes and offerings for postgraduate students.
COMP 7210 - Research Methodologies
- Associate term: Fall
- Instructors: Ruppa K. Thulasiram
COMP 7570 - Parallel Programing for GPUs
- Associate term: Fall
- Instructors: Christopher Henry
COMP 7750 - Computational Complexity Theory
- Associate term: Fall
- Instructors: Avery Miller
COMP 7850 - Advances in Parallel Computing
- Associate term: Fall
- Instructors: Parimala Thulasiraman
COMP 7860 - Cyber Threat Intelligence and Response
- Associate term: Fall
- Instructors: Azadeh Tabiban
COMP 7570 - Blockchain systems and decentralized applications
- Associate term: Winter
- Instructors: Sara Rouhani
COMP 7570 - Robotics for Human-Robot Interaction
- Associate term: Winter
- Instructors: James Young
COMP 7720 - Introduction to Differential Privacy
- Associate term: Winter
- Instructors: Jimmy Zhu
COMP 7890 - Data-driven Software Engineering
- Associate term: Winter
- Instructors: Shaowei Wang
COMP 7920 - Human-AI Interaction
- Associate term: Winter
- Instructors: Andrea Bunt
COMP 7922 - Computational Geometry
- Associate term: Winter
- Instructors: Stephane Durocher
Contact us
Department of Computer Science
E2-445 EITC, 75 Chancellors Cir
University of Manitoba
Winnipeg, Manitoba, R3T 5V6 Canada
queries@cs.umanitoba.ca - General inquiries
cs.gradprogram@umanitoba.ca - Graduate Program inquiries
cs-support@lists.umanitoba.ca - Technical support for students