2010-2011 Calendar | Computing Science |
Computing Science Honours Program
School of Computing Science | Faculty of Applied Sciences
91ÅÝܽ Calendar 2010-2011
The school offers an honours program leading to a bachelor of science (BSc) or a bachelor of arts (BA) degree. This undergraduate degree is appropriate for many interdisciplinary areas.
Admission Requirements
Entry into computing science programs is possible via
- direct admission from high school
- direct transfer from a recognized post-secondary institution, or combined transfer units from more than one post-secondary institution
- internal transfer from within 91ÅÝܽ
Admission is competitive. A separate admission average for each entry route is established each term, depending on spaces available and subject to the approval of the Dean of Applied Sciences. Admission averages are calculated over a set of courses satisfying particular breadth constraints.
See Undergraduate Admission for provisions governing high school direct entry or direct transfer from another post-secondary institution.
Please contact an advisor at
Guaranteed Placement Program
This admission entry program has been created for high school students who are not eligible for our direct admission program (based on their high school grade average), but still have a good grade average.
This program assures students of timely access to the courses needed to enter the computing science honours program under the internal transfer model.
Students may continue in the program for up to two years with a 2.40 or better CGPA.
Students who are considering this program are strongly recommended to meet with a school academic advisor within the first two terms of study. See .
Internal Transfer
Internal transfer allows students to transfer, within 91ÅÝܽ, from one faculty to another. Once you have completed our 3 qualifying courses (see below) you can apply for internal transfer into the School of Computing Science. 91ÅÝܽ students applying for School of Computing Science admission are selected on the basis of an admission Computing Related Grade Point Average. The CRGPA is calculated over the best three courses chosen as follows.
- one mathematics course chosen from: MACM 101, 201, MATH 150 (or 151), 152 and 240 (or 232)
- one computing course chosen from: CMPT 125 (or 126 or 128), 150, (or ENSC 150), 225, 250 and 275
- one additional mathematics or computing science course chosen from the above lists
No course may be included in the average if it is a duplicate of any previous course completed at 91ÅÝܽ or elsewhere. All three courses must be completed prior to application. See for information.
Continuation Requirements
Students should maintain a CGPA and a UDGPA of 3.00 in order to continue in the computing science honours program.
Program Requirements
Students complete 132 units, to at least 50 within the minimum of 60 upper division units, as specified below with a minimum graduation GPA of 3.00. For specific program information, course plans, schedules, etc see .
Lower Division Requirements
Students must complete the following curriculum. It is suggested that students complete a recommended schedule of courses within the first two years. See for recommended schedule.
Students complete
either
- CMPT 126-3 Introduction to Computing Science and Programming*
or both of
- CMPT 120-3 Introduction to Computing Science and Programming I*
- CMPT 125-3 Introduction to Computing Science and Programming II*
and all of
- CMPT 150-3 Introduction to Computer Design
- CMPT 225-3 Data Structures and Programming
- CMPT 250-3 Introduction to Computer Architecture
- CMPT 275-4 Software Engineering I
- MACM 101-3 Discrete Mathematics I
- MACM 201-3 Discrete Mathematics II
and one of
- MATH 150-4 Calculus I with Review
- MATH 151-3 Calculus I
- MATH 154-3 Calculus I for the Biological Sciences**
- MATH 157-3 Calculus for the Social Sciences I**
and one of
- MATH 152-3 Calculus II
- MATH 155-3 Calculus II for the Biological Sciences**
- MATH 158-3 Calculus for the Social Sciences II**
and one of
- MATH 232-3 Applied Linear Algebra
- MATH 240-3 Algebra I: Linear Algebra
and one of
- STAT 270-3 Introduction to Probability and Statistics I
- BUEC 232-4 Data and Decisions I (with permission of an advisor) 37-38 units
*to aid your choice, prior to enrolment, complete the self-evaluation test at
**with a grade of at least B+, and with school permission
Upper Division Requirements
Consult an advisor before commencing upper division requirements.
Additional computing science courses are required to bring the total upper division units in CMPT/MACM courses to at least 50 within the minimum of 60 upper division units, and an overall total of 132 units are required for the degree, together with a graduation grade point average of at least 3.00.
For information, see
Areas of Concentration
The primary upper division requirements are structured according to breadth, depth and credential requirements as listed below.
As part of a major program, students may complete one or more concentrations from these six areas: artificial intelligence, computer graphics and multimedia, computing systems, information systems, programming languages and software engineering, and theoretical computing science.
To complete a concentration, students complete the major requirements, including four courses in the corresponding section of Table I, at least two of which must be at the 400 division. Courses used to meet the requirements of a concentration may also be used to meet other program requirements.
- Table I – Computing Science Concentrations
-
Artificial Intelligence
- CMPT 310-3 Artificial Intelligence Survey
- CMPT 340-3 Biomedical Computing
- CMPT 411-3 Knowledge Representation
- CMPT 412-3 Computational Vision
- CMPT 413-3 Computational Linguistics
- CMPT 414-3 Model-Based Computer Vision
- CMPT 417-3 Intelligent Systems
- CMPT 418-3 Computational Cognitive Architecture
- CMPT 419-3 Special Topics in Artificial Intelligence
Computer Graphics and Multimedia
- CMPT 361-3 Introduction to Computer Graphics
- CMPT 363-3 User Interface Design
- CMPT 365-3 Multimedia Systems
- CMPT 368-3 Introduction to Computer Music Theory and Sound Synthesis
- CMPT 461-3 Image Synthesis
- CMPT 464-3 Geometric Modeling in Computer Graphics
- CMPT 466-3 Animation
- CMPT 467-3 Visualization
- CMPT 469-3 Special Topics in Computer Graphics
Computing Systems
- CMPT 300-3 Operating Systems I
- CMPT 305-3 Computer Simulation and Modeling
- CMPT 371-3 Data Communications and Networking
- CMPT 379-3 Principles of Compiler Design
- CMPT 401-3 Operating Systems II
- CMPT 431-3 Distributed Systems
- CMPT 432-3 Real-time Systems
- CMPT 433-3 Embedded Systems
- CMPT 471-3 Networking II
- CMPT 479-3 Special Topics in Computing Systems
- CMPT 499-3 Special Topics in Computer Hardware
Information Systems
- CMPT 301-3 Information Systems Management
- CMPT 354-3 Database Systems I
- CMPT 370-3 Information System Design
- CMPT 441-3 Introduction to Computational Biology
- CMPT 454-3 Database Systems II
- CMPT 456-3 Information Retrieval and Web Search
- CMPT 459-3 Special Topics in Database Systems
- CMPT 470-3 Web-based Information Systems
- CMPT 474-3 Web Systems Architecture
Programming Languages and Software
- CMPT 373-3 Software Development Methods
- CMPT 383-3 Comparative Programming Languages
- CMPT 384-3 Symbolic Computing
- CMPT 473-3 Software Quality Assurance
- CMPT 475-3 Software Engineering II
- CMPT 477-3 Introduction to Formal Verification
- CMPT 480-3 Foundations of Programming Languages
- CMPT 481-3 Functional Programming
- CMPT 489-3 Special Topics in Programming Languages
Theoretical Computing Science
- CMPT 307-3 Data Structures and Algorithms
- CMPT 308-3 Computability and Complexity
- CMPT 404-3 Cryptography and Cryptographic Protocols
- CMPT 405-3 Design and Analysis of Computing Algorithms
- CMPT 406-3 Computational Geometry
- CMPT 407-3 Computational Complexity
- CMPT 408-3 Theory of Computer Networks/Communications
- CMPT 409-3 Special Topics in Theoretical Computing Science
- MACM 300-3 Introduction to Formal Languages and Automata with Applications
- Table II – Application Courses
-
- CMPT 340-3 Computers in Biomedicine
- CMPT 441-3 Introduction to Computational Biology
- Table III – Computing Mathematics Courses
-
- MACM 316-3 Numerical Analysis I
- MACM 401-3 Symbolic Computation
- MATH 308-3 Linear Programming
- MATH 343-3 Combinatorial Aspects of Computing
- MACM 416-3 Numerical Analysis II
The following courses may be counted in one of the above tables with permission of the school.
- CMPT 318-3 Special Topics in Computing Science
- CMPT 415-3 Special Research Projects
- CMPT 416-3 Special Research Projects
- CMPT 496-3 Directed Studies
- CMPT 497-6 Dual Degree Program Capstone Project
- CMPT 498-6 Honours Research Project
Breadth Requirement
One course in each of the six areas of Table I is required. These courses must include
- CMPT 300-3 Operating Systems I
- CMPT 307-3 Data Structures and Algorithms
- CMPT 354-3 Database Systems I
Depth Requirement
Eighteen units of additional CMPT courses numbered CMPT 400 or above must be completed (excluding CMPT 415, 416 and 498, which may be included by special permission).
These courses must include CMPT 405 and at least one other course in the theoretical computing science concentration. At least four of the courses must be numbered 400 or above.
In addition, six units of research courses are required including both of
- CMPT 415-3 Special Research Projects
- CMPT 416-3 Special Research Projects
or
- CMPT 498-6 Honours Research Project
BSc Credential
For a BSc computing science degree, the following additional requirements must be met.
and one of
- CMPT 320-3 Social Implications – Computerized Society
- CMNS 353-4 Social Contexts of Information Technology
Other courses may be approved on submission of a detailed course outline to the school. 12 units
Writing, Quantitative, and Breadth Requirements
Students admitted to 91ÅÝܽ beginning in the fall 2006 term must meet writing, quantitative and breadth requirements as part of any degree program they may undertake. See Writing, Quantitative, and Breadth Requirements for university-wide information.
WQB Graduation Requirements A grade of C- or better is required to earn W, Q or B credit. |
|||
---|---|---|---|
Requirement | Units |
Notes | |
W - Writing | 6 |
Must include at least one upper division course, taken at 91ÅÝܽ within the student’s major subject | |
Q - Quantitative | 6 |
Q courses may be lower or upper division | |
B - Breadth | 18 |
Designated Breadth | Must be outside the student’s major subject, and may be lower or upper division 6 units Social Sciences: B-Soc 6 units Humanities: B-Hum 6 units Sciences: B-Sci |
6 |
Additional Breadth | 6 units outside the student’s major subject (may or may not be B-designated courses, and will likely help fulfil individual degree program requirements) |
Residency Requirements and Transfer Credit
The University’s residency requirement stipulates that, in most cases, total transfer and course challenge credit may not exceed 60 units, and may not include more than 15 units as upper division work.
- At least half of the program’s total units must be earned through 91ÅÝܽ study.
- At least two thirds of the program’s total upper division units must be earned through 91ÅÝܽ study.
- At least two thirds of the upper division units in the courses of a school offering (or joint offering) a program must be earned through that school at 91ÅÝܽ.
For information regarding transfer please see
Elective Courses
In addition to the courses listed above, students should consult an academic advisor to plan the remaining required elective courses.
Please visit