CAP 5100 Human-Computer Interaction 3 Credits

Grading Scheme: Letter Grade

Topics related to interaction with technology, including interface design, software tools, 3-D interaction, virtual environments, interaction devices, collaboration, and visualization.

Prerequisite: COP 3530, and any one programming course (COP 2800, COP 3275, or COP 3229).

Catalog Program Pages Referencing CAP 5100

CAP 5108 Research Methods for Human-Centered Computing 3 Credits

Grading Scheme: Letter Grade

Introduces the fundamental methods and techniques to evaluate technologies and collect data from humans, including experimental design, types of variables, types of errors, hypothesis testing, survey design, behavioral and psychophysical methods.

Prerequisite: STA 3032, COT 3100, COP 3530, or equivalent.

Catalog Program Pages Referencing CAP 5108

CAP 5416 Computer Vision 3 Credits

Grading Scheme: Letter Grade

Introduction to image formation and analysis. Monocular imaging system projections, camera model calibration, and binocular imaging. Low-level vision techniques, segmentation and representation techniques, and high-level vision.

Prerequisite: PrerequisitesMAC 2312 or equivalent, COT 4501 or equivalent and Proficiency in MATLAB or C++ or Java. Course instructor will determine equivalency.

Catalog Program Pages Referencing CAP 5416

CAP 5510 Bioinformatics 3 Credits

Grading Scheme: Letter Grade

Basic concepts of molecular biology and computer science. Sequence comparison and assembly, physical mapping of DNA, phylogenetic trees, genome rearrangements, gene identification, biomolecular cryptology, and molecular structure prediction.

Prerequisite: CIS 3020 or equivalent.

Catalog Program Pages Referencing CAP 5510

CAP 5515 Computational Molecular Biology 3 Credits

Grading Scheme: Letter Grade

Algorithms related to molecular biology. Sequence comparisons, pattern matching, pattern extraction, graph techniques in phylogeny construction, secondary structure prediction, multiple sequence alignment, contig search, DNA computing, computational learning theory, and genetic algorithms.

Catalog Program Pages Referencing CAP 5515

CAP 5635 Artificial Intelligence Concepts 3 Credits

Grading Scheme: Letter Grade

Heuristic search, game theory, knowledge representation, logic, machine learning, AI languages and tools. Applications such as planning, natural language understanding, expert systems, and computer vision.

Prerequisite: COP 3530.

Catalog Program Pages Referencing CAP 5635

CAP 5705 Computer Graphics 3 Credits

Grading Scheme: Letter Grade

Display device characteristics; system considerations, display algorithms. Curve and surface generation. Lighting models and image rendering.

Prerequisite: COP 3530.

Catalog Program Pages Referencing CAP 5705

CAP 5771 Introduction to Data Science 3 Credits

Grading Scheme: Letter Grade

Introducing the basics of data science including programming for data analytics, file management, relational databases, classification, clustering and regression. The foundation is laid for big data applications ranging from social networks to medical and business informatics.

Prerequisite: COP 3530 Data Structures and Algorithms or equivalent.

Catalog Program Pages Referencing CAP 5771

CAP 6137 Malware Reverse Engineering 3 Credits

Grading Scheme: Letter Grade

Introducing the theory and practice of software reverse engineering applied to analysis of malicious software (malware). Students learn techniques of static and dynamic analysis to help identify the behavior of programs presented without documentation or source code and to identify possible remediation and avoidance techniques.

Prerequisite: CDA 3101 ;

Corequisite: COP 5615 or consent of instructor.

Catalog Program Pages Referencing CAP 6137

CAP 6516 Medical Image Analysis 3 Credits

Grading Scheme: Letter Grade

Image formation, reconstruction mathematics (Fourier slice theorem, Abel, Hankel and Radon transforms), PDE-based denoising and segmentation, multidimensional clustering algorithms, iso-surface extraction, basic differential geometry of curves and surfaces, multidimensional splines, active 2D/3D models, image matching/registration with application to multimodal co-registration.

Prerequisite: expertise in image proc./comp. vision, proficiency in C language or MATLAB.

Catalog Program Pages Referencing CAP 6516

CAP 6610 Machine Learning 3 Credits

Grading Scheme: Letter Grade

Concepts in developing computer programs that learn and improve with experience. Emphasis on methods based on probability, statistics, and optimization.

Prerequisite: Mathematics for Intelligent Systems.

Catalog Program Pages Referencing CAP 6610

CAP 6615 Neural Networks for Computing 3 Credits

Grading Scheme: Letter Grade

Neural network models and algorithms. Adaptive behavior, associative learning, competitive dynamics and biological mechanisms. Applications include computer vision, cognitive information processing, control, and signal analysis.

Prerequisite: CAP 5635.

