Link to the University of Waterloo home page
2015-2016

The Undergraduate Calendar

 

 

Computer Science

Options

Software Engineering Option

The Software Engineering Option is available only for the Bachelor of Computer Science plan. This option is offered jointly by the David R. Cheriton School of Computer Science and the Department of Electrical and Computer Engineering. The rationale for the plan is described in Faculty Options, in the Engineering section. Given that the option involves two faculties, it has slightly different realizations in those faculties. Students who complete this option within the Faculty of Mathematics do not qualify for the professional engineering designation. The course requirements are the same as for the Bachelor of Computer Science with the following constraints on upper-year CS courses:

All of

CS 348 Introduction to Database Management

Foundations

All of

CS 445/ECE 451 Software Requirements Specification and Analysis
CS 446/ECE 452 Software Design and Architectures
CS 447/ECE 453 Software Testing, Quality Assurance and Maintenance

Applications

Two of

CS 343 Concurrent and Parallel Programming
CS 349 User Interfaces
CS 442 Principles of Programming Languages
CS 444 Compiler Construction
CS 448 Database Systems Implementation
CS 449 Human-Computer Interaction
CS 450 Computer Architecture or ECE 429 Computer Architecture
CS 452 Real-time Programming
CS 454 Distributed Systems or ECE 454 Distributed Computing
CS 456 Computer Networks or ECE 428 Computer Networks and Security
CS 457 System Performance Evaluation
CS 458 Computer Security and Privacy
CS 473 Medical Image Processing
CS 484 Computational Vision
CS 485 Machine Learning: Statistical and Computational Foundations
CS 486 Introduction to Artificial Intelligence or ECE 457A Cooperative and Adaptive Algorithms or ECE 457B Fundamentals of Computational Intelligence
CS 488 Introduction to Computer Graphics

The following constraints apply to the non-math and free-choice courses:

Societal Issues

One of

ARBUS 202/PHIL 215 Professional and Business Ethics
CS 492 The Social Implications of Computing
GENE 411 Engineering Law and Ethics
GENE 412/PHIL 315 Ethics and The Engineering Profession
ME 401 Law for the Professional Engineer
STV 100 Society, Technology and Values: Introduction
STV 202 Design and Society
STV 302 Information Technology and Society

Note:
Choosing CS 492 (a math course) from this list does not reduce the overall requirement to take 5.0 non-math units.

Business Issues

One of

BUS 111W Understanding the Business Environment (see Laurier calendar)
BUS 121W Functional Areas of the Organization (see Laurier calendar)
COMM 400 Entrepreneurship, Technology and the Emerging Information Economy
HRM 200 Basic Human Resources Management
MSCI 211 Organizational Behaviour
MSCI 311 Organizational Design and Technology
MSCI 454 Technical Entrepreneurship
Note: Courses labelled BUS are offered by the School of Business and Economics at Wilfrid Laurier University.


Office of the Registrar
University of Waterloo
2nd Floor, Needles Hall
200 University Avenue West
Waterloo, Ontario, Canada N2L 3G1
519 888 4567