Imagine a university that does more than just prepare you for a career—one that equips you to set the foundation for a full and meaningful life
Find all the information you need about joining a community committed to helping you explore bigger ideas about who you are, what you believe, and what you're called to do in the world
Explore our undergraduate and graduate degree programs to discover a learning community passionate about helping you thrive on your academic and professional journey
Experience a vibrant student community filled with new friends, lifelong memories, and lots of opportunities for getting plugged in and experiencing the best of university life
Learn more about our Spartans athletics programs, and discover how we equip our student-athletes for life with the Complete Champion Approach™
Discover a dynamic community of teachers, scholars, and researchers producing new knowledge and innovation that is having a positive impact for the good of the world and the glory of God
Find out the latest news and events taking place within the life of the community, and discover how our students, alumni, faculty, and staff are making a positive difference in the world
Imagine a university that does more than just prepare you for a career—one that equips you to set the foundation for a full and meaningful life
Discover how you can actively participate in our global community of more than 30,000 engaged and connected alumni from around the world
Imagine a university that does more than just prepare you for a career—one that equips you to set the foundation for a full and meaningful life
A summary of each course to help with your selection.
Course ID
Course
CMPT 340
CMPT 340
Discrete Structures and Computing
Course Credits: 3
This is a second course in the topics of pure mathematics, particularly those most commonly used in the study of computing science and related applications. It includes proof techniques, models of computation, formal languages, analysis of algorithms, trees and advanced general graph theory with applications, finite state and automata theory, encryption, and an elementary introduction to mathematical structures such as groups, rings, and fields.
Cross-listed: MATH 340
Prerequisite(s): CMPT 150 or MATH 150.
NB: Not offered every year. See department chair
CMPT 345
CMPT 345
Simulation and Modeling
Course Credits: 3
This course is designed to give students the ability to analyze, formulate, and program problems related to discrete simulation methods. The course introduces students to queuing theory and some commonly used continuous and discrete statistical distributions. By the end of the course, students are able to simulate real world computer systems and industrial manufacturing systems.
Prerequisite(s): CMPT 166 and 231.
CMPT 360
CMPT 360
Comparative Programming Languages
Course Credits: 3
The history, development, and design principles for programming notations. The design and internal operations of the major notational categories are examined in detail. Students are expected to become proficient in at least four languages they have not previously learned, typically chosen from historical, modern working, and cutting edge languages and from among such (non-exclusive) categories as Algol-descended, functional, scripting, Web-based, modular, application-specific, visual, and object oriented. They will also learn how to select appropriate programming notations for a given project. Programming will be undertaken in at least three OS environments.
Prerequisite(s): CMPT 140, 166 and 231. (3-0)
NB: Not offered every year. See department chair
CMPT 370
CMPT 370
Computer Graphics
Course Credits: 3
This course introduces the fundamentals of computer graphics and principles of raster image generation. Topics include: graphics primitives, coordinate systems, transformations, rendering techniques, and geometric modelling.
Prerequisite(s): CMPT 150, 166, 231; MATH 250. (3-0)
NB: Not offered every year. See department chair
CMPT 375
CMPT 375
Human-Computer Interaction Design
Course Credits: 3
This course provides a general introduction to interaction design from a human-computer interaction perspective. Students will learn both theoretical and practical concepts of human-computer interaction which will help them discover requirements, design/prototype and evaluate interactive products with usability and user experience (UX) goals. The course covers human capabilities, design principles, prototyping techniques, implementation, and evaluation techniques for interactive products. Students will apply what they learn from lectures to actual challenges of interactive product design, prototyping, implementation, and evaluation.
Prerequisite(s): CMPT 166, 231 (3,0)
CMPT 380
CMPT 380
Artificial Intelligence
Course Credits: 3
Artificial Intelligence: knowledge representation, logic programming, knowledge inference. Application domains within the discipline of Artificial Intelligence include logical and probabilistic reasoning, natural language understanding, vision and expert systems.
Prerequisite(s): CMPT 150, 166, 231 (3-0)
NB: Not offered every year. See department chair
CMPT 382
CMPT 382
Machine Learning
Course Credits: 3
An overview of core machine learning technologies with motivating applications from a variety of disciplines and real‐world data sets. Students will learn how to implement, evaluate, and improve machine learning algorithms. While studying best practice in machine learning, students are introduced to data mining and statistical pattern recognition and learn how to build automatic analytical models. Topics include identification and extraction of useful features that best represent available data, some of the most important machine learning algorithms, and the evaluation of algorithm performance.
Prerequisite(s): CMPT 166, 231; or with permission of instructor. (3-0)
CMPT 385
CMPT 385
Introduction to Software Engineering
Course Credits: 3
An introduction to the theory of designing and carrying out large software projects. All stages of the software engineering cycle, including requirement analysis, design, implementation, testing, and maintenance will be examined. The student will complete a semester-long team based project.
Prerequisite(s): CMPT 150, 166, and 231. (3-0)
NB: Not offered every year. See department chair
CMPT 386
CMPT 386
Software Engineering II
Course Credits: 3
This course will study advanced techniques, tools, and standards in software engineering. The student will complete a semester-long team based project