Skip to content. Skip to navigation
McGill Home SOCS Home
Personal tools
You are here: Home Academic Undergraduates Programs Frequently Asked Questions
Science Minors
Science Majors
Joint Majors
Joint Honours
Arts Minors
Arts Majors
Arts & Science


Is a prior background in Computer Science necessary or implied?

For all our programs, a background in Computer Science is not necessary, as students may start their studies with the introductory course COMP 202. However, taking COMP 202 in the freshman year, or completing an equivalent course in CEGEP, would be an asset and allows students to take more advanced courses earlier in their program.

Students intending to pursue a Major in Computer Science or Software Engineering should have a reasonable mathematical background and should have completed MATH 140 Calculus 1 (or MATH 150 Calculus A), MATH 141 Calculus 2 (or MATH 151 Calculus B) and MATH 133 Vectors, Matrices and Geometry, or their CEGEP equivalents, with at least an average of B-.

Are there big differences in all the different programs offered?

The structure of all our different programs is very similar, especially with respect to the core required courses which provide the foundations of computer science. The programs mainly differ in number of total credits required, and in the choice of complementary COMP courses to be taken.

What's the difference between Computer Science and Software Engineering?

The School of Computer Science offers programs in Computer Science and programs in Software Engineering. Both types of programs share some common core courses which provide the foundations of computer science. The main difference is that the Software Engineering program contains a larger set of required courses concerning the principled design and development of software. See the program details for more information.

What's the difference between a B.Sc. and a B.S.E. degree in Software Engineering?

Students in both programs have a wide variety of job opportunities and access to internship opportunities. Both the B.Sc. and B.S.E programs in Software Engineering share a common core of software engineering courses. The big difference is in the courses to be taken outside of this common core.

The B.Sc. degree is structured so that students have some flexibility to take more courses on computer science or software topics which interest them. They also have the option to take 7 or 8 elective courses which gives an opportunity to take further higher-level software courses or to pursue a minor program in another field (like from Arts, Sciences or Management). With the B.Sc. degree students will learn all about Software Engineering and whatever else interests them. For students coming from CEGEP, the B.Sc. degree fits into 90 credits and can be completed in three years.

The B.S.E. degree is structured so that in addition to courses specific to Software Engineering, students must also take many engineering-specific courses that are common to the Engineering degrees, plus more courses related to hardware. For example, students in the B.S.E. program must take required courses such as Fundamentals of Electrical Engineering, Circuit Analysis, Fundamentals of Signals and Systems, and so on. Since the Engineering courses require more credits, there is less flexibility for taking more software courses, and much fewer electives. The inclusion of all of these extra Engineering courses also means that students must take more total credits. For students coming from CEGEP, the B.S.E. degree is 112-114 credits, meaning that it takes at least 3 1/2 years to complete. Students graduating from this program are eligible for registration as professional engineers, since the program has been accredited by the Canadian Engineering Accreditation Board.

For an in-depth comparison of the two programs check our our program comparison page.