Computer science at the School of Electrical Engineering and Computer Science combines the study of computation and information processing fundamentals with their application in the world around us. Computer scientists build fast, reliable, scalable and secure software systems to organize and analyze information. The honours curriculum comprises advanced topics in databases, artificial intelligence, computer graphics, security, distributed computing and algorithm design, culminating in an honours project.
This program teaches graduates how to use their creative and innovative talents to conceive, design and implement software systems. The Extended French Stream (EFS) is now available to all students in the Computer Science program. Our degrees are very flexible and include options, minors and a major, which can be used to explore connections between computer science and many other fields of study.
This program is offered in English and in French.
Compulsory courses are offered in English and French.
Co-operative education is available with this program.
The extended French stream is available with this program.
|ENG 1112||Technical Report Writing||3 Units|
|ITI 1100||Digital Systems I||3 Units|
|ITI 1120||Introduction to Computing I||3 Units|
|ITI 1121||Introduction to Computing II||3 Units|
|MAT 1320||Calculus I||3 Units|
|MAT 1322||Calculus II||3 Units|
|MAT 1341||Introduction to Linear Algebra||3 Units|
|MAT 1348||Discrete Mathematics for Computing||3 Units|
|CEG 2136||Computer Architecture I||3 Units|
|CSI 2101||Discrete Structures||3 Units|
|CSI 2110||Data Structures and Algorithms||3 Units|
|CSI 2120||Programming Paradigms||3 Units|
|CSI 2132||Databases I||3 Units|
|CSI 2911||Professional Practice in Computing||3 Units|
|MAT 2377||Probability and Statistics for Engineers||3 Units|
|SEG 2105||Introduction to Software Engineering||3 Units|
|CEG 3185||Introduction to Data Communications and Networking||3 Units|
|CSI 3104||Introduction to Formal Languages||3 Units|
|CSI 3105||Design and Analysis of Algorithms I||3 Units|
|CSI 3120||Programming Language Concepts||3 Units|
|CSI 3130||Databases II||3 Units|
|CSI 3131||Operating Systems||3 Units|
|CSI 3140||WWW Structures, Techniques and Standards||3 Units|
|CSI 4142||Introduction to Data Science||3 Units|
|CSI 4900||Honours Project||3 Units|
|One option from the following:||6 Units|
6 optional course units in computer engineering (CEG), in electrical engineering (ELG) or in software engineering (SEG) at the 3000 level; or in computer science (CSI) at the 4000 level
|Advanced Programming Concepts With C++|
and 3 optional course units in computer engineering (CEG), in electrical engineering (ELG) or in software engineering (SEG) at the 3000 level; or in computer science (CSI) at the 4000 level
|9 course units from:||9 Units|
|Introduction to Artificial Intelligence|
|Information Retrieval and the Internet|
|Design of Secure Computer Systems|
|6 elective course units||6 Units|
|24 elective course units of non-computing 1||24 Units|
Students are encouraged to choose 12 course units of administration, humanities, science or social science courses that relate to the data science domain.