Areas of Concentration
Table I – Computing Science Concentrations |
See sample concentration graduation planners here. |
Artificial Intelligence |
CMPT310 | Introduction to Artificial Intelligence | |
CMPT340 |
Biomedical Computing |
|
CMPT411 |
Knowledge Representation |
|
CMPT412 |
Computational Vision |
|
CMPT413 |
Computational Linguistics |
|
CMPT414 |
Model-Based Computer Vision |
|
CMPT417 |
Intelligent Systems |
|
CMPT418 |
Computational Cognitive Architecture |
|
CMPT419 |
Special Topics in Artificial Intelligence |
Computer Graphics and Multimedia |
CMPT361 |
Introduction to Computer Graphics |
Computer Graphics and Multimedia. With the rise in popularity of visual interfaces and particularly multimedia systems, the demand for expertise in this area has greatly increased. Topics include graphical interfaces, modeling, rendering, animation, visualization, and multimedia design. |
CMPT363 |
User Interface Design |
|
CMPT365 |
Multimedia Systems |
|
CMPT461 |
Image Synthesis |
|
CMPT464 |
Geometric Modeling in Computer Graphics |
|
CMPT466 |
Animation |
|
CMPT467 |
Visualization |
|
CMPT468 |
Introduction to Computer Music Theory and Sound Synthesis |
|
CMPT469 |
Special Topics in Computer Graphics |
Computing Systems
CMPT300 |
Operating Systems I |
Computing systems is the foundation of every computing environment--operating systems, data communication, and distributed networks and as such, industry continues to place a priority on knowledge of computing systems. The rapid growth of the Internet has provided new opportunities for graduates with a strong background in systems. |
CMPT305 |
Computer Simulation and Modeling |
|
CMPT371 |
Data Communications and Networking |
|
CMPT379 |
Principles of Compiler Design |
|
CMPT401 |
Operating Systems II |
|
CMPT403 | System Security and Privacy | |
CMPT431 |
Distributed Systems |
|
CMPT432 |
Real-time Systems |
|
CMPT433 |
Embedded Systems |
|
CMPT471 |
Networking II |
|
CMPT479 |
Special Topics in Computing Systems |
|
CMPT499 |
Special Topics in Computer Hardware |
Information Systems
CMPT301 |
Information Systems Management |
This area embraces software engineering and database systems design, and provides the academic preparation necessary for the efficient and effective development of large software products and the design and management of computer information systems. |
CMPT354 |
Database Systems I |
|
CMPT370 |
Information System Design |
|
CMPT441 |
Computational Biology |
|
CMPT454 |
Database Systems II |
|
CMPT456 |
Information Retrieval and Web Search |
|
CMPT459 |
Special Topics in Database Systems |
|
CMPT470 |
Web-based Information Systems |
|
CMPT474 |
Web Systems Architecture |
Programming Languages and Software
CMPT373 |
Software Development Methods |
New languages continue to be developed to provide more effective tools for the implementation of software products. The increased size and complexity of many solutions requires better languages and supporting software to make practical their realization as commercial products. |
CMPT375 |
Mathematical Foundations in Software Technology |
|
CMPT383 |
Comparative Programming Languages |
|
CMPT384 |
Symbolic Computing |
|
CMPT473 |
Software Quality Assurance |
|
CMPT475 |
Software Engineering II |
|
CMPT477 |
Introduction to Formal Verification |
|
CMPT480 |
Foundations of Programming Languages |
|
CMPT481 |
Functional Programming |
|
CMPT489 |
Special Topics in Programming Languages |
Theoretical Computer Science
CMPT307 |
Data Structures and Algorithms |
This area focuses on mathematical tools and techniques for the formal analysis of computer algorithms. It provides the mathematical basis for classifying the difficulty of solving problems and for demonstrating the correctness of solutions. |
CMPT308 |
Computability and Complexity |
|
CMPT404 |
Cryptography and Cryptographic Protocols |
|
CMPT405 |
Design and Analysis of Computing Algorithms |
|
CMPT406 |
Computational Geometry |
|
CMPT407 |
Computational Complexity |
|
CMPT408 |
Theory of Computing Networks/Communications |
|
CMPT409 |
Special Topics in Theoretical Computing Science |
|
MACM300 |
Introduction to Formal Languages and Automata with Applications |
Elective Courses
Table II – Currently no courses. |
Table III – Computing Mathematics Courses |
|
MACM316 |
Numerical Analysis I |
MACM401 |
Introduction to Computer Algebra |
MACM442 |
Cryptography |
MATH308 |
Linear Optimization |
MATH340 | Algebra II: Rings and Fields |
MATH343 | Applied Discrete Mathematics |