Summary

Program Description

Students who wish to pursue studies in computer science leading to the degree of Master of Computer Science (MCS) or Doctor of Philosophy in Computer Science (PhD) can do so in joint programs offered by the School of Electrical Engineering and Computer Science (EECS) at the University of Ottawa and the School of Computer Science at Carleton University under the auspices of the Ottawa-Carleton Institute for Computer Science (OCICS).

The Institute is responsible for supervising these programs and for providing a framework for interaction between the universities in graduate computer science education. In addition to the faculty members from the two computer science programs, the Institute also has members with computer science expertise from other departments.

Other Programs Offered Within the Same Discipline or in a Related Area

  • Master of Computer Science (MCS)
  • Master of Computer Science Specialization in Bioinformatics (MCS)
  • Graduate Diploma Mobile Device Applications
  • Graduate Diploma Modelling and Animation for Computer Games Technology 

Fees and Funding

  • Program fees:

The estimated amount for university fees associated with this program are available under the section Finance your studies.

International students enrolled in a French-language program of study may be eligible for a differential tuition fee exemption.

Notes

  • Programs are governed by the general regulations in effect for graduate studies and the regulations in effect at Carleton University.
  • In accordance with the University of Ottawa regulation, students have the right to complete their assignments, examinations, research papers, and theses in French or in English. In addition, research activities can be conducted in either English or French or both depending on the language used by the professor and the members of the research group.
  • Students may include courses from both universities in their programs, and may select a supervisor from either university, but they should apply to the university with which their supervisor is associated. Their study program is administered by the university at which they are enrolled and is subject to its regulations.

Program Contact Information

Graduate Studies Office, Faculty of Engineering

161 Louis-Pasteur, Colonel By Hall, Room B111

Ottawa, Ontario, Canada

K1N 6N5
 

Tel.: 613-562-5347

Email: engineering.grad@uottawa.ca
 

Twitter | Faculty of Engineering

Facebook | Faculty of Engineering

Application Deadlines

Deadlines Fall term Winter term Summer term
Canadian students May 1 October 1 -
International students March 1 July 1 -
  • Applications received after the deadline will only be considered based on the availability of space and funding.
  • The admission period may close before the anticipated deadline if an excessive number of applications are received.
  • Our departments often start examining applications when they receive them. In most cases, letters of offer to eligible candidates are sent within a few weeks of having received complete application packages.

To be eligible, candidates must:

  • Have a master's degree in Computer Science (with thesis or equivalent in terms of scholarly publications) with a minimum average of B+ (75%).

Note: International candidates must check the admission equivalencies for the diploma they received in their country of origin.

  • Pay the $100 ($CDN non-refundable) application fee.
  • Identify at least one professor who is willing to supervise your research and thesis. We recommend that you contact potential thesis supervisors as soon as possible.

Language Requirements

Applicants must be able to understand and fluently speak the language of instruction (French or English) in the program to which they are applying. Proof of linguistic proficiency may be required.

Applicants whose first language is neither French nor English must provide proof of proficiency in the language of instruction.

Language tests recognized by the University of Ottawa:

  • TOEFL: 570 (Paper-based) or 88-89 (Internet-based); or
  • IELTS: Overall 6.5 – Individual 6.0 (Paper-based or internet-based); or
  • An equivalent language test.

Note: Candidates are responsible for any fees associated with the language tests.

Notes

  • The admission requirements listed above are minimum requirements and do not guarantee admission to the program.
  • Admissions are governed by the general regulations in effect for graduate studies.

Documents Required for Admission

In addition to the documents required for graduate and postdoctoral studies, candidates must submit the following documents:

  • A resume
  • A letter of intent

Letter outlining your professional goals and proposed research area.

  • Two confidential letters of recommendation from professors who have known the applicant and are familiar with their work.

You are strongly encouraged to contact your referee(s) prior to submitting your application in order to confirm their email address and their availability to complete your letter of recommendation.

  • Transcripts from all universities attended:
  • You must submit official transcripts from all the universities you have attended.

This applies to all courses and programs at any university you attended, including regular programs (completed or not), exchanges, letters of permission, online or correspondence courses, courses taken as a special student or visiting student, etc.

  • If the transcript and degree certificate are not in English or French, a certified translation (signed and stamped/sealed) must be submitted.
  • The​ preference form

Note: Documents that are not required for admission will not be consulted, conserved or returned to the student. These documents will be destroyed according to our administrative procedures.

Fast-Track from the Master’s to the PhD

Students enrolled in the master’s program in computer science at the University of Ottawa may be eligible to fast-track directly into the doctoral program without writing a master’s thesis, provided the following conditions are met:

  • Completion of 5 graduate courses (15 units) with a minimum average of A- (80%).
  • Satisfactory progress in the research program.
  • Written recommendation from the supervisor and the thesis advisory committee.
  • Approval by the graduate studies committee and the vice-dean (graduate studies in the faculty).

Notes:

  • The student must request permission to fast-track during the fourth term of enrollment or earlier and must be enrolled in the PhD program in the fifth or, at the latest, in the sixth term. Following transfer, all of the requirements of the doctoral program must be met. The total number of course units required is 24 (15 at master’s level plus 9 at PhD level).
  • Students in the Accelerated Stream of the MCS are not eligible for fast-track to the PhD.

Information about how to apply to this program is available under the Apply Now section.

Students should complete and submit their online application with supporting documentation (if applicable) by the deadline indicated above.

Doctorate

The admissions committee and the student's advisory committee may impose additional requirements according to the student's background and research topic.

Students must meet the following requirements:

Compulsory Courses:
9 course units in computer science (CSI) at the graduate level with 3 course units from 3 of the following areas:9 Units
Software Engineering (Category E)
Theory of Computing (Category T)
Computer Applications (Category A)
Computer Systems (Category S)
Seminars: 1
CSI 9901Seminar0 Unit
CSI 9902Seminar0 Unit
Comprehensive Examination:
CSI 9998Ph.D. Comprehensive 20 Unit
Thesis Proposal:
CSI 9997Doctoral Thesis Proposal 30 Unit
Thesis:
CSI 9999Ph.D. Thesis 40 Unit

Note(s)

1

Students are required to enroll and present two seminars prior to submission of the thesis.

2

The comprehensive examination involves breadth and depth components.

3

The written thesis proposal must be defended at an oral examination.

4

The research thesis must be defended at an oral examination Students are responsible for ensuring they have met all of the thesis requirements.

Minimum Requirements

The passing grade in all courses is B.

Students who fail two courses (equivalent to 6 units), the thesis proposal, or the comprehensive exam or whose research progress is deemed unsatisfactory are required to withdraw.

Research Fields & Facilities

Located in the heart of Canada’s capital, a few steps away from Parliament Hill, the University of Ottawa is among Canada’s top 10 research universities.

uOttawa focuses research strengths and efforts in four Strategic Areas of Development in Research (SADRs):

  • Canada and the World
  • Health
  • e-Society
  • Molecular and Environmental Sciences

With cutting-edge research, our graduate students, researchers and educators strongly influence national and international priorities.

Research at the Faculty of Engineering

Areas of research:

  • Chemical and Biological Engineering
  • Civil Engineering
  • Electrical Engineering and Computer Science
  • Mechanical Engineering

For more information, refer to the list of faculty members and their research fields on Uniweb

IMPORTANT: Candidates and students looking for professors to supervise their thesis or research project can also consult the website of the faculty or department of their program of choice. Uniweb does not list all professors authorized to supervise research projects at the University of Ottawa.

CSI 5100 Data Integration (3 units)

Materialized and virtual approaches to integration of heterogeneous and independent data sources. Emphasis on data models, architectures, logic-based techniques for query processing, metadata and consistency management, the role of XML and ontologies in data integration; connections to schema mapping, data exchange, and P2P systems. This course is equivalent to COMP 5306 at Carleton University.

Course Component: Lecture

Prerequisite: CSI 2132.

CSI 5101 Knowledge Representation (3 units)

KR is concerned with representing knowledge and using it in computers. Emphasis on logic-based languages for KR, and automated reasoning techniques and systems; important applications of this traditional area of AI to ontologies and semantic web. This course is equivalent to COMP 5307 at Carleton University.

Course Component: Lecture

CSI 5102 Topics in Medical Computing (3 units)

Introductory course on data structures, algorithms, techniques, and software development related to medical computing (in particular spatial modeling). Topics may include: computational geometry algorithms for cancer treatment, medical imaging, spatial data compression algorithms, dynamic programming for DNA analysis. Courses CSI 5102, CSI 5140 (COMP 5900) cannot be combined for units. This course is equivalent to COMP 5308 at Carleton University.

Course Component: Lecture

Precludes additional credit for COMP 5900 section 'Y' offered 2001-2002 to 2005-2006 inclusive.

CSI 5103 Topic in Information and Systems Science (3 units)

Course Component: Lecture

CSI 5105 Network Security and Cryptography (3 units)

Advanced methodologies selected from symmetric and public key cryptography, network security protocols and infrastructure, identification, secret-sharing, anonymity, intrusion detection, firewalls, defending network attacks and performance in communication networks. This course is equivalent to COMP 5406 at Carleton University.

Course Component: Lecture

Prerequisites: familiarity with basic concepts in networks, network security, and applied cryptography.

CSI 5106 Cryptography (3 units)

The notion of secure communication. Building secure cryptosystems based on the assumption of computational hardness. Cryptographic one-way functions, trap-door functions, pseudorandom generators, and public/private-key encryption schemes. Computational indistinguishability and unpredictability. Digital signature and message authentication. Zero-knowledge/interactive proof systems. Application to e-Commerce and e-trade. Additional work required of students enrolled in CSI 5106.

Course Component: Lecture

Prerequisites: MAT 2371, CSI 3105 or (in case of graduate students) permission of the instructor.

CSI 5110 Principles of Formal Software Development (3 units)

Methodologies in formal software specification, development, and verification. The use of theorem proving, automated deduction, and other related formal methods for software correctness. Applications in program verification, mobile code safety, and protocol verification. This course is equivalent to COMP 5707 at Carleton University.

Course Component: Lecture

CSI 5111 Software Quality Engineering (3 units)

Software quality issues. Quality components and metrics. Software process quality. Software reliability engineering. Software design for testability. Requirements capture and validation. Systematic design validation; grey-box approach, test design, implementation and management, case studies in validation and verification of communications software. Object-oriented design and test. Theoretical aspects. This course is equivalent to COMP 5501 at Carleton University.

Course Component: Lecture

CSI 5112 Software Engineering (3 units)

Topics of current interest in Software Engineering, such as software development systems, structured systems analysis and design, management of software, software tools, validation and verification, programming environments. This course is equivalent to COMP 5207 at Carleton University.

Course Component: Lecture

CSI 5113 Foundations Programming Languages (3 units)

Advanced study of programming paradigms from a practical perspective. Paradigms may include functional, imperative, concurrent, distributed, generative, aspect- and object-oriented, and logic programming. Emphasis on underlying principles. Topics may include: types, modules, inheritance, semantics, continuations, abstraction and reflection. This course is equivalent to COMP 5001 at Carleton University.

Course Component: Lecture

CSI 5115 Database Analysis and Design (3 units)

