About the Program
The M.C.S. program leads to a graduate degree in Computer science. The program combines breadth knowledge in computer science through course work and depth knowledge in the area of specialization through research (M.C.S Thesis option) or through course work and a project (MCS Non-Thesis option).
The M.C.S. areas of specialization are:
- Software Engineering
- Theory of Computing
- Computer Applications
- Computer Systems
Within these areas of specialization the program emphasizes problems of current practical significance and advances in computer science knowledge. The program fosters collaborative and interdisciplinary work with the scientific and industrial (private and public) communities.
Academic Regulations
- See the General Regulations section of this Calendar.
Admission Requirements
- Applicants should have an Honours bachelor's degree in computer science or the equivalent, with at least high honours standing. By equivalent is meant an Honours degree in a program that includes at least twelve computer science half-credits, two of which must be at the 4000-level, and eight half- credits in mathematics, one of which must be at the 3000- or 4000-level. These courses must include the topics indicated below:
- Computer Science
Data structures/file management, operating systems, computer architecture, algorithm design and analysis, assembly language and two high-level languages - Mathematics
Calculus, linear algebra, algebraic structures or discrete mathematics, probability and statistics, numerical analysis.
- Computer Science
- Applicants who have a general (3-year) bachelor's degree, or who otherwise lack the required undergraduate preparation, may be admitted to a qualifying-year program. Refer to the General Regulations section of this Calendar for regulations governing the qualifying year.
Program Requirements
- Normally, students in the program will be expected to complete a thesis; however, students who have substantial relevant work experience may be permitted to take the non-thesis option, which must include a graduate research project course.
- Each candidate submitting a thesis will be required to undertake an oral defence of the thesis.
Thesis Option Requirements:
- 2.5 credits in course work (See Notes, below)
- Fulfilment of the graduate seminar requirement
- 2.5 credits in Thesis.
Non-Thesis Option Requirements
- 4.0 credits in course work (see Notes, below)
- Fulfilment of the graduate seminar requirement.
- 1.0 credit in graduate project (may be completed in one or two terms),
Notes:
- Course selections must be approved by the student's academic adviser, and must include at least:
- 0.5 credit in software engineering
- 0.5 credit in the theory of computing
- 0.5 credit in either computer applications or computer systems
- The graduate seminar requirement includes a seminar presentation and participation in at least ten sessions in the joint graduate student seminar series.
- Both course and thesis work may be completed either by full-time or part-time study.
- A candidate may be permitted to carry out thesis work off campus provided suitable arrangements are made for supervision and experimental work, and prior approval is given by the Institute.
Co-operative Option
- A co-operative option is also available to full-time students in the Masters of Computer Science. Co-operative education is based on the principle that academic studies combined with work experience are desirable for effective professional preparation.
- In addition to all other requirements for the degree, students admitted to the co-operative option must satisfactorily complete two work terms placements with a suitable employer in order to graduate with a co-op designation on their transcripts and diplomas. It is desirable that the work placements be related to the student's research. Placements are subject to the approval of the Supervisor of Graduate Studies and of the student's research supervisor. These work terms are four months in duration and students will conduct job searches through the university's co-op office. During a work term, students will register in one of the co-op work term courses: COMP 5906 (CSI 6901) or COMP 5907 (CSI 6902). While on a work term, students in this option are limited to taking one additional 0.5-credit course, or registering in their thesis.
- Students in the co-op option normally apply for admission to the co-operative option during their first academic term. This option requires an initial study period of two academic terms, typically followed by two work terms and a final academic period to complete the remaining requirements of the degree. The student must submit a work term report or make a formal oral presentation upon the completion of each work placement, and receive a grade of Satisfactory in order to meet the requirements for the successful completion of that work term's requirement.
Guidelines for Completion of Master's Degree
- The following completion times are estimates only, based on full-time study, and are intended to provide guidance only.
- Students are urged to check with the supervisor of graduate studies to determine the exact requirements of the degree program and other related information. Part-time students should calculate the completion times requirement by doubling the time estimates given below.
- Students should complete the course work within the first two terms.
- Selection of courses should be done in consultation with the student's faculty advisor. Approval from the Graduate Supervisor of the Institute is only required for courses not listed as valid OCICS courses. Subject to the approval of the Graduate Supervisor, M.C.S. students may take courses in other relevant disciplines. At least half of the course credits of an M.C.S. student must be valid OCICS courses. At most, two Fourth Year undergraduate courses may be taken with the permission of the Graduate Supervisor. A thesis supervisor and thesis topic must be selected by the end of the second term. The supervisor of graduate studies should be formally notified of this selection. The expected completion time for the M.C.S. degree is four to six terms of full-time study depending on the type of thesis and the area of research.
- Students wishing to pursue the co-op option normally apply for admission to the co-operative option during their first academic term. This option requires an initial study period of two academic terms, typically followed by two work terms and a final academic period to complete the remaining requirements of the degree. The student must submit a work term report or make a formal oral presentation upon the completion of each work placement, and receive a grade of Satisfactory in order to meet the requirements for the successful completion of that work term's requirement.
Graduate Course Selection
Please visit the courses section for full course descriptions.
Subject to the approval of the Graduate Supervisor, M.C.S. and Ph.D. students may take courses in other relevant disciplines. The courses in the following list are offered by the two departments forming OCICS.
Guide to Course Codes
COMP - Carleton University School of Computer Science
CSI - University of Ottawa School of Information Technology and Engineering
- Software Engineering
- COMP 5001 (CSI 5113)
- COMP 5104 (CSI 5314)
- COMP 5106 (CSI 5123)
- COMP 5400 (CSI 5310)
- COMP 6104 (CSI 7314)
- COMP 6603 (CSI 7161, CSI 7561)
- CSI 5107 (COMP 5609) Program Construction and Fault Tolerance
- CSI 5109 (COMP 5701) Specification Methods for Distributed Systems
- CSI 5111 (COMP 5501) Software Quality Engineering
- CSI 5112 (COMP 5207) Software Engineering
- CSI 5115 (COMP 5503) Database Analysis and Design
- CSI 5118 (COMP 5302) Automated Verification and Validation of Software
- CSI 5122 (COMP 5301) Software Usability
- CSI 5134 (COMP 5004) Fault Tolerance
CSI 5143 (COMP 5403) Real-time Systems Development - CSI 5184 (COMP 5804) Logic Programming
- CSI 5507(COMP 5609) Les programmes : construction et tolérance aux fautes
- CSI 5509 (COMP 5701) Méthodes pour la spécification de systèmes répartis
- CSI 5584 (COMP 5804 Programmation logique
Theory of Computing- COMP 5003 (CSI 5308)
- COMP 5005 (CSI 5390)
- COMP 5008 (CSI 5164)
- COMP 5107 (CSI 5185)
- COMP 5203 (CSI 5173)
- COMP 5306 (CSI 5100)
- COMP 5307 (CSI 5101)
- COMP 5308 (CSI 5102)
- COMP 5404 (CSI 5144)
- COMP 5408 (CSI 5121)
- COMP 5409 (CSI 5127)
- COMP 5703 (CSI 5163)
- COMP/MATH 5807 (CSI 5104)
- COMP 6601 (CSI 7160)
- COMP 6602 (CSI 7170, CSI 7970)
- CSI 5107 (COMP 5609) Program Construction and Fault Tolerance
- CSI 5108 (COMP 5700) Software Specification and Verification
- CSI 5110 (COMP 5707) Principles of Formal Software Development
- CSI 5126 (COMP5108) Algorithms in Bioinformatics
- CSI 5148 (COMP 5103) Wireless Ad Hoc Networking
- CSI 5149 (COMP 5007) Graphical Models
- CSI 5161 (COMP 5606) Topics in System Simulation and Optimization
- CSI 5162 (COMP 5702) Order: Its Algorithms and Graphical Data Structures
- CSI 5165 (COMP 5709) Combinatorial Algorithms
- CSI 5166 (COMP 5805) Applications of Combinatorial Optimization
- CSI 5169 (COMP 5304) Wireless Networks and Mobile Computing
- CSI 5174 (COMP 5604) Validation Methods for Distributed Systems
- CSI 5367 (COMP 5300) Structure in Complexity Theory
- CSI 5507 (COMP 5609) Les programmes : construction et tolérance aux fautes
- CSI 5508 (COMP 5700) Spécification et vérification de logiciels
- CSI 5510 (COMP 5707) Principes de développement formel de logiciels
CSI 5526 (COMP 5180) Algorithmes en bioinformatique
CSI 5562 (COMP 5702) Ordre: algorithmes et structures graphiques de donées - CSI 5565 (COMP 5709 Algorithmes combinatoires
Computer Applications- COMP 5002 (CSI 5128)
- COMP 5100 (CSI 5180, CSI 5580)
- COMP 5204 (CSI 5124)
- COMP 5206 (CSI 5183)
- COMP 5305 (CSI 5129)
- COMP 5306 (CSI 5100)
- COMP 5307 (CSI 5101)
- COMP 5308 (CSI 5102)
- COMP 5401 (CSI 5389 and CSI 5789)
- COMP 5406 (CSI 5105)
- COMP 5407 (CSI 5116)
- COMP 6604 (CSI 7162)
- CSI 5114 (COMP 5504) Automated Office Systems
- CSI 5126 (COMP 5108) Algorithms in Bioinformatics
- CSI 5145 (COMP 5109) Statistical Approaches to Natural Language Processing
- CSI 5146 (COMP 5202) Computer Graphics
- CSI 5147 (COMP 5201) Computer Animation
- CSI 5151 (COMP 5205) Virtual Environments
- CSI 5162 (COMP 5702) Order: Its Algorithms and Graphical Data Structures
- CSI 5168 (COMP 5309) Digital Watermarking
- CSI 5304 (COMP 5602) Knowledge Engineering
- CSI 5380 (COMP 5405) Systems and Architectures for Electronic Commerce
- CSI 5386 (COMP 5505) Natural Language Processing
- CSI 5387 (COMP 5706) Data Mining and Concept Learning
- CSI 5388 (COMP 5801) Topics in Machine Learning
- CSI 5514 (COMP 5504) Bureautique
CSI 5526 (COMP 5180) Algorithmes en bioinformatique
CSI 5562 (COMP 5702) Ordre: algorithmes et structures graphiques de données - CSI 5580 (COMP 5100) Sujet en intelligence artificielle
- CSI 5780 (COMP 5405) Systèmes et architectures des logiciels pour le commerce électronique
- CSI 5787 (COMP 5706) Fouille des données et apprentissage des concepts
Computer Systems- COMP 5003 (CSI 5308)
- COMP 5009 (CSI 5141)
- COMP 5101 (CSI 5311)
- COMP 5102 (CSI 5312)
- COMP 5107 (CSI 5185)
- COMP 5203 (CSI 5173)
- COMP 5305 (CSI 5129)
- COMP 5401 (CSI 5389 and CSI 5789)
- COMP 5402 (CSI 5142)
- COMP 5406 (CSI 5105)
- COMP 5407 (CSI 5116)
- COMP 5704 (CSI 5131)
- COMP 6100 (CSI 7131)
- COMP 6602 (CSI 7170, CSI 6970)
- COMP 6605 (CSI 7163)
- CSI 5109 (COMP 5701) Specification Methods for Distributed Systems
- CSI 5114 (COMP 5504) Automated Office Systems
CSI 5132 (COMP 5105) Parallel Processing Systems - CSI 5133 (COMP 5608) Simulation and Testing of Logic Circuits
- CSI 5134 (COMP 5004) Fault Tolerance
CSI 5143 (COMP 5403) Real-time Systems Development - CSI 5147 (COMP 5201) Computer Animation
- CSI 5148 (COMP 5103) Wireless Ad Hoc Networking
- CSI 5161 (COMP 5606) Topics in System Simulation and Optimization
- CSI 5168 (COMP 5309) Digital Watermarking
- CSI 5169 (COMP 5304) Wireless Networks and Mobile Computing
- CSI 5170 (COMP 5800) Distributed Data Processing
- CSI 5171 (COMP 5303) Network Architectures, Services, Protocols and Standards
- CSI 5174 (COMP 5604) Validation Methods for Distributed Systems
- CSI 5380 (COMP 5405) Systems and Architectures for Electronic Commerce
- CSI 5509 (COMP 5701) Méthodes pour la spécification de systèmes répartis
- CSI 5514 (COMP 5504) Bureautique
- CSI 5780 (COMP 5405) Systèmes et architectures des logiciels pour le commerce électronique
Others- COMP 5900 (CSI 5140)
- COMP 5901 (CSI 5901)
- COMP 5902 (CSI 5900)
- COMP 5903 (CSI 6900)
- COMP 5904 (CSI 5902)
- COMP 5905 (CSI 7999)
- COMP 5906 (CSI 6001)
- COMP 5907 (CSI 6002)
- COMP 6901 (CSI 7901)
- COMP 6902 (CSI 7900)
- COMP 6907 (CSI 9998)
- COMP 6908 (CSI 9997)
- COMP 6909 (CSI 9999)