Honours BSc with Specialization in Computer Science

120

Co-operative education is available with this program.

The extended French stream is available with this program.

Requirements for this program have been modified. Please consult the 2013-2014 calendars for the previous requirements.

ENG1112 Technical Report Writing 3
ITI1100 Digital Systems I 3
ITI1120 Introduction to Computing I 3
ITI1121 Introduction to Computing II 3
MAT1320 Calculus I 3
MAT1322 Calculus II 3
MAT1341 Introduction to Linear Algebra 3
MAT1348 Discrete Mathematics for Computing 3
CEG2136 Computer Architecture I 3
CSI2101 Discrete Structures 3
CSI2110 Data Structures and Algorithms 3
CSI2120 Programming Paradigms 3
CSI2132 Databases I 3
CSI2911 Pratique professionnelle de l'informatique / Professionnal Practice in Computing 3
MAT2377 Probability and Statistics for Engineers 3
SEG2105 Introduction to Software Engineering 3
CSI3104 Introduction to Formal Languages 3
CSI3105 Design and Analysis of Algorithms I 3
CSI3120 Programming Language Concepts 3
CSI3130 Databases II 3
CSI3131 Operating Systems 3
CSI3140 WWW Structures, Techniques and Standards 3
CEG3185 Introduction to Data Communications and Networking 3
CSI4900 Projets de recherche / Honours Project 3
6 optional course credits from 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
or
3 optional course credits from 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
CSI2372 Advanced Programming Concepts with C++ 3
12 optional course credits in computer science (CSI) at the 4000 level
27 course credits of non-computing, non mathematics courses1
3 course credits of free elective courses
Note(s)
1As electives, students are encouraged to choose fifteen credits of business or science courses (other than MAT) and twelve credits of humanities or social sciences courses. Alternatively, students may take a minor in a domain in which they expect to apply computing skills: The minor in Information Management Systems is specifically designed for this. See School of Management.