CSC - Computer Science

CSC 0995 Co-op or Internship in Computer Science Cr. 0

Review of computer science practical experiences resulting from participation in coop/internship program. Offered Every Term.

CSC 1000 Introduction to Computer Science Cr. 3

Provides an overview of current computing technology, organization, and use. Topics surveyed include data representation and storage, hardware and software organization, communications technologies, ethical and security issues. Provides hands-on training in common application software, such as word processing, spreadsheets, presentation, as well as in electronic telecommunications, such as e-mail, Internet and database searches. The University database and Internet pages are emphasized. Offered Every Term.

Course Material Fees: $35

CSC 1002 Personal Digital Security Cr. 3

Students learn how to reduce exposure to risks and how to identify, assess and repair infected devices. Offered Every Term.

CSC 1050 Introduction to C and Unix Cr. 2

Introduction to Unix, Unix editor, and C Programming Language. Unix development tools and fundamentals of C language discussed. No credit for computer science students after CSC 1100. Offered Every Term.

Prerequisites: MAT 1800-6999 with a minimum grade of C

Course Material Fees: $35

CSC 1100 Problem Solving and Programming Cr. 4

Problem solving with algorithms, and their realization as computer programs using a structured, general purpose programming language; data types, operators, expressions, assignment, input and output, selection and repetition control structures; modularity and procedural abstraction using functions with parameters; structured data types, arrays, pointers and strings. No credit after CSC 2000. Offered Every Term.

Prerequisites: BE 1600 with a minimum grade of C-

Course Material Fees: $35

CSC 1500 Fundamental Structures in Computer Science Cr. 4

Introduction to fundamental control and data structures in computer science such as algorithms and complexity; recursive algorithms; program correctness using the predicate calculus; reasoning about algorithms using mathematical induction; divide and conquer algorithms; recurrence relations; set properties and their computation; and computing with relations. Graph properties and their computation, and tree properties and their computation, will be covered if time permits. Offered Every Term.

Prerequisites: CSC 1100 with a minimum grade of C, CSC 1101 with a minimum grade of C, and MAT 2010 with a minimum grade of C-

Restriction(s): Enrollment is limited to students with a major, minor, or concentration in Computer Technology, Computer Science, Computer Science Honors , Computer Technology Honors, Information Systems Technology or Information Technology.

Course Material Fees: $35

CSC 2000 Introduction to C++ Programming Language Cr. 3

Elements of C++; arrays, pointers and references; operators; classes and objects. No credit after CSC 1100 and CSC 1101. Offered Every Term.

Prerequisites: MAT 1800 with a minimum grade of C-, MAT Permit to Reg ACT/SAT with a test score minimum of 4, Math Permit to Reg - (L1-L4) with a test score minimum of 4, or MAT 2010 with a minimum grade of C-

Course Material Fees: $35

CSC 2110 Computer Science I Cr. 4

Rigorous introduction to fundamental object-oriented concepts and techniques of computer programming using an object-oriented language. Introduction to data abstraction; design of abstract data types. Introduction to recursion; programming with generic data types; inheritance; polymorphism; and exception handlers. Concepts applied to console programs and event-driven programming using a simple graphics API. Offered Every Term.

Prerequisites: CSC 1100 with a minimum grade of C, CSC 1101 with a minimum grade of C, and MAT 2010 with a minimum grade of C-

Restriction(s): Enrollment is limited to students with a major, minor, or concentration in Computer Technology, Computer Science, Computer Science Honors , Computer Technology Honors, Information Systems Technology or Information Technology.

Course Material Fees: $35

CSC 2200 Computer Science II Cr. 4

Design and implementation of fundamental abstract data types of computer science (such as stacks, queues, trees, lists, hashing, and graphs), using an object-oriented language. Programming requirements include the implementation of abstract data types using arrays and dynamic links; recursion; sorting and searching; hashing; and string processing. Introduction to algorithm analysis. Offered Every Term.

Prerequisites: (CSC 1500 with a minimum grade of C and CSC 1501 with a minimum grade of C), (CSC 2110 with a minimum grade of C and CSC 2111 with a minimum grade of C), MAT 2010 with a minimum grade of C-, and BE 1200 with a minimum grade of C-

Course Material Fees: $35