Catalog Program Pages Referencing CAP 6615

CAP 6617 Advanced Machine Learning 3 Credits

Grading Scheme: Letter Grade

Advanced concepts in developing computer programs that learn and improve with experience. Emphasis on methods based on probability, statistics, and optimization.

Prerequisite: CAP 6610.

Catalog Program Pages Referencing CAP 6617

CAP 6685 Expert Systems 3 Credits

Grading Scheme: Letter Grade

Production systems, meta-knowledge, heuristic discovery, indepth examination of several expert systems including TEIRESIAS, AM, DENDRAL, MYCIN, IRIS, CASNET, INTERNIST, BACON, PROSPECTOR.

Prerequisite: CAP 5635.

Catalog Program Pages Referencing CAP 6685

CAP 6701 Advanced Computer Graphics 3 Credits

Grading Scheme: Letter Grade

Curved surface representations, representation and visualization of higher-dimensional fields, advanced rendering, collision detection and collision response, and scene navigation in context of high-level graphics environments.

Prerequisite: CAP 4730 or CAP 5705 or consent of instructor.

Catalog Program Pages Referencing CAP 6701

CAP 6769 Advanced Topics in Data Science 3 Credits

Grading Scheme: Letter Grade

Advanced topics in data science such as relational databases and parallel and distributed processing in the cloud, tree-based classifiers and support vector machines, dimensionality reduction and theories of visualization.

Prerequisite: Graduate standing, CAP 5771

Catalog Program Pages Referencing CAP 6769

CAP 6779 Projects in Data Science 3 Credits

Grading Scheme: Letter Grade

Advanced topics in data science, individual projects in application areas such as vision, natural language processing, computational fluid dynamics, social networks, bioinformatics, etc.

Prerequisite: Graduate standing, CAP 5XXX: Introduction to Data Science

Catalog Program Pages Referencing CAP 6779

CDA 5155 Computer Architecture Principles 3 Credits

Grading Scheme: Letter Grade

Fundamental design issues of processor and computer architecture, a variety of design approaches for CPU, memory, and system structure.

Prerequisite: CDA 3101, COP 3530, and COP 4600.

Catalog Program Pages Referencing CDA 5155

CDA 5636 Embedded Systems 3 Credits

Grading Scheme: Letter Grade

Design of efficient and trustworthy embedded and cyber-physical systems consisting of hardware, software, firmware, sensors and actuators. It covers fundamental issues related to modeling and specification, design space exploration, hardware-software partitioning, synthesis and compilation, real-time operating systems, and application-specific optimizations targeting area, power, performance, temperature, energy, and security.

Prerequisite: Computer Organization.

Catalog Program Pages Referencing CDA 5636

CEN 5035 Software Engineering 3 Credits

Grading Scheme: Letter Grade

Topics in projects organization, specification techniques, reliability measurement, documentation.

Prerequisite: COP 3504 and COT 3100.

Catalog Program Pages Referencing CEN 5035

CEN 5726 Natural User Interaction 3 Credits

Grading Scheme: Letter Grade

Introducing design, development, and evaluation of Natural User Interaction (NUI) technologies (e.g., non-keyboard and mouse technologies, such as touchscreen interaction, gesture interaction, speech interaction, etc.). Key concepts include hardware-to-software NUI pipeline and considerations in NUI software development (including existing platforms, toolkits, and APIs used to create NUI software).

Prerequisite: COP 3530(C)

Catalog Program Pages Referencing CEN 5726

CEN 5728 User Experience Design 3 Credits

Grading Scheme: Letter Grade

Introduces methods and tools used in User Experience Design (UXD): the early stages of software design focused on meeting user needs. Key concepts include user research, contextual design, design thinking, ideation, iterative design, prototyping, and design documentation. Software tools used in industry are used in class projects.

Prerequisite: COP 3530 or equivalent.

Catalog Program Pages Referencing CEN 5728

CEN 6070 Software Testing and Verification 3 Credits

Grading Scheme: Letter Grade

Concepts, principles, and methods for software testing and verification. Topics include human and machine-based testing strategies, formal proofs of correctness, and software reliability.

Prerequisite: CEN 5035.

Catalog Program Pages Referencing CEN 6070

CEN 6075 Software Specification 3 Credits

Grading Scheme: Letter Grade

Concepts, principles, and methods for practical specification. System modeling, requirements exploration, validation and prototyping, and documentation techniques.

Prerequisite: CEN 5035.

Catalog Program Pages Referencing CEN 6075

CIS 5370 Computer and Information Security 3 Credits

Grading Scheme: Letter Grade

Covers systematic threat and risk assessment; programmed threats and controls in hardware, software, and human procedures; security policies, models, and mechanisms; theoretical limitations and practical implementations; certification and accreditation standards; and case study reviews. Coursework includes a significant term project.