The dimensional and multidimensional data models for data warehousing. Data dependencies and decompostition. Structure and use of data definition and manipulation languages. Database economics, engineering, deployment and evolution. Issues in integrity, security, the Internet and distributed databases. Relationships to decision support systems. This course is equivalent to COMP 5503 at Carleton University.

Course Component: Lecture

Prerequisite: CSI 3317 or equivalent

CSI 5116 Authentication and Software Security (3 units)

Specialized topics in security including advanced authentication techniques, user interface aspects, electronic and digital signatures, security infrastructures and protocols, software vulnerabilities affecting security, non-secure software and hosts, protecting software and digital content. This course is equivalent to COMP 5407 at Carleton University.

Course Component: Lecture

Prerequisites: Basic course in Statistics

CSI 5117 Mini-Microcomputer Operating Systems Design (3 units)

Course Component: Lecture

CSI 5118 Automated Verification and Validation of Software (3 units)

Topics in formal test derivation methods, test management, high-level, CASE-based verification and validation, data-flow & control-flow measures and metrics for assessing quality of designs and code, regression analysis & testing. This course is equivalent to COMP 5302 at Carleton University.

Course Component: Lecture

Prerequisite: A four-year undergraduate degree in computer science, computer engineering, or software engineering.

CSI 5121 Advanced Data Structures (3 units)

Simple methods of data structure design and analysis that lead to efficient data structures for several problems. Topics include randomized binary search trees, persistence, fractional cascading, self-adjusting data structures, van Emde Boas trees, tries, randomized heaps, and lowest common ancestor queries. This course is equivalent to COMP 5408 at Carleton University.

Course Component: Lecture

CSI 5122 Software Usability (3 units)

Design principles and metrics for usability. Qualitative and quantitative methods for the evaluation of software system usability: Heuristic evaluation, usability testing, usability inspections and walkthroughs, cognitive walkthroughs, formal usability experimentation. Ethical concerns when performing studies with test users. Economics of usability. Integration of usability engineering into the software engineering lifecycle. This course is equivalent to COMP 5301 at Carleton University.

Course Component: Lecture

CSI 5124 Computational Aspects of Geographic Information Systems (3 units)

Computational perspective of geographic information systems (GIS). Data representations and their operations on raster and vector devices: e.g., quadtrees, grid files, digital elevation models, triangular irregular network models. Analysis and design of efficient algorithms for solving GIS problems: visibility queries, point location, facility location. This course is equivalent to COMP 5204 at Carleton University.

Course Component: Lecture

CSI 5126 Algorithms in Bioinformatics (3 units)

Fundamental mathematical and algorithmic concepts underlying computational molecular biology; physical and genetic mapping, sequence analysis (including alignment and probabilistic models), genomic rearrangement, phylogenetic inference, computational proteomics and systemics modelling of the whole cell. This course is equivalent to COMP 5108 at Carleton University.

Course Component: Lecture

CSI 5127 Applied Computational Geometry (3 units)

Computer-based representation and manipulation of geometric objects. Design and analysis of efficient algorithms for solving geometric problems in applied fields such as Computer-Aided Design and Manufacturing, Cartography, Materials Science, and Geometric Network Design. This course is equivalent to COMP 5409 at Carleton University.

Course Component: Lecture

CSI 5128 Swarm Intelligence (3 units)

Collective computation, collective action, and principles of self-organization in social agent systems. Algorithms for combinatorial optimization problems, division of labour, task allocation, task switching, and task sequencing with applications in security, routing, wireless and ad hoc networks and distributed manufacturing. This course is equivalent to COMP 5002 at Carleton University.

Course Component: Lecture

CSI 5129 Advanced Database Systems (3 units)

In-depth study on developments in database systems shaping the future of information systems, including complex object, object-oriented, object-relational, and semi-structured databases. Data structures, query languages, implementation and applications. This course is equivalent to COMP 5305 at Carleton University.

Course Component: Lecture

CSI 5130 Applications Design for Mobile Devices (3 units)

Programming environments for mobile devices applications: native applications and web applications. User interface, multitouch screens, accelerometer, geo-localization, multi-networks interfaces, camera, digital signal processing. Enterprise applications development. Device-specific and carrier-specific challenges. Methods for dealing with limited memory, speed and storage. Power management. Security. Deployment and distribution of applications.

Course Component: Lecture

CSI 5131 Parallel Algorithms and Applications in Bioinformatics (3 units)

Multiprocessor architectures from an application programmer's perspective: programming models, processor clusters, multi-core processors, GPUs, algorithmic paradigms, efficient parallel problem solving, scalability and portability. Projects on high performance computing in Data Science, including data analytics, bioinformatics, simulations. Programming experience on parallel processing equipment. This course is equivalent to COMP 5704 at Carleton University.

Course Component: Lecture

CSI 5134 Fault Tolerance (3 units)

Hardware and software techniques for fault tolerance. Topics include modeling and evaluation techniques, error detecting and correcting codes, module and system level fault detection mechanisms, design techniques for fault-tolerant and fail-safe systems, software fault tolerance through recovery blocks, N-version programming, algorithm-based fault tolerance, checkpointing and recovery techniques, and survey of practical fault-tolerant systems. This course is equivalent to COMP 5004 at Carleton University.

Course Component: Lecture

CSI 5135 Information Visualization and Visual Analytics (3 units)

Principles, techniques, technology and applications of information visualization for visual data analysis. Topics include human visual perception, cognitive processes, static and dynamic models of image semantics, interaction paradigms, big data visual analysis case studies. This course is equivalent to COMP 5209 at Carleton University.

Course Component: Lecture

CSI 5136 Computer Security and Usability (3 units)