CSC 3010 Ethics in Computer Science Cr. 3

Students will study the ethical and legal issues that arise with the usage and development of computing technology. Students will learn the responsibilities of the computer professionals and how to make appropriate decisions when faced with legal and ethical issues in computing. Offered Every Term.

Prerequisites: CSC 2110 with a minimum grade of C and CSC 2111 with a minimum grade of C

CSC 3020 Java Programming Cr. 3

Introduction to the fundamentals of programming using Java. Topics include: object-oriented programming, classes, constructors, flow control statements, data types, methods, inheritance, data hiding, abstraction, exceptions, file I/O, Java GUI, and Java packages. Offered Fall, Winter.

Prerequisites: (MAT 1800 with a minimum grade of C-, MAT 2010 with a minimum grade of C-, or MAT 2020 with a minimum grade of C-), CSC 2110 with a minimum grade of C, and CSC 2111 with a minimum grade of C

CSC 3100 Computer Architecture and Organization Cr. 4

Organization and architecture of computer systems. Topics include: digital logic and digital systems; machine-level representation of data and programs; assembly level machine organization and programming; register-level description of computer execution and the functional organization of a computer; role and function of programming languages, libraries and operating systems; performance evaluation; systems programming. Offered Every Term.

Prerequisites: CSC 2200 with a minimum grade of C, CSC 2201 with a minimum grade of C, and MAT 2010 with a minimum grade of C-

Course Material Fees: $35

CSC 3110 Algorithm Design and Analysis Cr. 3

Formal techniques to support design and analysis of algorithms: underlying mathematical theory and practical considerations of efficiency. Topics include asymptotic complexity bounds, techniques of analysis, algorithmic strategies, advanced data and file structures, and introduction to automata theory and its application to language translation. Offered Fall, Winter.

Prerequisites: BE 2100 with a minimum grade of C-, CSC 2200 with a minimum grade of C, CSC 2201 with a minimum grade of C, MAT 2250 with a minimum grade of C-, and MAT 2020 with a minimum grade of C-

CSC 3200 Programming Languages Cr. 3

History and overview of programming languages, virtual machines, representation of data types; sequence control; data control, sharing and type checking; run-time storage management; language translation systems; programming language semantics; programming paradigms. Offered Yearly.

Prerequisites: CSC 2200 with a minimum grade of C-, CSC 2201 with a minimum grade of C-, and MAT 2010 with a minimum grade of C-

CSC 3400 Human-Computer Interaction Cr. 3

User interface design, usability, evaluation, user-centered design. Offered Intermittently.

Prerequisites: CSC 2110 with a minimum grade of C and CSC 2111 with a minimum grade of C

Course Material Fees: $10

CSC 3750 Introduction to Web Technology Cr. 3

Understanding the Internet using several access methods; required software and tools. Topics include: e-mail, FTP, Telnet, Gopher, Archie, Newsgroups, WWW, HTML, CGI and PHP scripting and how to create an active web site. Laboratory exercises required. No credit after CSC 5750. Offered Fall, Winter.

Prerequisites: CSC 1100 with a minimum grade of C and CSC 1101 with a minimum grade of C

CSC 4110 Software Engineering Cr. 4

Software life cycle; software requirement analysis; software system design; software implementation and testing; software maintenance; team programming; ethics and programmers. Offered Fall, Winter.

Prerequisites: CSC 2200 with a minimum grade of C, CSC 2201 with a minimum grade of C, CSC 3020 with a minimum grade of C-, and (MAT 2010 with a minimum grade of C- or MAT 3430 with a minimum grade of C-)

Course Material Fees: $45

CSC 4290 Introduction to Computer Networking Cr. 3

Introduction of topics such as network architecture, multiple access control, packet switching, routing and flow control, congestion control and quality-of-service, Internet protocols, and elements of distributed computing. Offered Yearly.

Prerequisites: CSC 2200 with a minimum grade of C-, CSC 2201 with a minimum grade of C-, CSC 3100 with a minimum grade of C-, and CSC 3101 with a minimum grade of C-

Restriction(s): Enrollment is limited to Undergraduate level students.

CSC 4310 IT Software Management Cr. 3

