Skip to Main Content

Bachelor of Science (BSc) in Computer Science

Download as PDF

Computer ScienceFaculty of ScienceBSC - Bachelor of Science
Completion requirement

For Major Degree requirements, or if completing this program as a Second Degree, refer to:

Complete ALL of the following Requirement Sets:
Completion requirement

Department vs. Faculty Regulations

Programs in the Department of Computer Science are governed by a combination of general Faculty of Science regulations and the additional program specific regulations listed below.

It is essential for students to be familiar with both sets of regulations. It is helpful to read the Faculty Regulations first.

Students should consult Academic Requirements in their Student Centre periodically to ensure that requirements are being met. Also students are strongly urged to consult the Undergraduate Science Centre (USC) at all stages of their program.


First Courses in Computer Science

The Department of Computer Science offers the following courses for students who are interested in an introduction to the discipline of computer science or who wish to use computers more effectively. Each of Computer Science 217, 231 and 235 is intended primarily for a group of students (with differing academic objectives) who are interested in an introduction to computer science that includes an introduction to programming and that is available for credit in computer science programs. The pace at which programming concepts are introduced also differs in each course.

  • Computer Science 217 is recommended for students wishing to combine studies in computer science with studies in other disciplines, or who are in programs other than computer science and who are interested in a course that includes an introduction to programming. Material related to computer science will be introduced at a pace that is appropriate for students who are unfamiliar with programming or scripting. Upon completion of Computer Science 217, students who are interested in computer science programs would continue by taking Computer Science 219. The latter course includes additional lectures in order to ensure that students in this course sequence are adequately prepared for senior courses in computer science.

  • Computer Science 231 is recommended for computer science majors. Material related to computer science will be introduced at a somewhat faster pace than in Computer Science 217. Upon completion of Computer Science 231, students who are interested in computer science programs would continue by taking Computer Science 233.

  • Computer Science 235 is a challenging course intended for exceptional students. This course also includes an introduction to programming and it can be used in place of either Computer Science 217 and 219 or Computer Science 231 and 233 in the requirements for computer science programs. Students completing Computer Science 235 will have additional flexibility when choosing options in computer science and may be able to complete courses that are required for computer science programs more rapidly than would otherwise be possible.

  • Computer Science 203 is recommended for students who are not in computer science programs and who are interested in a course that introduces computer system fundamentals and tools, including spreadsheets, and database applications. This course generally does not include an extensive introduction to programming and it is not available for registration for computer science majors or minors.

  • Students that have completed Data Science 211 and wish to pursue a Computer Science Degree should take Computer Science 219.


Advanced Placement in Computer Science

Students in International Baccalaureate (IB) and Advanced Placement (AP) programs may be eligible for advanced credit in Computer Science courses, including Computer Science 217 and 219 or 231 and 233. See the Admissions section of this Calendar (A.13 Transfer Credit/Advanced Standing) for additional details.

Other students with backgrounds in Computer Science equivalent to Computer Science 231 or 231 and 233 may request advanced placement in Computer Science in order to have prerequisite requirements for these courses waived, after successful completion of an advanced placement examination. Interested students should see the Admissions section of this Calendar (A.13.2 Advanced Placement (AP) Program) for additional details, and contact the Department of Computer Science to apply.

Completion requirement

Students must successfully complete a minimum of 60 units, to a maximum of 66 units, in Courses Constituting the Field of Computer Science while fulfilling the Program Requirements.

Earn at least 60 credits from the following:
Completion requirement
Earn at least 6 credits from the following:
Earn at least 42 credits from the following:
Earn at least 72 credits from the following:
Completion requirement

Students may focus their program on one of nine areas of interest by including a specified set of courses in their Major or Honours degree. Successful completion will mean that the area of concentration will appear on the transcript. The concentrations and course requirements are:

Complete ANY of the following Requirement Sets:


Completion requirement

There is a Program Sequencing Guides for this program. This sequence describes both the recommended order in which courses should be taken and the recommended course(s) in instances where multiple courses may fulfill a degree requirement. All possible courses that may fulfill degree requirements are found in the Required Courses listed above.

Taking courses in the order of the Program Sequencing Guides will ensure students can complete their program in a timely fashion. The time to complete a program may be lengthened if students choose to complete their requirements in an alternate order.

Completion requirement

To complete an optional enhancement to this degree program, refer to:

Complete ANY of the following Requirement Sets:

Contact Us

Reach out to us if you have any questions about the new Calendar website or to provide feedback on any of the site navigation. For any questions regarding your program or for specific interpretations of regulations, please connect with an advisor for support.

Site Disclaimer

Please read the Important Notice and Disclaimer to understand your rights and responsibilities with regards to using the Academic Calendar.

The University of Calgary, located in the heart of Southern Alberta, both acknowledges and pays tribute to the traditional territories of the peoples of Treaty 7, which include the Blackfoot Confederacy (comprised of the Siksika, the Piikani, and the Kainai First Nations), the Tsuut’ina First Nation, and the Stoney Nakoda (including Chiniki, Bearspaw, and Goodstoney First Nations). The city of Calgary is also home to the Métis Nation within Alberta (including Nose Hill Métis District 5 and Elbow Métis District 6).

The University of Calgary is situated on land Northwest of where the Bow River meets the Elbow River, a site traditionally known as Moh’kins’tsis to the Blackfoot, Wîchîspa to the Stoney Nakoda, and Guts’ists’i to the Tsuut’ina. On this land and in this place we strive to learn together, walk together, and grow together “in a good way.”

Powered by Coursedog