Computer Science (CS)
School of Computer Science, College of Engineering and Physical Sciences
Major Requirements (Honours)
This is a major within the degree: Bachelor of Computing.
Since many courses are offered in only one semester and course pre-requisites place an ordering on courses, the following program of studies is designed so that students can schedule their courses over 8 semesters of study. Students deviating from this schedule must consult with their academic advisor.
Code | Title | Credits |
---|---|---|
Semester 1 | ||
CIS*1300 | Programming | 0.50 |
CIS*1910 | Discrete Structures in Computing I | 0.50 |
MATH*1200 | Calculus I | 0.50 |
1.00 credits from Area of Emphasis or electives | 1.00 | |
Semester 2 | ||
CIS*2500 | Intermediate Programming | 0.50 |
CIS*2910 | Discrete Structures in Computing II | 0.50 |
MATH*1160 | Linear Algebra I | 0.50 |
1.00 credits from Area of Emphasis or electives | 1.00 | |
Semester 3 | ||
CIS*2030 | Structure and Application of Microcomputers | 0.50 |
CIS*2430 | Object Oriented Programming | 0.50 |
CIS*2520 | Data Structures | 0.50 |
1.00 credits from Area of Emphasis or electives | 1.00 | |
Semester 4 | ||
CIS*2750 | Software Systems Development and Integration | 0.50 |
CIS*3110 | Operating Systems I | 0.50 |
CIS*3490 | The Analysis and Design of Computer Algorithms | 0.50 |
1.00 credits from Area of Emphasis or electives | 1.00 | |
Semester 5 | ||
CIS*3150 | Theory of Computation | 0.50 |
CIS*3750 | System Analysis and Design in Applications | 0.50 |
STAT*2040 | Statistics I 1 | 0.50 |
1.00 credits from Area of Emphasis or electives | 1.00 | |
Semester 6 | ||
CIS*3760 | Software Engineering | 0.50 |
0.50 CIS electives at the 3000 level or above | 0.50 | |
1.50 credits from Area of Emphasis or electives | 1.50 | |
Semester 7 | ||
1.00 credits in CIS at 3000 level or above | 1.00 | |
1.00 credits in CIS at the 4000 level | 1.00 | |
0.50 credits from Area of Emphasis or electives | 0.50 | |
Semester 8 | ||
CIS*4650 | Compilers | 0.50 |
0.50 credits in CIS at the 3000 level or above | 0.50 | |
0.50 credits in CIS at the 4000 level | 0.50 | |
1.00 credits from Area of Emphasis or electives | 1.00 |
- 1
Students pursuing the Data Science Area of Emphasis should consider taking STAT*2040 in an earlier semester.
Areas of Emphasis
Students must complete an Area of Emphasis consisting of 4.00 credits in order to graduate. Students may complete only one Area of Emphasis.
Data Science
The Data Science Area of Emphasis focuses on the analysis and interpretation of large data sets to solve real-world problems. Students will learn data analysis, visualization, and machine learning techniques.
Code | Title | Credits |
---|---|---|
CIS*3130 | System Modeling and Simulation | 0.50 |
CIS*3530 | Database Systems and Concepts | 0.50 |
CIS*4020 | Data Science | 0.50 |
CIS*4780 | Computational Intelligence | 0.50 |
MATH*1210 | Calculus II | 0.50 |
STAT*2050 | Statistics II | 0.50 |
STAT*3210 | Experimental Design | 0.50 |
STAT*3240 | Applied Regression Analysis | 0.50 |
User Experience (UX)
The User Experience Area of Emphasis is a study of user-centered design. Students will learn how to conduct research to understand user needs related to technology design, and learn to design, build and test interactive prototypes to validate their ideas.
Code | Title | Credits |
---|---|---|
CIS*1050 | Web Design and Development | 0.50 |
CIS*2170 | User Interface Design | 0.50 |
CIS*4300 | Human Computer Interaction | 0.50 |
STAT*2050 | Statistics II | 0.50 |
Select 0.50 credits from: | ||
CIS*3530 | Database Systems and Concepts | 0.50 |
CIS*3700 | Introduction to Intelligent Systems | 0.50 |
CIS*4020 | Data Science | 0.50 |
CIS*4820 | Game Programming | 0.50 |
Select 1.50 credits from: | ||
ANTH*1150 | Introduction to Anthropology | 0.50 |
ANTH*2180 | Public Anthropology | 0.50 |
ANTH*2230 | Regional Ethnography | 0.50 |
ANTH*2660 | Contemporary Indigenous Peoples in Canada | 0.50 |
CTS*1000 | Culture and Technology: Keywords | 0.50 |
CTS*2010 | Digital Approaches to Culture | 0.50 |
CTS*3010 | Digital Arts & Critical Making | 0.50 |
CTS*3020 | Digital Storytelling | 0.50 |
HROB*2090 | Individuals and Groups in Organizations | 0.50 |
ONEH*1000 | Introduction to One Health | 0.50 |
PSYC*1000 | Introduction to Psychology | 0.50 |
PSYC*2390 | Sensation and Perception | 0.50 |
PSYC*2450 | Developmental Psychology | 0.50 |
PSYC*3800 | Psychology and Education | 0.50 |
SOAN*2120 | Introductory Methods | 0.50 |
SOAN*2290 | Identities and Cultural Diversity | 0.50 |
SOAN*3040 | Globalization of Work and Organizations | 0.50 |
SOC*1100 | Sociology | 0.50 |
SOC*2280 | Society, Knowledge Systems and Environment | 0.50 |
SOC*2390 | Class and Stratification | 0.50 |
SOC*3410 | Individual and Society | 0.50 |
SXGN*1000 | Introduction to Sexualities and Genders | 0.50 |
SXGN*1010 | Sexuality, Gender, Race, and Indigeneity | 0.50 |
Cybersecurity
The Cybersecurity Area of Emphasis equips students with the skills to protect computer systems and networks from cyber threats. Students will learn to identify security risks, implement cryptographic techniques, and design secure systems.
Code | Title | Credits |
---|---|---|
CIS*3210 | Computer Networks | 0.50 |
CIS*3530 | Database Systems and Concepts | 0.50 |
CIS*4010 | Cloud Computing | 0.50 |
CIS*4510 | Computer Security Foundations | 0.50 |
CIS*4520 | Introduction to Cryptography | 0.50 |
MATH*3130 | Abstract Algebra | 0.50 |
PHIL*2120 | Ethics | 0.50 |
Select 0.50 credits from: | ||
HIST*1150 | The Modern World | 0.50 |
HIST*1250 | Science and Technology in a Global Context | 0.50 |
HIST*2040 | War and Society | 0.50 |
HIST*2220 | Buying and Selling: Consumer Cultures | 0.50 |
Artificial Intelligence (AI)
The AI Area of Emphasis focuses on teaching students how to design and build systems that can learn, reason, and solve problems like humans. Students will learn key AI techniques such as machine learning and neural networks. They will also explore the ethical implications of AI in society.
Code | Title | Credits |
---|---|---|
CIS*3090 | Parallel Programming | 0.50 |
CIS*3700 | Introduction to Intelligent Systems | 0.50 |
CIS*4020 | Data Science | 0.50 |
CIS*4720 | Image Processing and Vision | 0.50 |
CIS*4780 | Computational Intelligence | 0.50 |
MATH*1210 | Calculus II | 0.50 |
PHIL*3370 | Ethics of Artificial Intelligence | 0.50 |
STAT*2050 | Statistics II | 0.50 |
Credit Summary
Code | Title | Credits |
---|---|---|
Required Core Courses | 12.00 | |
Area of Emphasis | 4.00 | |
Free Electives | 4.00 | |
Total Credits | 20 |
Co-op Requirements (Honours)
This is a major within the degree: Bachelor of Computing.
The Co-op program in Computer Science is a five year program, including five work terms. Students must complete a Fall, Winter and Summer work term and must follow the academic work schedule as outlined below (also found on the Co-operative Education website: https://www.recruitguelph.ca/cecs/). Please refer to the Co-operative Education program policy with respect to adjusting this schedule.
Academic and Co-op Work Term Schedule
Year | Fall | Winter | Summer |
---|---|---|---|
1 | Academic Semester 1 | Academic Semester 2 COOP*1100 | Off |
2 | Academic Semester 3 | COOP*1000 Work Term I | Academic Semester 4 |
3 | Academic Semester 5 | Academic Semester 6 | COOP*2000 Work Term II |
4 | COOP*3000 Work Term III | COOP*4000 Work Term IV | COOP*5000 Work Term V |
5 | Academic Semester 7 | Academic Semester 8 |
Please refer to the Co-operative Education program policy with respect to work term performance grading, work term report grading and program completion requirements.
For additional program information students should consult with their Co-op Coordinator and Co-op Faculty Advisor, listed on the Co-operative Education web site.
Students are advised to plan their schedule of studies well in advance so that they can take all required prerequisites for later (especially 4000 level) courses. Students should note that some 4000 level courses are only given in alternate years. Failure to plan may result in the inability to take a particular senior CIS course. Not all sequences may be viable. Please check with the CIS Co-op faculty advisor for semester planning.
Credit Summary
(22.00 Total Credits)1
Code | Title | Credits |
---|---|---|
Required Core Courses | 12.00 | |
Area of Emphasis | 4.00 | |
Free Electives | 4.00 | |
Co-op Work Terms | 2.00 | |
Total Credits | 22 |
- 1
Note: A minimum of four Co-op work terms including a Summer, Fall, and Winter are necessary to complete the Co-op requirement. A fifth Co-op work term is optional and if completed the total number of credits will equal 22.50.
Recommended Program Sequence
The recommended schedule of studies for Co-op is as follows:
Code | Title | Credits |
---|---|---|
Semester 1 - Fall | ||
CIS*1300 | Programming | 0.50 |
CIS*1910 | Discrete Structures in Computing I | 0.50 |
MATH*1200 | Calculus I | 0.50 |
1.00 credits from Area of Emphasis or electives | 1.00 | |
Semester 2 - Winter | ||
CIS*2500 | Intermediate Programming | 0.50 |
CIS*2910 | Discrete Structures in Computing II | 0.50 |
COOP*1100 | Introduction to Co-operative Education | 0.00 |
MATH*1160 | Linear Algebra I | 0.50 |
1.00 credits from Area of Emphasis or electives | 1.00 | |
Summer Semester | ||
No academic semester or work term | ||
Semester 3 - Fall | ||
CIS*2030 | Structure and Application of Microcomputers | 0.50 |
CIS*2430 | Object Oriented Programming | 0.50 |
CIS*2520 | Data Structures | 0.50 |
1.00 credits from Area of Emphasis or electives | 1.00 | |
Winter Semester | ||
COOP*1000 | Co-op Work Term I | 0.50 |
Semester 4 - Summer | ||
CIS*2750 | Software Systems Development and Integration | 0.50 |
CIS*3110 | Operating Systems I | 0.50 |
CIS*3490 | The Analysis and Design of Computer Algorithms | 0.50 |
STAT*2040 | Statistics I 1 | 0.50 |
0.50 credits from Area of Emphasis or electives | 0.50 | |
Semester 5 - Fall | ||
CIS*3150 | Theory of Computation | 0.50 |
CIS*3750 | System Analysis and Design in Applications | 0.50 |
1.50 credits from Area of Emphasis or electives | 1.50 | |
Semester 6 - Winter | ||
CIS*3760 | Software Engineering | 0.50 |
0.50 CIS electives at the 3000 level or above | 0.50 | |
1.50 creditsfrom Area of Emphasis or electives | 1.50 | |
Summer Semester | ||
COOP*2000 | Co-op Work Term II | 0.50 |
Fall Semester | ||
COOP*3000 | Co-op Work Term III | 0.50 |
Winter Semester | ||
COOP*4000 | Co-op Work Term IV | 0.50 |
Summer Semester | ||
COOP*5000 | Co-op Work Term V | 0.50 |
Semester 7 - Fall | ||
0.50 credits from Area of Emphasis or electives | 0.50 | |
1.00 credits in CIS at the 3000 level or above | 1.00 | |
1.00 credits in CIS at the 4000 level | 1.00 | |
Semester 8 - Winter | ||
CIS*4650 | Compilers | 0.50 |
0.50 credits in CIS at the 3000 level or above | 0.50 | |
0.50 credits in CIS at the 4000 level | 0.50 | |
1.00 credits from Area of Emphasis or electives | 1.00 | |
Total Credits | 22.5 |
- 1
Students pursuing the Data Science Area of Emphasis should consider taking STAT*2040 in an earlier semester.
Areas of Emphasis
Students must complete one Area of Emphasis consisting of 4.00 credits in order to graduate. Students may complete only one Area of Emphasis.
Data Science
The Data Science Area of Emphasis focuses on the analysis and interpretation of large data sets to solve real-world problems. Students will learn data analysis, visualization, and machine learning techniques.
Code | Title | Credits |
---|---|---|
CIS*3130 | System Modeling and Simulation | 0.50 |
CIS*3530 | Database Systems and Concepts | 0.50 |
CIS*4020 | Data Science | 0.50 |
CIS*4780 | Computational Intelligence | 0.50 |
MATH*1210 | Calculus II | 0.50 |
STAT*2050 | Statistics II | 0.50 |
STAT*3210 | Experimental Design | 0.50 |
STAT*3240 | Applied Regression Analysis | 0.50 |
User Experience (UX)
The UX Design Area of Emphasis is a study of user-centered design. Students will learn how to conduct research to understand user needs related to technology design, and learn to design, build and test interactive prototypes to validate their ideas.
Code | Title | Credits |
---|---|---|
CIS*1050 | Web Design and Development | 0.50 |
CIS*2170 | User Interface Design | 0.50 |
CIS*4300 | Human Computer Interaction | 0.50 |
STAT*2050 | Statistics II | 0.50 |
Select 0.50 credits from: | ||
CIS*3530 | Database Systems and Concepts | 0.50 |
CIS*3700 | Introduction to Intelligent Systems | 0.50 |
CIS*4020 | Data Science | 0.50 |
CIS*4820 | Game Programming | 0.50 |
Select 1.50 credits from: | ||
ANTH*1150 | Introduction to Anthropology | 0.50 |
ANTH*2180 | Public Anthropology | 0.50 |
ANTH*2230 | Regional Ethnography | 0.50 |
ANTH*2660 | Contemporary Indigenous Peoples in Canada | 0.50 |
CTS*1000 | Culture and Technology: Keywords | 0.50 |
CTS*2010 | Digital Approaches to Culture | 0.50 |
CTS*3010 | Digital Arts & Critical Making | 0.50 |
CTS*3020 | Digital Storytelling | 0.50 |
HROB*2090 | Individuals and Groups in Organizations | 0.50 |
ONEH*1000 | Introduction to One Health | 0.50 |
PSYC*1000 | Introduction to Psychology | 0.50 |
PSYC*2390 | Sensation and Perception | 0.50 |
PSYC*2450 | Developmental Psychology | 0.50 |
PSYC*3800 | Psychology and Education | 0.50 |
SOC*2390 | Class and Stratification | 0.50 |
SOC*3410 | Individual and Society | 0.50 |
SOAN*2290 | Identities and Cultural Diversity | 0.50 |
SOAN*3040 | Globalization of Work and Organizations | 0.50 |
SOAN*2120 | Introductory Methods | 0.50 |
SOC*1100 | Sociology | 0.50 |
SOC*2280 | Society, Knowledge Systems and Environment | 0.50 |
SXGN*1000 | Introduction to Sexualities and Genders | 0.50 |
SXGN*1010 | Sexuality, Gender, Race, and Indigeneity | 0.50 |
Cybersecurity
The Cybersecurity Area of Emphasis equips students with the skills to protect computer systems and networks from cyber threats. Students will learn to identify security risks, implement cryptographic techniques, and design secure systems.
Code | Title | Credits |
---|---|---|
CIS*3210 | Computer Networks | 0.50 |
CIS*3530 | Database Systems and Concepts | 0.50 |
CIS*4010 | Cloud Computing | 0.50 |
CIS*4510 | Computer Security Foundations | 0.50 |
CIS*4520 | Introduction to Cryptography | 0.50 |
MATH*3130 | Abstract Algebra | 0.50 |
PHIL*2120 | Ethics | 0.50 |
Select 0.50 credits from: | ||
HIST*1150 | The Modern World | 0.50 |
HIST*1250 | Science and Technology in a Global Context | 0.50 |
HIST*2040 | War and Society | 0.50 |
HIST*2220 | Buying and Selling: Consumer Cultures | 0.50 |
Artificial Intelligence (AI)
The AI Area of Emphasis focuses on teaching students how to design and build systems that can learn, reason, and solve problems like humans. Students will learn key AI techniques such as machine learning and neural networks. They will also explore the ethical implications of AI in society.
Code | Title | Credits |
---|---|---|
CIS*3090 | Parallel Programming | 0.50 |
CIS*3700 | Introduction to Intelligent Systems | 0.50 |
CIS*4020 | Data Science | 0.50 |
CIS*4720 | Image Processing and Vision | 0.50 |
CIS*4780 | Computational Intelligence | 0.50 |
MATH*1210 | Calculus II | 0.50 |
PHIL*3370 | Ethics of Artificial Intelligence | 0.50 |
STAT*2050 | Statistics II | 0.50 |