Covers 12 disciplines of systems management in the approximate order in which they became prevalent and integral to an infrastructure’s operation. In doing so, it will cover the people, process, and technology aspects of systems management. The people discussion shows the importance of executive support, customer service, and other management aspects of delivering and supporting IT services. The process issues of systems management are addressed through study of IT infrastructure library (ITIL) processes. The technology aspect covers several key developments that enable these disciplines to be implemented more productively including process automation. Offered Yearly.

Prerequisites: CSC 2110 with a minimum grade of C and CSC 2111 with a minimum grade of C

CSC 4320 Systems Administration Cr. 3

Deployment and maintenance of modern computer systems in an operational environment. Conceptual knowledge and practical experience. Topics include: architectures, heterogeneous systems, authentication and security, network services including firewalls, storage services, performance analysis and tuning, management and configuration of services and system resources, system initialization, drivers, cross-platform services, policies and procedures. Offered Yearly.

Prerequisites: CSC 2110 with a minimum grade of C and CSC 2111 with a minimum grade of C

CSC 4330 Mobile Application Development Cr. 3

Covers the primary aspects of application development for mobile devices running the Android operating system. Offered Yearly.

Prerequisites: CSC 2110 with a minimum grade of C, CSC 2111 with a minimum grade of C, and CSC 3020 with a minimum grade of C-

CSC 4420 Computer Operating Systems Cr. 4

Operating system services; file systems; CPU scheduling; memory management; virtual memory; disk scheduling; deadlocks; concurrent processes. Offered for undergraduate major credit only. Offered Fall, Winter.

Prerequisites: CSC 2200 with a minimum grade of C, CSC 2201 with a minimum grade of C, CSC 3100 with a minimum grade of C-, and CSC 3101 with a minimum grade of C-

Course Material Fees: $35

CSC 4500 Introduction to Theoretical Computer Science Cr. 3

Finite automata and regular expressions; context-free grammars; pushdown automata; Turing machines; hierarchy of formal languages and automata; computability and decidability. Offered Fall, Winter.

Prerequisite: (CSC 2200 with a minimum grade of C and CSC 2201 with a minimum grade of C and MAT 2010 with a minimum grade of C-) or (CSC 5050 with a minimum grade of C and MAT 2010 with a minimum grade of C-)

CSC 4710 Introduction to Database Management Systems Cr. 3

Topics include: database concepts, ER modeling, schemas and constraints, SQL and relational algebra, web-based database applications, triggers and views, physical organization and indexing, query processing, query optimization, NoSQL databases. Offered Fall, Winter.

Prerequisites: CSC 2200 with a minimum grade of C, CSC 2201 with a minimum grade of C, and CSC 3020 with a minimum grade of C-

CSC 4990 Directed Study Cr. 1-4

Individual study as agreed on by student and supervising faculty. Primarily for material not covered in regular courses. Offered Every Term.

Restriction(s): Enrollment is limited to Undergraduate level students.

Repeatable for 8 Credits

CSC 4992 Special Topics in Computer Science Cr. 1-3

Topics to be announced in the Schedule of Classes. Maximum of six credits may be applied toward satisfying the computer science elective, in any computer science degree program. Offered Yearly.

Prerequisite: CSC 2110 with a minimum grade of C and CSC 2111 with a minimum grade of C

Course Material Fees: $35

Repeatable for 12 Credits

CSC 4995 Professional Practice in Computer Science Cr. 1

Review of computer science practical experiences resulting from participation in the cooperative work-study program. Offered Every Term.

Restriction(s): Enrollment limited to students with a class of Junior or Senior.

Repeatable for 4 Credits

CSC 4996 Senior Capstone Project Cr. 4

Satisfies General Education Requirement: Writing Intensive Competency

Development of skills for planning, managing, implementing, and documenting complex software projects. Project management techniques; software development teams; data management, privacy, and security. Offered Fall, Winter.

Prerequisites: CSC 4110 with a minimum grade of C-, CSC 4111 with a minimum grade of C-, and CSC 4710 with a minimum grade of C-

Restriction(s): Enrollment limited to students with a class of Senior; enrollment is limited to students with a major in Computer Science, Computer Science Honors or Information Systems Technology.

Course Material Fees: $35

CSC 4999 Honors Thesis Cr. 3-6