Design and evaluation of security and privacy software with particular attention to human factors and how interaction design impacts security. Topics include current approaches to usable security, methodologies for empirical analysis, and design principles for usable security and privacy. This course is equivalent to COMP 5110 at Carleton University.

Course Component: Lecture

CSI 5140 Selected Topics in Computer Science (3 units)

Selected topics, not covered by other graduate courses. Details will be available from the School at the time of registration. This course is equivalent to COMP 5900 at Carleton University.

Course Component: Lecture

CSI 5142 Protocols for Mobile and Wireless Networks (3 units)

Link and network layer protocols of wireless networks; applications of wireless networks may be discussed. Topics may include: protocol implementation, mobile IP, resource discovery, wireless LANs/PANs, and Spreadspectrum. Courses CSI 6136 (SYSC 5306), CSI 5142 (COMP 5402) cannot be combined for units. This course is equivalent to COMP 5402 at Carleton University.

Course Component: Lecture

Precludes additional credit for SYSC 5306.

CSI 5146 Computer Graphics (3 units)

Principles and advanced techniques in rendering and modelling. Research field overview. Splines, subdivision surfaces and hierarchical surface representations. Physics of light transport, rendering equation and Bidirectional Reflectance Distribution Function. Classical ray tracing, radiosity, global illumination and modern hybrid methods. Plenoptic function and image-based rendering. This course is equivalent to COMP 5402 at Carleton University.

Course Component: Lecture

CSI 5147 Computer Animation (3 units)

Theories and techniques in 3D modeling and animation. Animation principles, categories, and history. Forward and inverse kinematics. Motion capture, editing and retargeting. Flexible bodies. Particle animation. Behavioral animation. Human modeling. Facial animation. Cloth animation and other sub-topics. This course is equivalent to COMP 5201 at Carleton University.

Course Component: Lecture

CSI 5148 Wireless Ad Hoc Networking (3 units)

Self-organized, mobile, and hybrid ad hoc networks. Physical, medium access, networks, transport and application layers, and cross-layering issues. Power management. Security in ad hoc networks. Topology control and maintenance. Data communication protocols, routing and broadcasting. Location service for efficient routing. This course is equivalent to COMP 5103 at Carleton University.

Course Component: Lecture

CSI 5149 Graphical Models and Applications (3 units)

Bayesian networks, factor graphs, Markov random fields, maximum a posteriori probability (MAP) and maximum likelihood (ML) principles, elimination algorithm, sum-product algorithm, decomposable and non-decomposable models, junction tree algorithm, completely observed models, iterative proportional fitting algorithm, expectation- maximization (EM) algorithm, iterative conditional modes algorithm, variational methods, applications. Courses CSI 5149 (COMP 5007), ELG 5131 (EAGJ 5131) and ELG 7177 (EACJ 5605) cannot be combined for units. This course is equivalent to COMP 5007 at Carleton University.

Course Component: Lecture

CSI 5151 Virtual Environments (3 units)

Basic concepts. Virtual worlds. Hardware and software support. World modeling. Geometric modeling. Light modeling. Kinematic and dynamic models. Other physical modeling modalities. Multi-sensor data fusion. Anthropomorphic avatars. Animation: modeling languages, scripts, real-time computer architectures. Virtual environment interfaces. Case studies. Courses ELG 5124 (EACJ 5204), CSI 5151 (COMP 5205) cannot be combined for units. This course is equivalent to COMP 5205 at Carleton University.

Course Component: Lecture

CSI 5152 Evolving Information Networks (3 units)

Convergence of social and technological networks with WWW. Interplay between information content, entities creating it and technologies supporting it. Structure and analysis of such networks, models abstracting their properties, link analysis, search, mechanism design, power laws, cascading, clustering and connections with work in social sciences. This course is equivalent to COMP 5310 at Carleton University.

Course Component: Lecture

Prerequisites: introductory-level background in networks, algorithms, and probability.

CSI 5153 Data Management for Business Intelligence (3 units)

Data management problems and information technology in decision making support in business environments. Topics include advanced data modeling, semantic modeling, multidimensional databases and data warehousing, on-line-analytical processing, elements of data mining, context in data management, data quality assessment, data cleaning, elements of business process modeling. This course emphasizes concepts and techniques rather than specific applications or systems/implementations. This course is equivalent to COMP 5111 at Carleton University.

Course Component: Lecture

CSI 5154 Algorithms for Data Science (3 units)

Algorithmic techniques to handle (massive/big) data arising from, for example, social media, mobile devices, sensors, financial transactions. Algorithmic techniques may include locality-sensitive hashing, dimensionality reduction, streaming, clustering, VC-dimension, external memory, core sets, link analysis and recommendation systems. This course is equivalent to COMP 5112 at Carleton University.

Course Component: Lecture

CSI 5160T Topic in Mini and Micro-Computer System (2 crédits / 2 units)

Volet / Course Component: Cours magistral / Lecture

CSI 5161 Principles of Distributed Simulation (3 units)

Distributed simulation principles and practices. Synchronization protocols: Optimistic vs Conservative, Deadlock detection in conservative simulations, Time warp simulation. Distributed interactive simulation: Data distribution management, Interest management, High Level Architectures (HLA), Run Time Infrastructure (RTI). Distributed web-based simulation. Distributed agent based simulation. Real time applications of distributed simulation. Distributed and collaborative virtual simulations. This course is equivalent to COMP 5606 at Carleton University.

Course Component: Lecture

CSI 5163 Algorithm Analysis and Design (3 units)

Topics of current interest in the design and analysis of computer algorithms for graph-theoretical applications; e.g. shortest paths, chromatic number, etc. Lower bounds, upper bounds, and average performance of algorithms. Complexity theory. This course is equivalent to COMP 5703 at Carleton University.

Course Component: Lecture

CSI 5164 Computational Geometry (3 units)

