|CS5725||Artificial Neural Systems||3 ch|
|CS5865||Data Networks||3 ch|
|CS5905||Topics in Theory of Computing||3 ch|
|CS6003||Research Methods for Computer Science||1 ch|
|CS6025||Parallel Distributed Processing II||3 ch|
|CS6035||Parallel Distributed Processing II||3 ch|
|CS6045||Software Process||3 ch|
|CS6055||Software Engineering||3 ch|
|CS6065||Interactive Human-Centered Systems||3 ch|
|CS6075||Software Architecture||3 ch|
|CS6095||Internet Software Development||3 ch|
|CS6102||Numerical Linear Algebra||3 ch|
|CS6145||Parallel Numerical Algorithms||3 ch|
|CS6345||Spatial Data Structures||3 ch|
|CS6355||Cryptanalysis and Database Security||3 ch|
|CS6365||Computational Geometry||3 ch|
|CS6375||Linear Programming||3 ch|
|CS6411||Fundamental of Information Assurance||3 ch|
This course gives an introduction into information assurance, describes the vulnerabilities of IT infrastructures, as well as security threats faced by enterprises today. Based on the basic principles and strategies of information assurance, the course will also examine risk management, the development of security policies, guidelines, awareness programs, employment practice and policies, legal and ethical issues, as well as auditing IT security. It covers broad topics including contemporary issues in computer security, sources of computer security threats and appropriate reactions, encryption and decryption techniques; secure encryption systems; program security algorithms, trusted operating systems; database security issues and solutions, network and distributed system security models, administering security. In all listed topics the legal and ethical security issues with respect to information assurance is also given.
|CS6413||Foundations of Privacy||3 ch|
This course covers diverse topics on privacy preservation including basic cryptographic techniques for privacy, homomorphic encryption techniques for privacy, database privacy, big data privacy, privacy in cloud, privacy in crowdsourced platforms, privacy in healthcare, privacy in vehicular ad hoc networks, privacy in social network, and location privacy. In addition, privacy law and regulation will be also discussed. The emphasis of this course is given on both theoretical aspects and practical applications of privacy enhancing techniques.
|CS6415||Network Security||3 ch|
This course examines advanced topics in network security, including: security risks and threats, security mechanisms across OSI model layers. Students will study the analysis of systems for vulnerabilities, the implementation of security procedures and the monitoring of systems forsecurity breaches. Wireless network security will also be introduced.
This course sits at the intersection of computer security and software engineering. It is designed to give students practical experience with building a software system and securing it. It covers tools, guidelines, rules, principles, and other resources for addressing security issues in every phase of the software development life cycle (SDLC). Students will engage in a significant group-programming project to develop a novel piece of software. Emphasis will be placed on the correctness and robustness of software, and on security as part of the software engineering process.
Prerequisites: INFO2403 and CS2043, or approval of the instructor.
This course introduces digital forensics notions and methods. Students will gain a basic understanding and legal awareness of computer security and forensics, techniques used in the evidentiary process, various methodologies intrinsic to computer forensics with emphasis on computer incident response, and IT systems protection.
|CS6495||Cybersecurity Capstone Project||3|
|CS6545||Big Data Systems||3 ch|
|CS6585||Database Foundations||3 ch|
|CS6605||Operating Systems||3 ch|
|CS6705||Foundations of Artificial Intelligence||3 ch|
|CS6715||Functional-Logic Programming||3 ch|
|CS6725||Introduction to Automated Reasoning||3 ch|
|CS6735||Machine Learning and Data Mining||3 ch|
|CS6745||Multi-agent Systems||3 ch|
|CS6748||Decision - Theoretic Agents||3 ch|
|CS6765||Natural Language Processing||3 ch|
|CS6785||User Modeling||3 ch|
|CS6795||Semantic Web Techniques||3 ch|
|CS6805||Logic Synthesis||3 ch|
|CS6812||Digital Systems Logic||3 ch|
|CS6865||Principles of Data Communications and Networks Modelling||3 ch|
|CS6875||Hardware/Software Co-Design||3 ch|
|CS6885||Embedded Systems||3 ch|
|CS6895||Wireless Networking and Mobile Communications||3 ch|
|CS6905||Advanced Topics in Computer Science||3 ch|
Foundational course in the theory of computation, covering what is possible with different types of computational resources. Topics include automata, Turing machines, nondeterminism, reductions, decidability and undecidability, the limits of time and space resources, and complexity class hierarchies.
|CS6925||Patter Recognition||3 ch|
|CS6945||Image Processing||3 ch|
|CS6955||Computer Graphics||3 ch|
|CS6985||Computational Biology||3 ch|
|CS6991||Algorithm Analysis||3 ch|
|CS6993||Internship Course||6 ch|
The course contains both an educational and an R&D component. Both components must be closely related to the student's research topic and are contained in a work plan which is to be approved by the Director of Graduate Studies and by the Dean of Computer Science if paid contract work is involved. Any restrictions, such as confidentiality requirements, intellectual property and copyright of the report must be clearly identified and agreed to. This course carries 6 ch. Prerequisites: Master by Report program only. Students with supervisor and approved proposal.
|CS6995||Master' Project||9 ch|
|CS6996||Master's Report||9 ch|
|CS6997||Master's Thesis||18 ch|
|CS6999||Directed Studies||3 ch|