Independent study under supervision. Offered Every Term.

Restriction(s): Enrollment limited to students with a class of Senior.

CSC 5050 Algorithms and Data Structures Cr. 4

Introduction to problem solving methods and algorithm development; data abstraction for structures such as stacks, queues, linked lists, trees, and graphs; searching and sorting algorithms and their analysis. Not for CSC major credit. Offered for graduate credit only. Offered Every Term.

Restriction(s): Enrollment is limited to Graduate level students.

Equivalent: ECE 4050

CSC 5100 Introduction to Mobility Cr. 3

Introduces mobility through giving students a comprehensive understanding of state-of-the-art engineering practices used in the autonomous vehicle industry. Students will get to interact with real data sets from an autonomous vehicle, all through hands-on projects using the open source autonomous driving simulator. Students will hear from industry experts, who work at companies like Ford and GM as they share insights about autonomous technology and how that is powering job growth within the field. Students will also be introduced to the general terminology, design considerations and smart infrastructures on mobility. Offered Winter.

Prerequisites: CSC 3100 with a minimum grade of C- and CSC 3110 with a minimum grade of C-

CSC 5250 Network, Distributed, and Concurrent Programming Cr. 3

Fundamental concepts and skills of developing networked, distributed, and concurrent applications. Topics include: inter-process communication, TCP/IP sockets programming, remote method invocation, multithreading, concurrency and synchronization. Offered Yearly.

Prerequisites: CSC 4420 with a minimum grade of C- and CSC 4421 with a minimum grade of C-

CSC 5270 Computer Systems Security Cr. 3

Fundamental technologies for enabling an e-society which is more predictable, more accountable, and less vulnerable to attacks. Covers three components: security requirements and protocols, cryptography algorithms, and case studies. Offered Fall.

Prerequisites: CSC 5250

CSC 5272 Principles of Cyber Security Cr. 3

Addresses the broad range of industry best practices, knowledge, and skills expected of an IT security manager or officer. Students will learn both the theory and the requirements for practical implementation of core security concepts, practices, monitoring, and compliance. Students will also learn to identify and maintain cost-effective security controls that are closely aligned with business requirements and industry standards. Offered Yearly.

Prerequisites: CSC 2200 with a minimum grade of C- and CSC 2201 with a minimum grade of C-

CSC 5280 Introduction to Cyber-Physical Systems Cr. 3

Topics include: modeling, design, analysis, and implementation of cyber-physical systems; dynamic behavior modeling, state machine composition, and concurrent computation; sensors and actuators; embedded systems and networks; feedback control systems; temporal logic and model checking. Offered Fall, Winter.

Prerequisites: CSC 3100 with a minimum grade of C- and CSC 3110 with a minimum grade of C-

Restriction(s): Enrollment limited to students in the College of Engineering.

Equivalent: ECE 5280

CSC 5290 Cyber Security Practice Cr. 3

Provides hands-on experience in playing with security software and network systems in a live laboratory environment, with the purpose of understating real-world threats. Focus will be on attacks (e.g., buffer overflow, heap spray, kernel rootkits, and denial of service), hacking fundamentals (e.g., scanning and reconnaissance), and defenses (e.g., intrusion detection systems and firewalls). Offered Winter.

Prerequisites: CSC 4420 with a minimum grade of C-

CSC 5430 Game Programming and Design I Cr. 3

Fundamentals of game programming and game design using C++, DirectX, Windows, and C#. Offered Fall.

Prerequisites: (CSC 2200 with a minimum grade of C and CSC 2201 with a minimum grade of C) or CSC 5250 with a minimum grade of C-

Corequisite: CSC 5431

CSC 5431 Game Programming and Design I: Lab Cr. 1

Laboratory for CSC 5430. Focus on modding, or making changes to existing programs to achieve specific results. Offered Fall.

Corequisite: CSC 5430

Course Material Fees: $25

CSC 5710 Design of Intelligent Information Retrieval Systems Cr. 3

Indexing retrieval models (vector space, probabilistic and language models); document classification models (Naive Bayes and SVM); topic models (PLSA and LDA) and learning-to-rank methods; course includes practical assignments and a team-based final project. Offered Yearly.

Prerequisites: CSC 5800 with a minimum grade of C-