Study of design and analysis of algorithms to solve geometric problems; emphasis on applications such as robotics, graphics, and pattern recognition. Topics include: visibility problems, hidden line and surface removal, path planning amidst obstacles, convex hulls, polygon triangulation, point location. This course is equivalent to COMP 5008 at Carleton University.

Course Component: Lecture

CSI 5165 Combinatorial Algorithms (3 units)

Design of algorithms for solving problems that are combinatorial in nature, using both sequential and parallel models of computation. Parallel algorithms for enumerating basic combinatorial objects (permutations, combinations, set partitions) and for solving optimization problems (knapsack, minimal cover, branch-and-bound). Polyminoes, polygonal systems, enumeration and classification and benzenoid and coronoid hydrocarbons in chemistry. Combinatorial geometry (Voronoi diagrams, polytopes arrangements). Algorithmic problems in many-valued logics (base enumeration, tautology checking, minimization, finding the spectra). This course is equivalent to COMP 5709 at Carleton University.

Course Component: Lecture

CSI 5166 Applications of Combinatorial Optimization (3 units)

Topics in combinatorial optimization with emphasis on applications in Computer Science. Topics include network flows, various routing algorithms, polyhedral combinatorics, and the cutting plane method. This course is equivalent to COMP 5805 at Carleton University.

Course Component: Lecture

CSI 5167 Human-Computer Interaction Models, Theories and Frameworks (3 units)

A basis for graduate study in HCI with an emphasis on the application of theory to user interface design. Review of main theories of human behaviour relevant to HCI, including especially Cognitive Dimensions of Notations Framework, Mental Models, Distributed Cognition, and Activity Theory, and their application to design and development of interactive systems. This course is equivalent to COMP 5210 at Carleton University.

Course Component: Lecture

CSI 5168 Digital Watermarking (3 units)

Overview of recent advances in watermarking of image, video, audio, and other media. Spatial, spectral, and temporal watermarking algorithms. Perceptual models. Use of cryptography in steganography and watermarking. Robustness, security, imperceptibility, and capacity of watermarking. Content authentication, copy control, intellectual property, digital rights management, and other applications. This course is equivalent to COMP 5309 at Carleton University.

Course Component: Lecture

CSI 5169 Wireless Networks and Mobile Computing (3 units)

Computational aspects and applications of design and analysis of mobile and wireless networking. Topics include Physical, Link Layer, Media Access Control, Wireless, Mobile LANs (Local Area Networks), Ad-Hoc, Sensor Networks, Power Consumption optimization, Routing, Searching, Service Discovery, Clustering, Multicasting, Localization, Mobile IP/TCP (Internet Protocol/Transmission Control Protocol), File Systems, Mobility Models, Wireless Applications. Courses CSI 5169, ELG 6168 cannot be combined for units. This course is equivalent to COMP 5304 at Carleton University.

Course Component: Lecture

CSI 5173 Data Networks (3 units)

Mathematical and practical aspects of design and analysis of communication networks. Topics include: basic concepts, layering, delay models, multi-access communication, queuing theory, routing, fault-tolerance, and advanced topics on high-speed networks, ATM, mobile wireless networks, and optical networks. This course is equivalent to COMP 5203 at Carleton University.

Course Component: Lecture

CSI 5174 Validation Methods for Distributed Systems (3 units)

Review of formal specification and description techniques for distributed and open systems. Verification techniques. Correctness proofs. Verification of general properties of distributed systems. Analysis and relief stragegies. Testing techniques. Test generation strategies. Test architectures. This course is equivalent to COMP 5604 at Carleton University.

Course Component: Lecture

CSI 5175 Mobile Commerce Technologies (3 units)

Wireless networks support for m-commerce; m-commerce architectures and applications; mobile payment support systems; business models; mobile devices and their operating systems; mobile content presentation; security issues and solutions; relevant cross layer standards and protocols; case studies. Courses EBC 5175, CSI 5175 cannot be combined for units.

Course Component: Lecture

Exclusion: EBC 5175

CSI 5180 Topics in Artificial Intelligence (3 units)

A programming-oriented introduction to selected topics in Artificial Intelligence (A.I.). Topics for consideration include: A.I. programming techniques, pattern matching systems, natural language systems, rule-based systems, constraint systems, learning systems, and cognitive systems. Assignments will be both (a) programming-oriented, requiring implementation and/or extensions of prototypes in Lisp and/or Prolog and (b) research-oriented, requiring readings of special topics in current A.I. journals. This course is equivalent to COMP 5100 at Carleton University.

Course Component: Lecture

CSI 5183 Evolutionary Computation and Artificial Life (3 units)

Study of algorithms based upon biological theories of evolution, applications to machine learning and optimization problems. Possible topics: Genetic Algorithms, Classifier Systems, and Genetic Programming. Recent work in the fields of Artificial Life (swarm intelligence, distributed agents, behavior-based AI) and of connectionism. This course is equivalent to COMP 5206 at Carleton University.

Course Component: Lecture

Precludes additional credit for COMP 4107.

CSI 5185 Statistical and Syntactic Pattern Recognition (3 units)

Topics include a mathematical review, Bayes decision theory, maximum likelihood and Bayesian learning for parametric pattern recognition, non-parametric methods including nearest neighbor and linear discriminants. Syntactic recognition of strings, substrings, subsequences and tree structures. Applications include speech, shape and character recognition. This course is equivalent to COMP 5107 at Carleton University.

Course Component: Lecture

CSI 5200 Projects on Selected Topics (3 units)

Course Component: Lecture

CSI 5308 Principles of Distributed Computing (3 units)

