Introduction to computing and programming for non-computer science majors. This course introduces the student to computers and the mind set of...
This course will discuss why computers and computation are ubiquitous in our world and the implications of that ubiquity, including security, gaming,...
This course presents the concepts and applications of component-based Web programming. Part 1 of the course covers the creation of Web pages to hold...
Introduction to O/S (system calls, iterrupts, synchronous and asynchronous traps, O/S structure), using processes (process communication and...
An advanced overview of computer architecture and organization. A study of the relationship between software and hardware and how this affects the...
An introductory course in the design and implementation of autonomous vehicles. Topics will include the nature of autonomy and autonomous behaviour....
Transformations of Relational to Network and Hierarchical Models and vice versa. Embedded DB languages, Concurrency Control, Recovery Procedures,...
This course introduces the concepts of human-computer interaction and usability testing. Topics include: human information processing, usability...
This course introduces students to scanning and parsing and the theory of computation that supports these activities. Topics include: regular...
Order notations, the greedy method, job scheduling, correctness, exchange argument, divide and conquer techniques, recurrence equations, the master...
Multimedia data is becoming increasingly important in many scientific and commercial arenas. In this course, students will be introduced to principles...
This course is a follow up to CPS 530. In it, students will learn advanced techniques for designing and building the active web pages. Topics include:...
History and examples of computer crime. Security policies and mechanisms. Access control models. Implementation and usability issues. Physical...
Internet, the network edge, the network core, delay, loss and throughput, protocol layers. Application Layer: principles of network applications, web....
This course introduces the topics of verification and validation of computer software. Material covered may include statistical and functional...
Introduction to modern compiler design: theory, techniques, and tools. Students will develop an interpreter or compiler. Assembler and preprocessors...
The notion of secure communication. Classical cryp
Introduction to issues involved in managing large, complex software projects. Introduction to industry-standard project management techniques and...
Advanced Internet routing algorithms (inter-AS routing, broadcast and multicast routing, switch design). Advanced data link layer topics (virtual...
This course provides introduction to several important AI problems and techniques, including knowledge representation and reasoning, constraints...