CSC 5750 Principles of Web Technology Cr. 3

History and development of the world-wide web. Techniques for authoring static and dynamic content for the world-wide web. Web security techniques. Electronic commerce on the web. Lab exercises required. Offered Fall, Winter.

Prerequisites: MAT 2010 with a minimum grade of C- and CSC 3750 with a minimum grade of C-

CSC 5800 Intelligent Systems: Algorithms and Tools Cr. 3

Introduction to basic algorithms and software tools for intelligent data representation and analysis, including: data pre-processing, data exploration and visualization, model evaluation, predictive modeling, classification methods, association analysis, clustering, anomaly detection, representing extracted patterns as expertise, tools for data mining and intelligent systems such as WEKA, CLIPS, and MATLAB. Offered Intermittently.

Prerequisites: (CSC 2200 with a minimum grade of C, MAT 2010 with a minimum grade of C-, and CSC 2201 with a minimum grade of C) or (MAT 2010 with a minimum grade of C- and CSC 5050 with a minimum grade of C-)

CSC 5825 Introduction to Machine Learning and Applications Cr. 3

Through algorithmic investigation, brainstorming, and case analysis, students develop the skills and strategies that are necessary for effective leaning from data, including Big Data emerging from science and engineering. Offered Winter.

Prerequisites: CSC 3110 with a minimum grade of C-

CSC 5830 Computational Modeling of Complex Systems Cr. 3

Introduction to computer methods useful for modeling complex systems which are refractory to traditional methods of analysis. Emphasis on problem formulation and concrete examples drawn from computer science, engineering, chemistry, and biology. Offered Yearly.

Prerequisites: (CSC 2200 with a minimum grade of C and CSC 2201 with a minimum grade of C) or CSC 5050 with a minimum grade of C-

CSC 5870 Computer Graphics I Cr. 3

Graphics devices, graphics primitives, 2-D transformations, windowing and clipping, modeling 3-D objects, 3-D viewing transformations, hidden surface removal, shading and color. Offered Yearly.

Prerequisites: (CSC 2200 with a minimum grade of C, MAT 2250 with a minimum grade of C-, and CSC 2201 with a minimum grade of C) or (MAT 2250 with a minimum grade of C- and CSC 5050 with a minimum grade of C-)

CSC 5991 Special Topics in Computer Science Cr. 1-4

Topics to be announced in the Schedule of Classes. Offered Intermittently.

Prerequisites: CSC 2200 with a minimum grade of C and CSC 2201 with a minimum grade of C

Repeatable for 9 Credits

CSC 6110 Software Engineering Cr. 3

Software process models; advanced software system design; software project management; software analysis; testing and performance analysis; software maintenance; reverse engineering; software reuse; software metrics; object-oriented development. Offered Yearly.

Prerequisites: (CSC 2200 with a minimum grade of C, MAT 2010 with a minimum grade of C-, and CSC 2201 with a minimum grade of C) or (MAT 2010 with a minimum grade of C- and CSC 5050 with a minimum grade of C-)

CSC 6220 Parallel Computing I: Programming Cr. 4

Parallel computing concepts, examples of parallel computers, parallelism in algorithms / data / programs, experiences with state of the art parallel computers. Offered Yearly.

Prerequisites: 2 of (CSC 2200 with a minimum grade of C or CSC 2201 with a minimum grade of C) or 3 of (CSC 3100 with a minimum grade of C-, CSC 3101 with a minimum grade of C-, or CSC 5050 with a minimum grade of C-)

CSC 6280 Real-Time and Embedded Operating Systems Cr. 3

Operating system design for real-time and embedded systems. Focus on scheduling, synchronization, communication, and process and memory management for time-critical and resource-constrained applications. Offered Every Other Year.

Prerequisites: CSC 4420 with a minimum grade of C- and CSC 4421 with a minimum grade of C-

CSC 6290 Data Communication and Computer Networks Cr. 3

Data communication fundamentals and principles governing computer communication networks. Components of networks, how they are connected; basics of design and implementation of network protocols. Offered Yearly.

Prerequisites: CSC 5250

CSC 6430 Game Programming and Design II Cr. 3