Formal models; semantics of distributed computations; theoretical issues in the design of distributed algorithms; computational complexity; reducibility and equivalence of distributed problems. Related topics: systolic systems and computations, oligarchical systems and control mechanisms. This course is equivalent to COMP 5003 at Carleton University.

Course Component: Lecture

CSI 5311 Distributed Databases and Transaction Processing (3 units)

Principles involved in the design and implementation of distributed databases and distributed transaction processing systems. Topics include: distributed and multi-database system architectures and models, atomicity, synchronization and distributed concurrency control algorithms, data replication, recovery techniques, and reliability in distributed databases. This course is equivalent to COMP 5101 at Carleton University.

Course Component: Lecture

CSI 5312 Distributed Operating Systems Engineering (3 units)

Design issues of advanced multiprocessor distributed operating systems: multiprocessor system architectures; process and object models; synchronization and message passing primitives; memory architectures and management; distributed file systems; protection and security; distributed concurrency control; deadlock; recovery; remote tasking; dynamic reconfiguration; performance measurement, modeling, and system tuning. This course is equivalent to COMP 5102 at Carleton University.

Course Component: Lecture

CSI 5314 Object-Oriented Software Development (3 units)

Issues in modeling and verifying quality and variability in object-oriented systems. Testable models in model-driven and test-driven approaches. System family engineering. Functional conformance: scenario modeling and verification, design by contract. Conformance to non-functional requirements: goals, forces and tradeoffs, metrics. This course is equivalent to COMP 5104 at Carleton University.

Course Component: Lecture

CSI 5380 Systems and Architectures for Electronic Commerce (3 units)

Content and transactions in e-commerce systems. System architecture with a focus on frameworks, tools and development process. Application frameworks. Information management. Security, standards, and regulatory compliance. Current research issues. Hands-on experience with an integrated set of current e-commerce tools. E-commerce development project. This course is equivalent to COMP 5405 at Carleton University.

Course Component: Lecture

Prerequisite: CSI 5389

CSI 5386 Natural Language Processing (3 units)

Definitions, applicatons, challenges, lexicons, thesauri, corpora and other linguistic resources. Morphological analysis; tagging. Selected syntactic theories: phrase structure grammars, unification-based grammars. Parsing techniques: chars, deterministic parsing, logic grammars. Selected semantic representations: logic, logical forms, conceptual graphs. Elements of semantic and pragmatic analysis: reference, scope, focus. Elements of statistical language processing and text mining. Introduction to corpus linguistics. Term projects, one on syntax and one on semantics, will be done in Prolog and logic grammars. This course is equivalent to COMP 5505 at Carleton University.

Course Component: Lecture

Prerequisite: CSI 4106 or permission of the instructor

CSI 5387 Data Mining and Concept Learning (3 units)

Data mining as finding associations, clustering, and concept learning. Basic issues of associations and selected concept representations. Introduction to data warehousing. Concept learning viewed as a search problem. Standard concept induction algorithms. The use of neural networks for representing and learning concepts. Knowledge-intensive concept learning. Introduction to the formal theory of concept learnability. Instance-based learning. Selected applications of data mining and concept learning.

Course Component: Lecture

CSI 5388 Topics in Machine Learning (3 units)

Course Component: Lecture

CSI 5389 Electronic Commerce Technologies (3 units)

Introduction to business models and technologies. Search engines. Cryptography. Web services and agents. Secure electronic transactions. Value added e-commerce technologies. Advanced research questions. This course is equivalent to COMP 5401 at Carleton University.

Course Component: Lecture

Prerequisite: CSI 4110 or equivalent

CSI 5390 Learning Systems from Random Environments (3 units)

Computerized adaptive learning for random environments and its applications. Topics include a mathematical review, learning automata which are deterministic/stochastic, with fixed/variable structures, of continuous/discretized design, with ergodic/absorbing properties and of estimator families.

Course Component: Lecture

Prerequisite: ELG 6153

CSI 5500 Projets en informatique (3 crédits)

Volet : Cours magistral

CSI 5501 Modèles formels de l'information (3 crédits)

Volet : Cours magistral

CSI 5510 Principles de développement formel de logiciels (3 crédits)

Une présentation de méthodologies courantes dans les domaines de spécification, développement et vérification de logiciels. Programmes itératifs : la méthode de l'invariant. Programmes récursifs : méthodes inductives. Spécification de logiciels : abstractions procédurelles et de données. Types algébriques abstraits. On mettra l'accent sur les logiciels répartis. Ce cours est équivalent à COMP 5707 à la Carleton University.

Volet : Cours magistral

CSI 5511 Génie de la qualité des logiciels (3 crédits)

Critères de la qualité des logiciels. Composantes et métriques de qualité. Qualité du processus de développement des logiciels. Génie de fiabilité des logiciels. Capture et validation d'exigences. Validation systématique de la conception; approche boîte-grise. Conception, implantation et gestion des tests. Étude de cas en validation et vérification des logiciels de communication. Conception orientée objet. Aspects théoriques. Ce cours est équivalent à COMP 5501 à la Carleton University.

Volet : Cours magistral

CSI 5526 Algorithmes en bio-informatique (3 crédits)

Assemblage de l'ADN, recherche de gênes, comparaison de chaînes, alignement de séquences, structures grammaticales, structures secondaires et tertiaires. Les récents développements, tels que les puces d'ADN et de protéines. Travail additionnel requis dans le cas des étudiants inscrits sous la cote CSI 5526.

Volet : Cours magistral

CSI 5560 Sujets en mini et micro-ordinateurs (3 crédits)

Volet : Cours magistral

CSI 5561 Sujets en simulation et en optimisation des systèmes (3 crédits)

Volet : Cours magistral

CSI 5563 Analyse et conception des algorithmes (3 crédits)

Volet : Cours magistral

CSI 5565 Algorithmes combinatoires (3 crédits)

Conception d'algorithmes de problèmes de nature combinatoire, à l'aide de modèles séquentiels et parallèles. Algorithmes parallèles pour l'énumération d'objets combinatoires de base (permutations, combinaisons, partitions), et pour résoudre des problèmes d'optimisation (knapsack, recouvrement minimal, méthode branch-and-bound); systèmes polygonaux, applications en chimie; géométrie combinatoire (diagrammes de Voronoi, polytopes, arrangements); problèmes en logique à valeur multiple, énumération de base, vérification de tautologie, minimisation, recherche du spectre. Ce cours est équivalent à COMP 5709 à la Carleton University.

Volet : Cours magistral

CSI 5571 Télématique : Concepts et logiciels (3 crédits)

Volet : Cours magistral

CSI 5580 Sujets en intelligence artificielle (3 crédits)

Concepts et méthodes de base de l'intelligence artificielle. Représentation des connaissances. Traitement de langage naturel. Stratégies de recherches et de jeu. Action de planification. Déduction et raisonnement. Applications. Programmation en PROLOG. Ce cours est équivalent à COMP 5100 à la Carleton University.

Volet : Cours magistral

CSI 5780 Systèmes et architectures des logiciels pour le commerce électronique (3 crédits)

Contenu et transactions dans les systèmes de commerce électronique. Architecture de système. Une attention particulière sera portée aux logiciels intégrés, aux outils et au processus de développement. Cadres d'applications. Gestion de l'information. Sécurité, normes et conformité aux réglementations. Problèmes de recherche actuels. Expérience pratique intégrée des outils modernes du commerce électronique. Projet de développement en commerce électronique. Ce cours est équivalent à COMP 5405 à la Carleton University.

Volet : Cours magistral

Prerequisite: CSI 5389

CSI 5787 Fouille des données et apprentissage des concepts (3 crédits)

Fouille de données comme acquisition d'associations, groupement, et apprentissage des concepts. Questions de base des associations et les représentations choisies des concepts. Introduction aux entrepôts des données. Apprentissage des concepts comme une recherche d'espace des concepts. Les algorithmes typiques d'induction. Les réseaux des neurones comme représentation et mécanisme d'apprentissage des concepts. Apprentissage des concepts en présence des connaissances. Introduction à la théorie d'apprentissage. Apprentissage fondé sur les cas. Applications choisies de fouille de données et d'apprentissage des concepts.

Volet : Cours magistral

CSI 5789 Technologies du commerce électronique (3 crédits)

Introduction aux modèles et technologies d'entreprise. Moteurs de recherche. Cryptographie. Services Web et agents. Transactions électroniques sécurisées. Technologies du commerce électronique à valeur ajoutée. Questions de recherche avancées. Ce cours est équivalent à COMP 5401 à la Carleton University.

Volet : Cours magistral

Prerequisite: CSI 4110 or equivalent.

CSI 5900 Projets de recherche en informatique / Graduate Projects in Computer Science (3 crédits / 3 units)

Ce cours est équivalent à COMP 5902 à la Carleton University. / This course is equivalent to COMP 5902 at Carleton University.

Volet / Course Component: Cours magistral / Lecture

CSI 5901 Études dirigées / Directed Studies (3 crédits / 3 units)

A course of independent study under the supervision of a member of the School of Computer Science. Ce cours est équivalent à COMP 5901 à la Carleton University. / This course is equivalent to COMP 5901 at Carleton University.

Volet / Course Component: Recherche / Research

CSI 5902 Séminaires / Seminar (3 crédits / 3 units)

Ce cours est équivalent à COMP 5904 à la Carleton University. / To complete this course, the student must attend 5 graduate seminars at Carleton, and 5 at SITE within a year. The student must also make one presentation in the context of this graduate seminar. This course is equivalent to COMP 5904 at Carleton University.

Volet / Course Component: Séminaire / Seminar

CSI 5903 Stage en commerce électronique / Electronic Commerce Work Term (3 crédits / 3 units)

Expérience en milieu de travail. Noté S (satisfaisant) ou NS (non satisfaisant) selon les résultats du rapport écrit et l'évaluation de l'employeur. Préalable : être accepté au programme de certificat en commerce électronique (option technologie) et recevoir la permission du Comité du programme. / Practical experience. Graded S (Satisfactory) / NS (Not satisfactory), to be based on the grades obtained for the written report as well as on the evaluations of the employer.

Volet / Course Component: Cours magistral / Lecture

CSI 5904 Projet de recherche avancé en commerce électronique / Graduate Project in Electronic Commerce (3 crédits / 3 units)

Projet sur un sujet précis en commerce électronique mené sous la direction d'un professeur. Les cours CSI 5904, CSI 5903 ne peuvent être combinés pour l'obtention de crédits. / Project on a specific topic in electronic commerce under the supervision of a professor. Courses CSI 5904, CSI 5903 cannot be combined for units.

Volet / Course Component: Cours magistral / Lecture

Exclusion: CSI 5903.

CSI 5905 Projet / Project (3 crédits / 3 units)

Développement d'une application pour appareils mobiles. L'étudiant identifie un projet, qui doit comprendre une importante part de logiciel s'exécutant sur l'appareil mobile et se prêter à une évaluation raisonnablement indépendante d'autres logiciels. Le projet est dirigé par un professeur approuvé par la direction du programme. Le projet est normalement complété en une session. Noté S (satisfaisant) ou NS (non satisfaisant) par le directeur du projet et un autre professeur nommé par le directeur du programme. Préalable : approbation de la direction du programme. / Development of an application for mobile devices. Students identify a project that must include a significant portion of software running on device, and should be reasonably self contained. Graded S (Satisfactory) or NS (Not satisfactory) by the supervisor and by another professor appointed by the program director. The project can normally be completed in one session.