Prerequisite: COP 4600 Operating Systems or equivalent

Catalog Program Pages Referencing CIS 5370

CIS 5371 Introduction to Cryptology 3 Credits

Grading Scheme: Letter Grade

Introducing classical and modern cryptography and cryptanalysis, including symmetric and asymmetric (public key) ciphers. It covers cryptographic hash functions, block and stream ciphers, as well as differential and linear cryptanalysis. It reviews BAN logic, applications of cryptography, cryptographic standards and protocols, and analyzes case studies of failed implementations.

Prerequisite: COT 3100 Applications of Discrete Structures or equivalent ;

Corequisite:  COT 5405 Analysis of Algorithms or equivalent

Catalog Program Pages Referencing CIS 5371

CIS 6905 Individual Study 1-3 Credits, Max 6 Credits

Grading Scheme: Letter Grade

Individual Study

Prerequisite: consent of faculty member supervising the study.

Catalog Program Pages Referencing CIS 6905

CIS 6910 Supervised Research 1-5 Credits, Max 5 Credits

Grading Scheme: S/U

Supervised Research

Prerequisite: graduate status in CIS.

Catalog Program Pages Referencing CIS 6910

CIS 6930 Special Topics in CIS 3 Credits, Max 9 Credits

Grading Scheme: Letter Grade

Special Topics in CIS

Prerequisite: vary depending on topics.

Catalog Program Pages Referencing CIS 6930

CIS 6935 Graduate Seminar 1-12 Credits, Max 12 Credits

Grading Scheme: S/U

Presentations by visiting researchers, faculty members, and graduate students.

Catalog Program Pages Referencing CIS 6935

CIS 6940 Supervised Teaching 3 Credits, Max 5 Credits

Grading Scheme: S/U

A supervised teaching experience.

Catalog Program Pages Referencing CIS 6940

CIS 6971 Research for Master's Thesis 1-15 Credits

Grading Scheme: S/U

Research for Master's Thesis

Catalog Program Pages Referencing CIS 6971

CIS 7979 Advanced Research 1-12 Credits

Grading Scheme: S/U

Research for doctoral students before admission to candidacy. Designed for students with a master's degree in the field of study or for students who have been accepted for a doctoral program. Not appropriate for students who have been admitted to candidacy.

Catalog Program Pages Referencing CIS 7979

CIS 7980 Research for Doctoral Dissertation 1-15 Credits

Grading Scheme: S/U

Research for Doctoral Dissertation

Catalog Program Pages Referencing CIS 7980

CNT 5106C Computer Networks 3 Credits

Grading Scheme: Letter Grade

Design, implementation, and internals of networks. Routing, congestion control, internetworking, TCP/IP, optimization, and proxy services.

CNT 5410 Computer and Network Security 3 Credits

Grading Scheme: Letter Grade

Issues, analysis, and solutions. Viruses, worms, logic bombs, network attacks, covert channels, steganography, cryptology, authentication, digital signatures, electronic commerce.

Prerequisite: COP 3530, COT 5405. ;

Corequisite: COP 4600.

Catalog Program Pages Referencing CNT 5410

CNT 5412 Network and System Security 3 Credits

Grading Scheme: Letter Grade

Examining networked threats and vulnerabilities; trust, identification, authentication, and authorization in networked and distributed systems; secure network protocols and standards; certification of network products; firewall configurations, intrusion detection, and anomaly detection; security flaws in network protocols and distributed applications. Coursework includes a significant  term project.

Prerequisite: CNT 5106C: Computer Networks or equivalent; COP 4600 - Operating Systems or equivalent ;

Corequisite: COT 5405: Analysis of Algorithms or equivalent.

Catalog Program Pages Referencing CNT 5412

CNT 5517 Mobile Computing 3 Credits

Grading Scheme: Letter Grade

Emerging topics of wireless and mobile computing and networking including mobile computing models, mobile-IP, adhoc networks, Bluetooth, and 802.11b. Mobile database access and mobile transactions in context of emerging field of M-commerce.

Prerequisite: CNT 4007C.

Catalog Program Pages Referencing CNT 5517

CNT 6107 Advanced Computer Networks 3 Credits

Grading Scheme: Letter Grade

Computer network architecture, including topologies, media, switching, routing, congestion control, protocols, and case studies.

Prerequisite: COP 5615 , COP 5536 , and CNT 5106C

Catalog Program Pages Referencing CNT 6107

CNT 6885 Distributed Multimedia Systems 3 Credits

Grading Scheme: Letter Grade

Design issues; survey of recent advances, including compression, networking, and operating system issues.

Catalog Program Pages Referencing CNT 6885