Game design methods, team development, languages for game design, debugging and testing, game platforms, memory management and I/O, game physics, character animation, AI agents, AI path programming, networking, online and multiplayer gaming. Offered Yearly.

Prerequisites: CSC 5430 with a minimum grade of C- and CSC 5431 with a minimum grade of C-

Corequisite: CSC 6431

CSC 6431 Game Programming and Design II: Lab Cr. 1

Architecture and tools for modern game platforms. Game development environment; basic aspects of game engine design, graphics engine design, use of shaders. Offered Yearly.

Corequisite: CSC 6430

Course Material Fees: $25

CSC 6500 Theory of Languages and Automata Cr. 3

Recursive and recursively enumerable languages; decidability and computability; Rice's theorem; time complexity; space complexity. Offered Fall, Winter.

Prerequisites: CSC 4500 with a minimum grade of C-

CSC 6580 Design and Analysis of Algorithms Cr. 3

Best case, worst case, and expected case complexity analysis; asymptotic approximations; solutions of recurrence equations; probabilistic techniques; divide-and-conquer; the greedy approach; dynamic programming; branch and bound; NP-completeness; parallel algorithms. Offered Fall, Winter.

Prerequisites: CSC 3110 with a minimum grade of C-

CSC 6620 Matrix Computation I Cr. 4

Background matrix algebra; linear system sensitivity; basic transformations; Gaussian elimination; symmetric systems; positive definite systems; Householder method for least squares problems; unsymmetric eigenvalue problems; the QR algorithm. Offered Yearly.

Prerequisites: 3 of (CSC 2200 with a minimum grade of C, CSC 2201 with a minimum grade of C, or MAT 2250 with a minimum grade of C-) or 1 of (ECE 3040 with a minimum grade of C- or BE 2550 with a minimum grade of C-)

Equivalent: ECE 5020

CSC 6710 Database Management Systems I Cr. 3

Data models, normal forms, relational systems and SQL, query optimization, object-oriented systems, object-relational systems, student Oracle project. Offered Yearly.

Prerequisites: CSC 4710 with a minimum grade of C-

CSC 6720 Data Science Applications Development Cr. 3

Background of SQL and NoSQL databases is necessary. This course focuses on the system development life cycle of a comprehensive data science application. Students will first choose a particular domain and problem to address one of the big data challenges: volume, velocity, or variety. Students will then choose a scalable distributed computing environment to design analytical models to solve business problems. Students will finally develop their data science application using agile methodologies to plan, analyze, design, implement, and operationalize their application. Offered Yearly.

Restriction(s): Enrollment is limited to Graduate level students.

CSC 6800 Artificial Intelligence I Cr. 3

Basic concepts; topics include: recursive problem solving, knowledge representation using semantic networks and frames, state space search methods, planning and problem solving, game playing and adversarial search methods, rules and production systems (RETE networks), constraint satisfaction techniques and applications, optimization algorithms including genetic algorithms, logic programming. Implementation in Lisp and Prolog. Offered Yearly.

Prerequisites: CSC 3110 with a minimum grade of C-

CSC 6860 Digital Image Processing and Analysis Cr. 3

Review of image formation and acquisition; image transformation; image enhancement and restoration; image compression; morphological image processing; edge detection and segmentation; architecture for image processing. Offered Intermittently.

Prerequisites: CSC 3110 with a minimum grade of C

Restriction(s): Enrollment is limited to Graduate or Undergraduate level students.

CSC 6870 Computer Graphics II Cr. 3

Representing curves and surfaces; solid modeling; fractal geometry; camera models; illumination models; ray tracing; radiosity methods; transparency; texture; graphics packages. Offered Yearly.

Prerequisites: CSC 5870 with a minimum grade of C-

Course Material Fees: $20

CSC 6991 Topics in Computer Science Cr. 1-4

Current topics to be announced in the Schedule of Classes. Offered Intermittently.

Prerequisites: CSC 2200 with a minimum grade of C and CSC 2201 with a minimum grade of C

Restriction(s): Enrollment is limited to Graduate or Undergraduate level students.

Repeatable for 9 Credits

CSC 6995 Internship in Computer Science Cr. 1-3

Experience in industry using tools from the computer science curriculum. Students provide a written report based on the internship experience. Offered Every Term.

Repeatable for 3 Credits

CSC 7220 Parallel Computing II: Algorithms and Applications Cr. 4

Problems in parallel algorithms: design, analysis, complexity. Cluster and grid computing: tools, programming, and applications. Offered Yearly.

Prerequisite: CSC 6220 with a minimum grade of C

Restriction(s): Enrollment is limited to Graduate level students.

CSC 7260 Distributed Systems Cr. 3

Models of distributed systems, distributed synchronization, algorithms, consistency and replication models and algorithms, fault-tolerance in distributed systems. Offered Every Other Year.

Prerequisite: CSC 5250 with a minimum grade of C

Restriction(s): Enrollment is limited to Graduate level students.

CSC 7270 Advanced Computer Security Cr. 3

Advanced topics in protecting information computer systems and data. Topics include, but are not limited to, crypto-algorithms and protocols (e.g., IDEA, Elliptic Curve Cryptosystems, and the Byzantine Generals Problem), and secure system design principles. Hands-on design project will reinforce the material. Offered Winter.

Prerequisite: CSC 5270 with a minimum grade of C

Restriction(s): Enrollment is limited to Graduate level students; enrollment limited to students in the College of Engineering.

CSC 7290 Advanced Computer Networking Cr. 3

Foundations of computer networking (e.g., performance evaluation and analysis, protocol specification and verification), latest development in network architecture and technology (e.g., wireless networks, sensor networks, peer-to-peer networks, vehicular networks). Offered Yearly.

Prerequisite: CSC 6290 with a minimum grade of C

Restriction(s): Enrollment is limited to Graduate level students.

Course Material Fees: $25

CSC 7300 Bioinformatics I: Biological Databases and Data Analysis Cr. 3

Concepts of bioinformatics; tools for storing and analysis of bioinformatics data. Offered Winter.

Restriction(s): Enrollment is limited to Graduate level students.

CSC 7301 Bioinformatics I: Programming Lab Cr. 1

Hands-on experience and exercises for CSC 7300/MBG 7300 lectures. Offered Fall.

Restriction(s): Enrollment is limited to Graduate level students.

Course Material Fees: $25

CSC 7410 Bioinformatics II Cr. 4

Biology of bioinformatics, DNA and protein sequencing, introduction of systems biology, mRNA expressions analysis, pathway and molecular machines analysis. Offered Winter.

Prerequisite: CSC 7300 with a minimum grade of C and CSC 7301 with a minimum grade of C and MGG 7010 with a minimum grade of C

Restriction(s): Enrollment is limited to Graduate level students.

CSC 7430 Electronic Commerce Cr. 3

Introduction to design and analysis of internet commerce systems. Protocols for electronic transactions; online payments and exchanges e-cash; game theory and mechanism design; online auction design; sponsored search auctions, combinatorial auctions. Offered Fall.

Restriction(s): Enrollment is limited to Graduate level students.

CSC 7710 Database Management Systems II Cr. 3

Concurrency control, transaction processing, crash recovery, security, distributed and heterogeneous databases, data warehousing, data mining, multimedia systems, student Oracle project. Offered Yearly.

Prerequisite: CSC 6710 with a minimum grade of C

Restriction(s): Enrollment is limited to Graduate level students.

CSC 7760 Deep Learning Cr. 3

Covers the basics of deep neural networks and their applications in various AI tasks. Students will gain a considerable understanding regarding the subject and be able to apply Deep Learning to a range of problems. They will also be positioned to understand the current literature on the topic and extend their knowledge through further study. The following topics will be covered: Feed-forward Deep Neural Networks, Regularizations, Optimization methods, Convolutional Neural Networks, Sequence Modeling: Recurrent and Recursive Networks, Autoencoders and Generative Adversarial Networks and Applications in Object Detection, Natural Language Processing, Relational Reasoning, and Spatial-temporal and Graph Modelling. Programming tutorials on Python, Jupyter, TensorFlow, and Keras will also be provided. Offered Winter.

Restriction(s): Enrollment is limited to Graduate level students.

CSC 7800 Artificial Intelligence II Cr. 3

Advanced topics from these areas: machine learning techniques (inductive and deductive), neural networks and perceptrons, genetic algorithms, advanced concepts in knowledge-based system design, inexact inference, constraint satisfaction techniques and applications, object-oriented programming. Implementation in Lisp and Prolog. Offered Yearly.

