David Casperson, Assistant Professor and Chair
Liang Chen, Professor
Waqar Haque, Professor
Alex Aravind, Associate Professor
Jernej Polajnar, Associate Professor
Saif Zahir, Associate Professor
Desanka Polajnar, Adjunct Professor
Allan Kranz, Senior Lab Instructor
The Computer Science program gives students a thorough exposure to
basic areas like computer architecture, programming languages and
methodology, algorithms and data structures, systems programming,
operating systems and networking, knowledge-based and database systems,
software engineering, and theory. The student will develop the advanced
practical computing and problem-solving skills required for
professional work in modern industry, based on a strong conceptual
foundation and on insights into the nature of this rapidly changing
field. Each student will use advanced development tools, and will be
encouraged to approach problem-solving from a multidisciplinary point
of view. The program emphasizes direct co-operation with industry. Website:http://www.unbc.ca/computerscience
Major in Computer Science
A major in Computer Science requires at least 20 Computer Science
courses and at least 61 credit hours in Computer Science, at least 27 credit hours of which must be upper-division courses, and of those upper-division credits, at least 12 must be taken at the 400 level. MATH 335-3 and MATH 371-3 can count towards this requirement.
The following courses may not be used for credit towards a Computer Science major or joint major:
The minimum requirement for completion of a Bachelor of Science with a major in Computer Science is 120 credit hours.
Program Requirements
*Note: Unless otherwise specified, students enrolling in any Computer Science or Mathematics course
with prerequisites are required to have completed all prerequisite
courses for that course with a C- or better, or have permission to
enrol from the Program Chair.
must take two courses from the following list of science courses. It is recommended that computer science
majors take PHYS 110-4 and PHYS 111-4. However, students may take any two courses from the following list,
according to their interests, to fulfill the general science requirement:
*Note: MATH 371-3 Probability and Statistics for Scientists and Engineers is strongly recommended.
400 Level
At least 12 credit hours of Computer Science courses must be taken at
the 400 level, and at least nine of these credit hours must be outside
the seminar, project course (other than CPSC 400-3), research course, or special topics course
category.
Alternate courses may be substituted for the above with the written permission of the Program Chair and Dean of the College.
Subject Requirement
Six additional credit hours chosen from the following:
Probability and Statistics for Scientists and Engineers
Elective and Academic Breadth Requirement
Elective credit hours as necessary to ensure completion of a minimum of 120 credit hours, including any additional credits necessary to meet the Academic Breadth requirement of the University (see Academic Regulation 15). A total of 45 credit hours in upper-division (300- and 400-level) courses from any discipline are required for graduation.
The minimum requirement for completion of a Bachelor of Science with a
Joint Major in Computer Science and Mathematics is 123 credit hours.
MATH 342-3 (Biostatistics) may not be used for credit towards any Mathematics or Computer Science major, minor, or joint major.
MATH 150-3 (Finite Mathematics for Business and Economics) may not be used for credit towards any Mathematics or
Computer Science major or joint major.
*Note:PHYS 110-4 (Introductory Physics I: Mechanics) and PHYS 111-4 (Introductory Physics II: Waves and Electricity) are strongly recommended for all majors.
**Six credit hours of 300- or 400-level Computer Science.
Six credit hours of 400-level Computer Science (excluding seminar, project, and special topics courses).
Probability and Statistics for Scientists and Engineers
**Three credit hours of 300- or 400-level Mathematics.
Six credit hours of 400-level Mathematics.
**Note: Three of these 9 credit hours must be at the 400 level so that the
total number of Computer Science and Mathematics credit hours at the
400 level is at least 15.
Note:CPSC 340-3 (Theory of Computation) is recommended.
Elective and Academic Breadth Requirement
Elective credit hours as necessary to ensure completion of a minimum of 123 credit hours, including any additional credits necessary to meet the Academic Breadth requirement of the University (see Academic Regulation 15).
Joint Major in Computer Science/Physics
The minimum requirement for completion of a Bachelor of Science with a
Joint Major in Computer Science and Physics is 127 credit hours.
MATH 342-3 (Biostatistics) may not be used for credit towards any Mathematics or Computer Science major, minor, or joint major.
MATH 150-3 (Finite Mathematics for Business andEconomics) may not be used for credit towards any Mathematics or
Computer Science major or joint major.
PHYS 307-3 (Selected Topics in Environmental Physics) may not be used as Physics credit toward any Physics major, minor, or joint major.
*Six credit hours of 300- or 400-level Computer Science.
Six credit hours of 400-level Computer Science (excluding seminar, project, and special topics courses).
*Three credit hours of 300- or 400-level Physics.
Six credit hours of 400-level Physics (excluding seminar, project, and special topics courses).
*Three of these nine credit hours must be at the 400 level so that a
minimum of 15 credit hours of 400-level Computer Science and Physics
are completed.
Elective and Academic Breadth Requirement
Elective credit hours as necessary to ensure completion of a minimum of 127 credit hour, including any additional credits necessary to meet the Academic Breadth requirement of the University (see Academic Regulation 15).
Minor in Computing
The Minor in Computing requires the following 29 credit hours of courses: