Course Listing
Please visit the Academic Timetable to see which courses are presently being offered and in which location(s). Not all courses listed below run every term or in all locations. For specific details about program requirements and degree regulations, please refer to the Academic Calendar.
-
COIS-1010H: The Digital World
Offered:
- Online
Digital systems have redefined how we work, communicate, and play-just think about the World Wide Web, mobile camera phones, video games, and e-business. Core topics examine the underlying technologies of both computing and information systems and how they have become an integral and indispensable part of our daily lives.
Cross-listed: MDST-1010H
-
COIS-1020H: Programming for Computing Science
Offered:
- Peterborough
- Durham GTA
Programming for computer science requires a solid foundation in the software development process, including algorithmic design, abstraction, implementation, testing, and documentation. Core topics include sequencing, selection, iteration, simple data types, expressions, and arrays, as well as the object-oriented notions of classes, methods, inheritance, and polymorphism. Pre- or co-requisite: COIS 1010H or PHYS 1001H or MATH 1110H. Students without prior programming experience should take COIS 1010H as a prerequisite.
-
COIS-1400H: Introduction to Data Science
Offered:
- Online
Develops a solid foundation in the main concepts of data science and programming in Python. Core topics include repetition and selection structures, algorithm design techniques, file types, big data, data mining, and data visualization. Prerequisite: COIS 1020H.
-
COIS-1620H: Introduction to Information Systems
Offered:
- Online
Wherever and whenever information is required, an information system is also required. Core topics include the use of information systems for strategic advantage, their basic underlying technologies, the types of information systems and how they are constructed, managed, and replaced, as well as their ethical and legal use. Prerequisite: COIS 1010H.
Cross-listed: ADMN-1620H
-
COIS-2020H: Data Structures and Algorithms
Offered:
- Peterborough
- Durham GTA
Data structures define how data are represented. Algorithms define how data structures are manipulated. Using more advanced programming language features, core topics include arrays, linked lists, hash tables, binary heaps, and binary search trees. Prerequisite: COIS 1020H. Recommended: MATH 1350H.
-
COIS-2040H: Object Oriented Programming
Offered:
- Peterborough
The C language is utilized to examine object-oriented concepts. These concepts can include classes, objects, inheritance, encapsulation, polymorphism, class deviation, abstract classes, interfaces, static class members, object construction and destruction, exceptional handling, function overloading and overriding, overload resolution, container classes, and/or template classes. Also includes an introduction to Git and GitHub. Prerequisite: COIS 1020H.
-
COIS-2240H: Software Design & Modelling
Offered:
- Peterborough
- Durham GTA
Good software design and modelling is a necessary prerequisite for the production of software which is correct, robust, and maintainable. Using the standard Unified Modeling Language (UML) to specify design, core topics include use cases; classes and class membership; aggregation, composition, and inheritance; virtual functions and polymorphism; state diagrams; and design patterns. The course also covers object-oriented concepts using the Java language. Prerequisite: COIS 1020H (or both COIS 1520H and COIS-ADMN 2620H).
-
COIS-2250H: Electronics
Offered:
- Peterborough
An applied course in the electronic circuits most commonly used in laboratory sciences. Circuit theory, test instruments, operational amplifiers, semiconductor theory, measurement sensors, power control, digital circuits, computer process-control and data collection, AC circuit theory, filters, DC power supplies, RC timing circuits, amplifiers, oscillators. Prerequisite: 60% or higher in each of PHYS 1002H and MATH 1120H, or permission of the department.
Cross-listed: PHYS-2250H
-
COIS-2300H: Computer Organization
Offered:
- Peterborough
- Durham GTA
Computer organization is the level of abstraction between the digital logic and the operating system. At this level, computing subsystems refer to hardware pieces built from lower-level building blocks. Core topics include the central processing unit, memory hierarchy, and input/output organization. Topics are supplemented with assembly language programming. Prerequisite: COIS 1020H or 1520H.
-
COIS-2320H: Digital Logic
Offered:
- Online
Digital logic describes how computer hardware actually works at the logic gate and circuit level. Core topics include Boolean algebra, Karnaugh maps, the minimization of Boolean functions and the design of combinational and sequential circuits, including adders, decoders, multiplexers, flip-flops, and memory circuits. Prerequisite: COIS 1020H or 1520H.
-
COIS-2400H: R in Data Science
Offered:
- Peterborough
An introduction to the programming language R and its applications in data science. A wide range of topics are covered, with emphasis on techniques for data gathering, cleaning and manipulation, text and numerical analysis, and visualization to provide relevant applications in data science. Prerequisite: COIS 1400H.
-
COIS-2410H: Symbolic Logic
Offered:
- Peterborough
- Durham GTA
An introductory study of formal logical systems, together with their use in the analysis of various types of arguments. Prerequisite: 4.0 university credits or permission of department chair.
Cross-listed: PHIL-2410H
-
COIS-2430H: Web Development I: Front-End
Offered:
- Peterborough
- Durham GTA
Front-end web development requires a strong understanding of the technologies used on the client side of a web application. Topics include front-end languages HTML, CSS, and JavaScript, as well as important concepts like responsive design, accessibility, usability, version control, and regular expressions. Prerequisite: COIS 1020H or 1400H. Not open to students with credit for COIS 3420H.
-
COIS-2520H: Professionalism and Ethics in Computing
Offered:
- Online
Identifies and explores some of the fundamental social, legal, and ethical issues inherent in the discipline of computing. Topics include social context, analytical tools, professional ethics, intellectual property, privacy and civil liberties, professional communication, and equity issues. Prerequisite: COIS 1020H.
-
COIS-2600H: Discrete I: Structures
Offered:
- Peterborough
- Durham GTA
Mathematics related to computer science, including propositional logic, sets and relations, proofs, counting techniques and recursive relations, trees and networks (graphs); applications. Prerequisite: MATH 1350H and 1120H; or COIS 1020H, MATH 1350H, and one of MATH 1005H or 1110H.
Cross-listed: MATH-2600H
-
COIS-2620H: Systems Analysis and Design
Offered:
- Peterborough
- Durham GTA
Systems analysis and design identifies the informational needs/resources of an organization and specifies appropriate information systems to meet the needs and exploit the resources for strategic advantage. Core topics include the current methodologies, techniques, and tools used for both the analysis and design. Managerial and organizational issues are also discussed. Prerequisite: COIS-ADMN 1620H.
Cross-listed: ADMN-2620H
-
COIS-2700P: Co-Op Work Term
Offered:
- Peterborough
-
COIS-2750H: Computer Crime and Forensics
Offered:
- Online
Computer crime is the fastest-growing area of illegal activity in the world. Users beware After some background information (how computers work, number systems, information-hiding algorithms), we examine the schemes and techniques used by computer criminals, the forensic techniques used to catch the criminals, and ways to prevent victimization. Recommended prerequisite: COIS 1010H.
Cross-listed: FRSC-2750H
-
COIS-2800H: Digital Culture
Offered:
- Durham GTA
Interactive digital technology and the convergence of computing, communications, public media, and entertainment have had profound cultural implications. Core topics address current concerns such as the World Wide Web, multimedia design, virtual spaces, social domains, and the blogosphere. Recommended prerequisite: COIS 1010H. This course cannot be counted as a science credit.
Cross-listed: MDST-2800H
-
COIS-2830H: Multimedia and Design
Offered:
- Durham GTA
Multimedia concepts such as photo and video editing, visual effects, 3D assets, and even writing style serve as tools to explore concepts and challenges in modern user experience design, with a focus on web pages, game design, and user interfaces. Principles of design covers core concepts such as the discoverability of features, understanding diverse human users, complexity of feedback, and how computer systems interpret and react to human actions. Recommended prerequisite: COIS 1010H.
-
COIS-3020H: Data Structures & Algorithms II
Offered:
- Peterborough
- Durham GTA
A continuation of COIS 2020H, this course introduces more complex data structures and algorithmic techniques. Core topics include adjacency matrices and lists, randomly built binary search trees, augmented data structures, tries, binomial heaps, B-trees, disjoint sets, and quad trees. Prerequisite: COIS 2020H. Recommended: COIS-MATH 2600H.
-
COIS-3030H: Software Specification and Development
Offered:
- Peterborough
- Durham GTA
The development of large software systems relies on sound methodologies and techniques to manage the inherent complexity and to produce quality software which satisfies the client or customer. Core topics include various software development paradigms and their usage, as well as the importance of feasibility studies, requirements analysis, and specification. Prerequisite: COIS 2240H.
-
COIS-3040H: Software Architecture & Design
Offered:
- Peterborough
Software architecture is concerned with the highlevel design, interface, and relationships among the components that make up a software system. Testing ensures that these components work properly on their own and within an integrated system. Core topics include architecture description languages, as well as maintenance strategies and various testing methodologies. Prerequisite: COIS 2020H and 3030H.
-
COIS-3050H: Formal Languages & Automata
Offered:
- Peterborough
- Durham GTA
Formal languages and automata are the underlying theoretical foundations of computer science. Core topics include regular languages and finite automata, context-free languages and pushdown automata, the Turing machine and its languages. Real world applications, unsolvable problems, and their relevance to the semantics of programming are also discussed. Prerequisite: COIS 1020H. Recommended: COIS-MATH 2600H.
-
COIS-3180H: Numerical and Computational Methods
Offered:
- Peterborough
Error analysis, nonlinear equations, linear systems, interpolation methods, numerical differentiation and integration and initial value problems. Prerequisite: MATH 2110H. Not open to students with credit for MATH-COIS 2180H.
Cross-listed: MATH-3180H
-
COIS-3200Y: Electricity and Magnetism
Offered:
- Peterborough
Electrostatics, magnetostatics, electric and magnetic properties of matter, Maxwell's equations, electromagnetic wave propagation. Prerequisite: 60% or higher in PHYS 1002H or permission of the department; PHYS-MATH 2150H, MATH 2110H, and 2120H.
Cross-listed: PHYS-3200Y
-
COIS-3270H: Philosophy of Artificial Intelligence
Offered:
- Peterborough
- Durham GTA
An examination of philosophical questions pertaining to artificial intelligence (AI) and the role AI plays in society. The first part treats the history, nature, and limits of AI. The second part turns to more applied questions related to ethics, and the social and political implications of AI. Prerequisite: 7.0 university credits or permission of the department chair.
Cross-listed: PHIL-3270H
-
COIS-3320H: Fundamentals of Operating Systems
Offered:
- Peterborough
An operating system is the software component of a computing system which is responsible for the management and accessibility of the hardware resources. Core topics include process management, synchronization, processor allocation, primary and secondary storage management, file management, security, and user interfaces. Topics are illustrated using contemporary operating systems. Prerequisite: COIS 2020H and 2300H.
-
COIS-3370H: Cyberethics
Offered:
- Online
Enables students to develop their own positions about the most important social and moral problems raised by computer use and technologies, including the fragmentation of society into computer "haves" and "have-nots," Internet censorship, pornography, intellectual property rights, and software piracy. Prerequisite: 7.0 university credits or permission of department chair.
Cross-listed: PHIL-3370H, MDST-3370H
-
COIS-3380H: Systems Programming in C
Offered:
- Peterborough
- Durham GTA
Systems programming produces software which provides services to the computer hardware. Using systems programming techniques in a Unix-style environment and using machine-oriented programming languages such as C/C, core topics include procedural programming, shell programming, pipes, file processing, system calls, signals, and basic network programming. Prerequisite: COIS 2020H or 2300H.
-
COIS-3400H: Database Management Systems
Offered:
- Peterborough
- Durham GTA
A database is a structured collection of data, whereas a database management system facilitates the creation, querying, and maintenance of databases. Core topics include the relational model, entity-relationship diagrams, relational algebra, SQL, database application development, storage and indexing, and normalization. Topics are illustrated using a relational DBMS. Prerequisite: COIS 1020H or both COIS 1520H and COIS-ADMN 2620H.
-
COIS-3430H: Web Dev Ii: Server-Side & Frameworks
Offered:
- Peterborough
- Durham GTA
Following the foundations set in COIS 2430H, this course encourages the exploration of more advanced topics in web applications, including design patterns, server-side programming, database integration, APIs, security, and front-end frameworks, along with development processes like build tools, testing and CI/CD. Prerequisite: COIS 2430H or 3420H. Pre- or co-requisite: COIS 3400H.
-
COIS-3510H: Data Visualization
Offered:
- Peterborough
Data visualization is a main step in the analysis of data in a wide range of scientific research areas as well as business applications. We discuss general approaches, tools, and techniques for the visualization of various types of data, including spatial data, graph data, and time series data. Prerequisite: 10.0 university credits or permission of instructor. Recommended: COIS 1020H or 1520H.
-
COIS-3533H: Game Studies
Offered:
- Peterborough
- Durham GTA
An introduction to game studies that explores the implications of games and play. What can games tell us about what we value, how we think, and who we are? Prerequisite: 4.0 university credits.
Cross-listed: CUST-3533H, MDST-3533H
-
COIS-3550H: Applied AI & Machine Learning
Offered:
- Durham GTA
Fundamental artificial intelligence (AI) and machine learning concepts, algorithms, and techniques. The focus is on why and what can be done, along with available tools and applications in solving real-world problems, rather than the finer details of how it could be built. The course uses TensorFlow with provided Python code. Prerequisite: COIS 1020H.
-
COIS-3560H: Human-Computer Interaction
Offered:
- Durham GTA
The study of human-computer interaction incorporates ideas from computer science, behavioural science, and design to improve interaction between people and computers. Core topics include multidisciplinary, intuitive design, computer-supported co-operative education/work, ubiquitous computing, prototyping, collaboration, social interaction, augmented reality, haptics, heuristics, interfaces, workstation independence. Prerequisite: 5.0 university credits.
Cross-listed: MDST-3560H
-
COIS-3700P: Co-Op Work Term
Offered:
- Peterborough
-
COIS-3750H: Principles of Online Marketing
Offered:
- Online
Businesses today must effectively leverage the Internet and develop an online strategy which complements their traditional business practices. Core topics include website best practices, online marketing and customer relationships, positioning businesses online, and social networking for small and large enterprises. Topics are consolidated with a professional business proposal. Prerequisite: COIS-ADMN 1620H or ADMN 1000H or permission of instructor.
Cross-listed: ADMN-3750H
-
COIS-3820H: History and Impact of Computing
Offered:
- Online
The history of digital computation is relatively recent, but all around us. By introducing the key people whose insight, inventiveness, and industry have defined the digital world, a framework is developed within which all students can appreciate the fundamental milestones of computing and their impact on the world. Prerequisite: 5.0 university credits.
Cross-listed: MDST-3820H
-
COIS-3850H: Fundamentals of Project Management
Offered:
- Peterborough
- Durham GTA
Good project management focuses on the practical realities of getting things done with limited time and resources according to specifications determined by others--with successful outcomes. This course prepares students to write the professional certification exams offered by the Project Management Institute and the Project Management Association of Canada. Prerequisite: 10.0 university credits or COIS 2240H or COIS-ADMN 2620H or permission of instructor.
Cross-listed: ADMN-3850H
-
COIS-3860H: Internship Project
Offered:
- Peterborough
Students work at a site external to the department for 80-120 hours. In recognition of the scope of possible projects, this work can either be performed during 2-3 one-week (not necessarily consecutive) sessions, or during 10-15 full-day sessions in consecutive weeks. Students meet on a regular basis with their faculty mentor. Prerequisite: A minimum 75% cumulative average and 10.0 university credits including 5.0 COIS credits.
-
COIS-4000Y: Software Engineering Project
Offered:
- Peterborough
The software engineering project is a capstone course and provides students with the practical experience in the analysis, design, implementation, testing, and documentation of a real-world software product. Working as a team with clients, the project draws substantially on the theoretical knowledge gained in all previous COIS courses. Prerequisite: COIS 3040H. Pre- or co-requisite: COIS-ADMN 3850H. Recommended: COIS 3400H and 3430H. Not open to students with credit for COIS 4850H.
-
COIS-4050H: Advanced Algorithms
Offered:
- Peterborough
- Durham GTA
Algorithmic techniques provide generalized approaches to solving a wide variety of problems. Algorithmic analysis provides the basis of comparison among different solutions. Core topics include the algorithmic techniques of divide-and-conquer, dynamic programming, greedy algorithms, approximation algorithms, and string matching as well as the analytical techniques of problem classification, asymptotic analysis, amortized analysis, and recurrence relations. Prerequisite: COIS 2020H and COIS-MATH 2600H. Recommended: COIS 3020H.
-
COIS-4100H: Comparative Programming Languages
Offered:
- Peterborough
Evaluating and selecting the most appropriate programming language for an application is a critical step in software development. Core topics include the types of programming languages as well as the principal design and implementation issues for control structures, data types, subprograms, exception handling, and concurrency. Prerequisite: COIS 2020H and 1.0 COIS credit at the 3000 or 4000 level.
-
COIS-4310H: Computer Networks
Offered:
- Peterborough
A computer network links together two or more computers to enable the transfer of data. Core topics include data communication, network hardware and software, network architecture and protocols, local area and wide area networks, end-to-end routing protocols, wireless networks, Quality of Service, multimedia support, and network management. Prerequisite: COIS 3320H.
-
COIS-4350H: High Performance Computing
Offered:
- Peterborough
High performance computing is the use of advanced computer architectures to solve problems which require significant processing power, memory access, or storage. Core topics include advanced computer architectures, programming for shared and distributed memory machines, networking issues, caching, performance evaluation, and parallel algorithms. Topics are supplemented with case studies. Prerequisite: COIS 3320H or COIS 3380H.
-
COIS-4370H: Computer and Information Security
Offered:
- Peterborough
Security of data and information systems is a vital component of an organization's infrastructure. Core topics include the key concepts and legal implications of information security, risk and security management, asset security, and principles and policies for securing data. Attention is given to the methods of confirming and monitoring compliance to agreed-upon policies. Prerequisite: COIS 3320H or COIS 3380H.
-
COIS-4400H: Data Mining
Offered:
- Online
Data mining is the extraction of previously unknown and potentially useful patterns from large data sets. Core topics include the statistical foundations of data mining, sampling mechanisms, missing data, clustering, classification, and outlier detection. Case studies cover a wide variety of applications such as astronomy and marketing. Prerequisite: 1.0 COIS credit at the 3000 or 4000 level and one of COIS 2020H or COIS-ADMN 2620H.
-
COIS-4450H: Big Data
Offered:
- Peterborough
Big data applications are encompassing commercial and scientific, moving towards exascale analytics. Students from a variety of disciplines are introduced to the challenges and opportunities in this field, with the goal of providing them with theoretical and hands-on experience in the area of big data analytics. Prerequisite: COIS 3380H and 3510H.
-
COIS-4470H: Modelling & Simulation
Offered:
- Peterborough
- Durham GTA
Modelling and simulation enables us to construct mathematical or computer-based representations of real-world phenomena. Three steps are typically followed: modelling the key parameters, implementing a program to simulate behaviour, and analyzing the results. Core topics include pseudo-random number generation, discrete-event and next-event simulation, output analysis, and queuing thoery. Prerequisite: MATH 1550H and COIS 2020H.
-
COIS-4480H: Computer Graphics
Offered:
- Peterborough
Computer graphics are everywhere, from computeranimated movies and games to virtual reality and telepresence. This course introduces the fundamental mathematical and computational concepts of computer graphics. Topics include hardware, the OpenGL suite, line drawing, two-dimensional transformations, two-dimensional clipping algorithms, three-dimensional representations, three-dimensional clipping, line removal techniques, splines, and ray tracing. Prerequisite: COIS 2020H and MATH 1350H. Recommended: MATH 1110H.
-
COIS-4550H: Artificial Intelligence
Offered:
- Peterborough
- Durham GTA
AArtificial intelligence is the study of those techniques which create perceptions of "machine intelligence" and "intelligent agents." Topics may include but are not limited to expert systems, various evolutionary learning systems such as genetic algorithms, genetic programming, and neural networks. The impact and ethics of artificial intelligence are also examined. Prerequisite: 10.0 university credits including COIS 2020H.
-
COIS-4700P: Co-Op Work Term
Offered:
- Peterborough
-
COIS-4800P: Co-Op Work Term
Offered:
- Peterborough
-
COIS-4850H: Information Systems Project
Offered:
- Durham GTA
A capstone course which provides students with the practical experience in the analysis and design (but not implementation) of a real-world information system. Working as a team with clients, the project draws substantially on the theoretical knowledge gained in all previous COIS courses. Prerequisite: COIS-ADMN 2620H, COIS 3030H, and COIS 3850H. Recommended: COIS 3400H. Not open to students with credit for COIS 4000Y.
-
COIS-4901H: Advanced Reading Course
Offered:
- Peterborough
Students are required to submit a course proposal and have it approved by the departmental curriculum committee before enrolling.
-
COIS-4902H: Advanced Reading Course
Offered:
- Peterborough
Students are required to submit a course proposal and have it approved by the departmental curriculum committee before enrolling.
-
COIS-4903H: Advanced Reading Course
Offered:
- Peterborough
Students are required to submit a course proposal and have it approved by the departmental curriculum committee before enrolling.