Prerequisite: CSC 6800 with a minimum grade of C

Restriction(s): Enrollment is limited to Graduate level students.

CSC 7810 Data Mining: Algorithms and Applications Cr. 3

Application of various basic/advanced data mining techniques to real-world problems. Offered Winter.

Prerequisite: CSC 5800 with a minimum grade of C

Restriction(s): Enrollment is limited to Graduate level students.

Equivalent: IE 7811

CSC 7825 Machine Learning Cr. 3

Supervised learning including regression, kernel-based, tree-based, probability model based and ensemble learning; unsupervised learning including distance based and model based; Markov Chain Monte Carlo (MCMC) methods; graphical models; current topics from literature. Offered Fall.

Prerequisite: CSC 5825 with a minimum grade of C

Restriction(s): Enrollment is limited to Graduate level students.

CSC 7990 Directed Study Cr. 1-5

Offered Every Term.

Restriction(s): Enrollment is limited to Graduate level students.

Repeatable for 9 Credits

CSC 7991 Advanced Topics in Computer Science Cr. 1-4

Topics to be announced in the Schedule of Classes. Offered Every Other Year.

Restriction(s): Enrollment is limited to Graduate level students.

Repeatable for 9 Credits

CSC 8260 Seminar in Networking, Distributed Systems and Parallel Systems Cr. 3

Discussion of current research papers in the fields. Offered Every Other Year.

Restriction(s): Enrollment is limited to Graduate level students.

Repeatable for 9 Credits

CSC 8710 Seminar in Database Management Systems Cr. 3

Discussion of current papers in the field. Offered Every Other Year.

Prerequisite: CSC 6710

Restriction(s): Enrollment is limited to Graduate level students.

CSC 8800 Seminar in Machine Learning and Artificial Intelligence Cr. 3

Discussion of current papers in the field. Prospective students should have a solid understanding of machine learning models, optimization algorithms and the underlying mathematics/programming background. Offered Yearly.

Restriction(s): Enrollment is limited to Graduate level students.

Repeatable for 9 Credits

CSC 8860 Seminar Topics in Computer Vision and Pattern Recognition Cr. 3

Discussion of current papers in the field. Offered Every Other Year.

Prerequisite: CSC 7860 with a minimum grade of C

Restriction(s): Enrollment is limited to Graduate level students.

CSC 8990 Graduate Seminar Cr. 1

Discussion of current research by faculty and visitors. Offered Fall, Winter.

Restriction(s): Enrollment is limited to Graduate level students.

Repeatable for 8 Credits

CSC 8999 Master's Thesis Research and Direction Cr. 1-8

Offered Every Term.

Restriction(s): Enrollment is limited to Graduate level students.

Repeatable for 8 Credits

CSC 9990 Pre-Doctoral Candidacy Research Cr. 1-8

Research in preparation for doctoral dissertation. Offered Every Term.

Restriction(s): Enrollment is limited to Graduate level students.

Repeatable for 12 Credits

CSC 9991 Doctoral Candidate Status I: Dissertation Research and Direction Cr. 7.5

Offered Every Term.

Restriction(s): Enrollment is limited to Graduate level students.

CSC 9992 Doctoral Candidate Status II: Dissertation Research and Direction Cr. 7.5

Offered Every Term.

Prerequisite: CSC 9991 with a minimum grade of S

Restriction(s): Enrollment is limited to Graduate level students.

CSC 9993 Doctoral Candidate Status III: Dissertation Research and Direction Cr. 7.5

Offered Every Term.

Prerequisite: CSC 9992 with a minimum grade of S

Restriction(s): Enrollment is limited to Graduate level students.

CSC 9994 Doctoral Candidate Status IV: Dissertation Research and Direction Cr. 7.5

Offered Every Term.

Prerequisite: CSC 9993 with a minimum grade of S

Restriction(s): Enrollment is limited to Graduate level students.

CSC 9995 Candidate Maintenance Status: Doctoral Dissertation Research and Direction Cr. 0

Offered Every Term.

Restriction(s): Enrollment is limited to Graduate level students.

Course Material Fees: $384.7

Repeatable for 0 Credits