Volet / Course Component: Cours magistral / Lecture

CSI 6001 Stage coop I / Co-Op Work I (6 crédits / 6 units)

Expérience en milieu de travail. Noté P (réussite) / F (échec) par un professeur du programme selon les résultats du rapport écrit et l'évaluation du superviseur de stage. Préalable : permission du responsable des études supérieures. / Experience in a workplace setting. Graded P (Pass) /F (Fail) by a professor in the program based on the written report and the evaluation of the internship supervisor.

Volet / Course Component: Recherche / Research

CSI 6002 Stage coop II / Co-Op Work II (6 crédits / 6 units)

Expérience en milieu de travail. Noté P (réussite) / F (échec) par un professeur du programme selon les résultats du rapport écrit et l'évaluation du superviseur de stage. Préalable : permission du responsable des études supérieures. / Experience in a workplace setting. Graded P (Pass) / F (Fail) by a professor in the program based on the written report and the evaluation of the internship supervisor.

Volet / Course Component: Recherche / Research

CSI 6900 Projets de recherche intensive en informatique / Intensive Graduate Projects in Computer Science (6 crédits / 6 units)

Cours de six crédits s'échelonnant sur une période de deux sessions. L'envergure du projet de recherche exigé dans ce cours est deux fois plus grande que dans le cas de CSI 5900. Les cours CSI 6900, CSI 5900 ne peuvent être combinés pour l'obtention de crédits. Cours ouvert uniquement aux étudiants inscrits à la maîtrise sans thèse. Ce cours est équivalent à COMP 5903 à la Carleton University. / A two-session course. The project is twice the scope of projects in CSI 5900. Courses CSI 6900, CSI 5900 cannot be combined for units. Not to be taken in the thesis option. This course is equivalent to COMP 5903 at Carleton University.

Volet / Course Component: Recherche / Research

CSI 7131 Advanced Parallel and Systolic Algorithms (3 units)

Continuation of CSI 5131 (COMP 5704). This course is equivalent to COMP 6100 at Carleton University.

Course Component: Lecture

CSI 7160 Advanced Topics in the Theory of Computing (3 units)

This course is equivalent to COMP 6601 at Carleton University.

Course Component: Lecture

CSI 7161 Advanced Topics in Programming Systems and Languages (3 units)

This course is equivalent to COMP 6603 at Carleton University.

Course Component: Lecture

CSI 7162 Advanced Topics in Computer Applications (3 units)

This course is equivalent to COMP 6604 at Carleton University.

Course Component: Lecture

CSI 7163 Advanced Topics in Computer Systems (3 units)

This course is equivalent to COMP 6605 at Carleton University.

Course Component: Lecture

CSI 7170 Advanced Topics in Distributed Computing (3 units)

This course is equivalent to COMP 6602 at Carleton University.

Course Component: Lecture

CSI 7314 Advanced Topics in Object-Oriented Systems (3 units)

Advanced object-oriented software engineering, in particular the issues of reuse and testing. Sample topics include: interaction modeling; class and cluster testing; traceability; design patterns and testing; the C++ standard template library. Students will carry out research. This course is equivalent to COMP 6104 at Carleton University.

Course Component: Lecture

CSI 7561 Études avancées en systèmes et langages de programmation (3 crédits)

Ce cours est équivalent à COMP 6603 à la Carleton University.

Volet : Cours magistral

CSI 7900 Projets de recherche en informatique / Graduate Projects in Computer Science (3 crédits / 3 units)

Ce cours est équivalent à COMP 6902 à la Carleton University. / This course is equivalent to COMP 6902 at Carleton University.

Volet / Course Component: Cours magistral / Lecture

CSI 7901 Études dirigées / Directed Studies (3 crédits / 3 units)

Ce cours est équivalent à COMP 6901 à la Carleton University. / This course is equivalent to COMP 6901 at Carleton University.

Volet / Course Component: Recherche / Research

CSI 7999 Thèse de maîtrise en informatique / Master of Computer Science Thesis

Ce cours est équivalent à COMP 5905 à la Carleton University. / This course is equivalent to COMP 5905 at Carleton University.

Volet / Course Component: Recherche / Research

CSI 9901 Colloque / Seminar

Volet / Course Component: Séminaire / Seminar

CSI 9902 Colloque / Seminar

Volet / Course Component: Recherche / Research

CSI 9997 Proposition de thèse de doctorat / Doctoral Thesis Proposal

Within 8 terms following initial registration in the program, a document, generally defining the problem addressed, relating it to the literature, outlining the hypotheses, goals, research methodology, initial results and validation approach, must be submitted to an examination committee and successfully defended. Ce cours est équivalent à COMP 6908 à la Carleton University. This course is equivalent to COMP 6908 at Carleton University.

Volet / Course Component: Recherche / Research

CSI 9998 Examen général de doctorat / Ph.D. Comprehensive

A committee must be assembled and must approve at least 3 topics for written examination: typically, a major and two minor areas. An oral examination occurs if the written exam is passed. Both elements must take place within the first 4 terms following initial registration in the program. The comprehensive examination may be failed, passed conditionally (i.e., with extra course requirements) or passed unconditionally. If failed, this course may be retaken at most one time. Ce cours est équivalent à COMP 6907 à la Carleton University. This course is equivalent to COMP 6907 at Carleton University.

Volet / Course Component: Recherche / Research

CSI 9999 Thèse de doctorat / Ph.D. Thesis

Ce cours est équivalent à COMP 6909 à la Carleton University. / This course is equivalent to COMP 6909 at Carleton University.

Volet / Course Component: Recherche / Research