In addition to the core courses that are taken by all B.C.S. students, each of the various streams has additional courses that MUST be taken to fulfill the stream requirements.  Below is a list of these courses for each of the individual streams.  For a complete list of program stream requirements, please see the 2017-18 Undergraduate Calendar:

Algorithms

  • COMP 3801 – Algorithms for Modern Data Sets
  • COMP 3803 – Introduction to Theory of Computation
  • COMP 4804 – Design and Analysis of Algorithms II
  • and one of:
    • COMP 3802 – Computational Geometry
    • COMP 4001 – Distributed Computing

Computer Game Development

  • COMP 1501 – Introduction to Computer Game Design
  • COMP 2501 – Computer Game Design and Development
  • COMP 3501 – Foundations of Game Programming and Computer Graphics
  • COMP 4501 – Advanced Facilities for Real-Time Games

Mobile Computing

  • COMP 1601 – Introduction to Mobile Application Development
  • COMP 2601 – Mobile Applications
  • and one of:
    • COMP 4601 – Intelligent Web-based Information Systems
    • COMP 4602 – Social Networking

Computer and Internet Security

  • COMP 3008 – Human-Computer Interaction
  • COMP 3203 – Principles of Computer Networks
  • COMP 4108 – Computer Systems Security
  • COMP 4109 – Applied Cryptography

Software Engineering

  • SYSC 3303 – Real-Time Concurrent Systems
  • COMP 4004 – Software Quality Assurance
  • SYSC 4106 – Software Product Management
  • and one of:
    • COMP 3008 – Human-Computer Interaction
    • COMP 4104 – Principles and Practice of Distributed Programming

Network Computing

  • COMP 3203 – Principles of Computer Networks
  • and three of the following if COMP 4905 [0.5] taken or two of the following if COMP 4906 [1.0] taken:
    • COMP 4000 – Distributed Operating Systems
    • COMP 4001 – Distributed Computing
    • COMP 4009 – Programming for Clusters and Multi-Core Processors
    • COMP 4104 – Principles and Practice of Distributed Programming
    • COMP 4108 – Computer Systems Security
    • COMP 4203 – Wireless Networks and Security
    • COMP 4804 – Design and Analysis of Algorithms II

Psychology

  • COMP 3008 – Human-Computer Interaction
  • PSYC 1001 – Introduction to Psychology I
  • PSYC 1002 – Introduction to Psychology II
  • PSYC 2001 – Introduction to Research Methods in Psychology
  • PSYC 2100 – Introduction to Social Psychology
  • PSYC 2700 – Introduction to Cognitive Psychology
  • PSYC 2801 – Organizational Psychology I
  • PSYC 4800 – Aspects of Product Design Methodology
  • and one of:
    • PSYC 3702 – Perception
    • PSYC 3801 – Organizational Psychology II

Management and Business Systems

  • BUSI 1003 and 0.5 credit in 2000-level BUSI or
    • BUSI 1001 – Principles of Financial Accounting &
    • BUSI 1002 – Management Accounting
  • BUSI 2121 – Introduction to Organizational Behaviour
  • BUSI 2301 – Introduction to Operations Management
  • BUSI 2503 – Introduction to Finance
  • BUSI 3402 – Systems Analysis and Design
  • ECON 1000 – Introduction to Economics

Biomedical Computing

  • COMP 3308 – Bioinformatics
  • COMP 4804 – Design and Analysis of Algorithms II
  • COMP 4308 – Computational Systems Biology
  • BIOL 1103 – Foundations of Biology I
  • BIOL 1104 – Foundations of Biology II
  • BIOL 2104 – Introductory Genetics
  • BIOL 2600 – Introduction to Ecology
  • and one of:
    • BIOL 3104 – Molecular Genetics
    • BIOL 3609 – Evolutionary Concepts
  • CHEM 1001 – General Chemistry I
  • CHEM 1002 – General Chemistry II
  • CHEM 2203 – Organic Chemistry I
  • CHEM 2204 – Organic Chemistry II
  • BIOC 2200 – Cellular Biochemistry
  • BIOC 3101 – General Biochemistry I