Courses

Course offerings at Carleton


ITEC 5103 Cloud & Data Center Networks

This course covers the main topics of cloud and data center networking: cloud services, data center network topology, software defined networks, data processing, Distributed Filing Systems, cloud and data center security, and scheduling. In particular, we first study the topology features and difference models of network structures used in data centers. We then study the essential characteristics of cloud services and their models; introduce the architecture, standards of Software Defined Networks (SDN) and its virtualization infrastructure; and introduce Apache Hadoop – an open source framework that supports distributed processing of large data sets across clusters of computers that can scale up from a single server to thousands of machines. We also briefly introduce different types of data processing that may be performed in the Cloud or a data center, as well as the scheduling of resources in the Cloud infrastructure. Time permitting, we will also examine security issues raised in Clouds and data center networks .


NET 3004/PLT 3010 Data Structures

Specification and design of abstract data types and their implementation as stacks, queues, trees, tables and graphs. Common and useful examples. Parsing and finite state machines. Analysis of algorithms, recursion, re-entrance. Special focus: abstraction, interface specification and hierarchical design using object-oriented programming.


NET 3006 Network Management and Measurement

Network management fundamentals, standards, and protocols. The Simple Network Management Protocol (SNMP). Structure of Management Information and MIB. SNMP management challenges and the need for real-time measurements. Introduction to tools and applications for network measurements and monitoring.


 BIT 2000 Multimedia Data Management

Concepts and fundamentals of database systems. Design of relational databases, normalisation, referential integrity, structured query language (SQL), server-side scripting, organisation of multimedia content, dynamic page loading, storage and compression of media, media network considerations, digital watermarking and rights management.



Course offered at UOIT


CSCI 5350 G Pervasive & Mobile ComputingPervasive & Mobile Computing

This course will prepare students to conduct research in the fields of pervasive and mobile computing, including wireless sensor networks, vehicular ad hoc networks, algorithm design and analysis. Students will be given the techniques and tools to evaluate research papers, how to read such papers critically and efficiently, ad how to present research papers. Students will also gain an understanding of a new field within the broader area of pervasive and mobile computing.


INFR 4320 U Artificial Intelligence for Gaming (Using C++)

digital-gamingThis course introduces the topic of Artificial Intelligence (AI) in the context of gaming. The relevance of traditional AI architectures, as well as more recent ones is explored across different categories of games. Topics include: rule-based systems, state-based modeling, neural networks, and autonomous agents (e.g., for automated steering). Special attention is given to the creation of computer-generated behavior that makes for ‘worthy’ opponents and ‘good’ gaming.


BUSI3504U: Databases and Business Intelligence

This course presents the techniques and tools used to manage databases and Databases and Business Intelligenceconduct basic business intelligence gathering and analysis. Students are introduced to topics such as normalization, SQL, importance of business intelligence (operational, tactical, and strategic), database security, and developing business intelligence reports. The importance of all forms of business intelligence are examined. The course also offers a basic introduction to data analysis techniques such as cluster analysis, association detection, and time-series analysis. Using interactive techniques and case studies, students will be able to apply database management and business intelligence theories and practices.


INFR 4310 U Social Network Games

This course explores social games throughout recent history with a specific emphasis in their success within the past Social Network Gamesyears. The course aims at dissecting real-world examples of social games and analyzing them both from a game design aspect as well as a business aspect. Other social games in the past history are also explored, discussed, and evaluated. Additionally, students are encouraged to understand the different methods that can bring success to social games as well as what it takes for a game to be truly social. During the course, the most up-to-date social network games development techniques such as HTML 5 Canvas, Database Systems (MySQL) and Websocket are also briefly introduced. The knowledge discussed in this class will provide students with sound fundamentals for understanding and creating social games in the game industry (which is highly sought out in current employment context of the game industry).


INFR 4310 U Multiplayer & Online Game DevelopmentMultiplayer & Online Game Development

This course delves into the specificities of online and multiple player games (MMOGs). With respect to the design aspects of MMOGs, topics include: a history of MMOGS, designing virtual worlds, life in a virtual world, and game Systems. With respect to the engineering aspects of MMOGs, topics include: network programming, architectures for MMOGs, design issues on the client and on the server side, testing of MMOGs and security issues.


INFR 3330 U Game Design and Production II

Game Design and Production IIThis course focuses on the categorization of the elements of computer games, as well as on their documentation and testing. In order to achieve the two latter, the Unified Modeling Language (UML) is introduced, as well as some of the relevant design patterns. Topics include: the gaming industry, who plays and why, storytelling, characters, game-play, play testing and post-mortems, ethics, and an overview of game production.


INFR 3830 U Distributed System and NetworkingDistributed System and Networking

The following topics are introduced in this course:
Network history and architectures; OSI reference model: descriptions, examples and applications; Routing, multicast deliver; TCP/IP protocol suite; Socket Programming; Distributed systems; QoS; Network Security.


INFR 3810 U Database Systems

This course introduces the field of database systems. Topics include general concepts of database management Database Systemssystems, the entity/relational data model, the relational model, relational algebra, the structured query language (SQL), theory and practice of database design, constraints, transaction management, security issues. The students learn how to (i) work with and extract information from large, changing data sets; (ii) use databases when programming applications. To help with this learning process, the relational database management system (RDBMS) used is MySQL. In addition, if time permits, one or two more advanced topics in databases will be covered, e.g., data mining, data visualization, and Web applications with back-end databases.


BUSI/INFR 2550 U Information Technology Project ManagementInformation Technology Project Management

This course focuses on Information Technology (IT) projects and applies basic project management theory to such projects. It introduces the concepts and tools that are appropriate for each phase of the project life cycle. It also incorporates topics outlined in the Project Management Institute’s Project Management Body of Knowledge (PMBOK) into the basic concepts associated with information systems management.



Courses offered at Algonquin College


GAM 1514 Game Development III (Using C++)

The course advances the student’s knowledge in designing and programming gaming applications. Students in this    Game Development III (Using C++)course will gain a basic understanding of object-oriented modeling using UML and an intermediate practical understanding of the theory and principles of object-oriented programming (OOP).
Students will advance their study of the C++ programming language and participate in an iterative team-based project. This course will also further the student’ s understanding in game design concepts.


GAM 1532 Game Development IV (Using C++)

The course advances the students’ knowledge in designing and programming gaming applications. Students in this course will gain an advanced practical understanding of the theory and principles of object-Game Development IV (Using C++)oriented programming (OOP). Students will advance their study in the C++ programming language and participate in team-based and individual projects. Students will receive significant instruction in game AI programming, game patterns and other Software Engineering principles.


GAM 1505 Hardware, OS and Networking for Game Development

Hardware, OS and Networking for Game DevelopmentGame developers develop applications for a variety of platforms, operating systems and networks. Students will learn about the components of PC/Mac, technical specifications, and industry standards. Introduction on the following operating systems will be given during the course:Linux/Unix; DOS; MS Window X, and the Mac operating systems. Hardware topics include the following components on PCs: CPUs, motherboards, video cards, sound cards, memory, hard drives, floppy drives, CD- and DVD-ROM drives, SCSI devices. Also several main game consoles will be introduced to the students: PS2, Xbox, Wii, Game Cube, Peer-to-peer computer networking concepts, network cabling, Local Area Networking (LAN), network interface cards, topology, hubs, types of networks, and Wireless Home Networking will also be covered.