COP 5536 Advanced Data Structures 3 Credits

Grading Scheme: Letter Grade

Development of efficient data structures used to obtain more efficient solutions to classical problems, such as those based on graph theoretical models, as well as problems that arise in application areas of contemporary interest.

Prerequisite: COP 3530.

Catalog Program Pages Referencing COP 5536

COP 5556 Programming Language Principles 3 Credits

Grading Scheme: Letter Grade

History of programming languages, formal models for specifying languages, design goals, run-time structures, and implementation techniques, along with survey of principal programming language paradigms.

Prerequisite: COP 3530.

Catalog Program Pages Referencing COP 5556

COP 5615 Distributed Operating System Principles 3 Credits

Grading Scheme: Letter Grade

Concepts and techniques for efficient management of computer system resources.

Prerequisite: COP 4600.

Catalog Program Pages Referencing COP 5615

COP 5618 Concurrent Programming 3 Credits

Grading Scheme: Letter Grade

Overview of principles and programming techniques. Reasoning about concurrency, synchronization, program structuring, multi-threaded server applications.

Prerequisite: COP 3100, 3530.

Catalog Program Pages Referencing COP 5618

COP 5625 Programming Language Translators 3 Credits

Grading Scheme: Letter Grade

Anatomy of translators for high-level programming languages.

Prerequisite: COP 5556.

Catalog Program Pages Referencing COP 5625

COP 5725 Database Management Systems 3 Credits

Grading Scheme: Letter Grade

Introduction to systems and procedures for managing large computerized databases.

Prerequisite: COP 3530, 4600, or equivalent.

Catalog Program Pages Referencing COP 5725

COP 6726 Database System Implementation 3 Credits

Grading Scheme: Letter Grade

DBMS architecture, query processing and optimization, transaction processing, index structures, parallel query processing, object-oriented and object-relational databases, and related topics.

Prerequisite: COP 4600 and 4720 or COP 5725.

Catalog Program Pages Referencing COP 6726

COT 5405 Analysis of Algorithms 3 Credits

Grading Scheme: Letter Grade

Introduction and illustration of basic techniques for designing efficient algorithms and analyzing algorithm complexity.

Prerequisite: COP 3530.

Catalog Program Pages Referencing COT 5405

COT 5442 Approximation Algorithms 3 Credits

Grading Scheme: Letter Grade

Fundamentals of algorithmic paradigms, analysis, techniques, and software. Topics include greedy methods, randomized algorithms, lP-rounding, approximability, covering, packing, clustering, and network problems.

Prerequisite: COP 3530 or COT 5405

Catalog Program Pages Referencing COT 5442

COT 5519 Sparse Matrix Algorithms 3 Credits

Grading Scheme: Letter Grade

Many applications in computational science rely on algorithms for large-scale sparse matrices (circuit simulation, finite-element methods, 'big data', Google StreetView, etc).  Course equips students to understand and design methods that exploit sparsity in matrix computations.  Focus is direct methods, which rely on combinatorics, graph theory and algorithms, and numerical methods.

Prerequisite: COT 3100, COT 4501, COP 3530

Catalog Program Pages Referencing COT 5519

COT 5520 Computational Geometry 3 Credits

Grading Scheme: Letter Grade

Design, analysis, and implementation of algorithms and date structures to solve geometric problems. Applications in graphics, robotics, computational biology, data mining, and scientific computing. Convex hulls, Voronoi diagrams, triangulations, arrangements, and range searching.

Prerequisite: COP 3530.

Catalog Program Pages Referencing COT 5520

COT 5615 Mathematics for Intelligent Systems 3 Credits

Grading Scheme: Letter Grade

Mathematical methods commonly used to develop algorithms for computer systems that exhibit intelligent behavior.

Prerequisite: MAC 2313, Multivariate Calculus; MAS 3114 or MAS 4105, Linear Algebra; STA 4321, Mathematical Statistics.

Catalog Program Pages Referencing COT 5615

COT 6315 Formal Languages and Computation Theory 3 Credits

Grading Scheme: Letter Grade

Introduction to theoretical computer science including formal languages, automata theory, Turing machines, and computability.

Prerequisite: COP 3530 and familiarity with discrete mathematics and data structures.

Catalog Program Pages Referencing COT 6315

EGN 5949 Practicum/Internship/Cooperative Work Experience 1-6 Credits, Max 6 Credits

Grading Scheme: S/U

Practical cooperative engineering work under approved industrial and faculty supervision.

Prerequisite: graduate student.

Catalog Program Pages Referencing EGN 5949

EGN 6913 Engineering Graduate Research 0-3 Credits

Grading Scheme: S/U

Course will provide the student with supervised research in a laboratory setting.

Catalog Program Pages Referencing EGN 6913