Computer Science and Engineering (CSCE)

CSCE805T
Introduction to Computer Science I for Teachers

This course does not count towards a graduate degree in Computer Science or Computer Engineering.

Description: Introduction to problem solving with computers for teachers. Topics include problem solving methods, software development principles, computer programming, computing in society, and teaching practices for K-12 computer science courses.

This course is a prerequisite for: CSCE 806T

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Offered:SUMMER

Credit Hours:3

ACE:

CSCE806T
Introduction to Computer Science II for Teachers

Prerequisites: A grade of "P" or "C" or better in CSCE 805T

Mathematical courses through trigonometry expected. This course does not count towards a graduate degree in Computer Science or Computer Engineering.

Description: Data structures, including linked lists, stacks, queues, and trees; algorithms, including searching, sorting, and recursion; programming language topics, including object-oriented programming; pointers, references, and memory management; design and implementation of a multi-layer application with an SQL database; and teaching practices for K-12 computer science courses.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Offered:SUMMER

Credit Hours:3

ACE:

CSCE810
Information Retrieval SystemsCrosslisted with CSCE 410

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H.

Description: Outline of the general information retrieval problem, functional overview of information retrieval. Deterministic models of information retrieval systems; conventional Boolean, fuzzy set theory, p-norm, and vector space models. Probabilistic models. Text analysis and automatic indexing. Automatic query formulation. System-user adaptation and learning mechanisms. Intelligent information retrieval. Retrieval evaluation. Review of new theories and future directions. Practical experience with a working experimental information retrieval system.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Offered:SPRING

Credit Hours:3

ACE:

CSCE811
Data Modeling for Systems DevelopmentCrosslisted with CSCE 411

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H.

Description: Concepts of relational and object-oriented data modeling through the process of data model development including conceptual, logical and physical modeling. Techniques for identifying and creating relationships between discrete data members, reasoning about how data modeling and analysis are incorporated in system design and development, and specification paradigms for data models. Common tools and technologies for engineering systems and frameworks for integrating data. Design and analysis of algorithms and techniques for identification and exploration of data relationships, such as Bayesian probability and statistics, clustering, map-reduce, and web-based visualization.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option

Credit Hours:3

ACE:

CSCE812
Data VisualizationCrosslisted with CSCE 412

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H; MATH 314.

Description: Fundamentals and implementations of data visualization techniques. Programming skills and practices in interactive visualization applications. Visualization foundations, human perception for information processing, and visualization techniques for different data types, such as scalar-field data, vector-field data, geospatial data, multivariate data, graph/network data, and text/document data. Advanced visualization algorithms and topics as time permits.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Offered:FALL/SPR

Credit Hours:3

ACE:

CSCE813
Database SystemsCrosslisted with CSCE 413

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H.

Involves practical experience with a working database system.

Description: Data and storage models for database systems; entity/relationship, relational, and constraint models; relational databases; relational algebra and calculus; structured query language; Logical database design: normalization; integrity; distributed data storage; concurrency; security issues. Spatial databases and geographic information systems.

This course is a prerequisite for: CSCE 913; CSCE 914

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$40

Credit Hours:3

ACE:

CSCE821
Foundations of Constraint ProcessingCrosslisted with CSCE 421

Prerequisites: A grade of "P" or "C" or better in CSCE 235 and CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H.

Description: Constraint processing for articulating and solving industrial problems such as design, scheduling, and resource allocation. The foundations of constraint satisfaction, its basic mechanisms (e.g., search, backtracking, and consistency-checking algorithms), and constraint programming languages. New directions in the field, such as strategies for decomposition and for symmetry identification.

This course is a prerequisite for: CSCE 921

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$10

Credit Hours:3

ACE:

CSCE823
Design and Analysis of AlgorithmsCrosslisted with CSCE 423

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H.

Description: Mathematical preliminaries. Strategies for algorithm design, including divide-and-conquer, greedy, dynamic programming and backtracking. Mathematical analysis of algorithms. Introduction to NP-Completeness theory, including the classes P and NP, polynomial transformations and NP-complete problems.

This course is a prerequisite for: CSCE 923; CSCE 924

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$20

Credit Hours:3

ACE:

CSCE824
Computational Complexity TheoryCrosslisted with CSCE 424

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H.

Description: Turing machine model of computation: deterministic, nondeterministic, alternating, probabilistic. Complexity classes: Time and space bounded, deterministic, nondeterministic, probabilistic. Reductions and completeness. Complexity of counting problems. Non-uniformity. Lower bounds. Interactive proofs.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option

Credit Hours:3

ACE:

CSCE825
Compiler ConstructionCrosslisted with CSCE 425

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H.

Description: Review of program language structures, translation, loading, execution, and storage allocation. Compilation of simple expressions and statements. Organization of a compiler including compile-time and run-time symbol tables, lexical scan, syntax scan, object code generation, error diagnostics, object code optimization techniques, and overall design.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$20

Credit Hours:3

ACE:

CSCE828
Automata, Computation, and Formal LanguagesCrosslisted with CSCE 428

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H.

Description: Introduction to the classical theory of computer science. Finite state automata and regular languages, minimization of automata. Context free languages and pushdown automata, Turing machines and other models of computation, undecidable problems, introduction to computational complexity.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$20

Credit Hours:3

ACE:

CSCE830
Computer ArchitectureCrosslisted with CSCE 430

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H; Coreq: STAT 380, ECEN 305 or RAIK 270H.

Description: Architecture of single-processor (Von Neumann or SISD) computer systems. Evolution, design, implementation, and evaluation of state-of-the-art systems. Memory Systems, including interleaving, hierarchies, virtual memory and cache implementations; Communications and I/O, including bus architectures, arbitration, I/O processors and DMA channels; and Central Processor Architectures, including RISC and Stack machines, high-speed arithmetic, fetch/execute overlap, and parallelism in a single-processor system.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$20

Credit Hours:3

ACE:

CSCE831
Hardware and Software Acceleration for Machine LearningCrosslisted with CSCE 431

Prerequisites: A grade of "P" or "C" or better in CSCE 230 or CSCE 231 and CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H.

Description: Overview of the hardware and software acceleration techniques, including basics of deep learning, deep learning frameworks, hardware accelerators, co-optimization of algorithms and hardware, training and inference, support for state-of-the-art deep learning networks.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Offered:FALL

Credit Hours:3

ACE:

CSCE835
Cluster and Grid ComputingCrosslisted with CSCE 435

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H, or RAIK 283H.

Designed for CSCE and non-CSCE students who have an interest in building or programming clusters to enhance their computationally-intense research.

Description: Build and program clusters. Cluster construction, cluster administration, cluster programming, and grid computing.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option

Credit Hours:3

ACE:

CSCE836
Advanced Embedded SystemsCrosslisted with CSCE 436

Prerequisites: A grade of "P" or "C" or better in CSCE 231, CSCE 336 or ECEN 220.

Description: Embedded hardware design techniques; transceiver design and low-power communication techniques; sensors and distributed sampling techniques; embedded software design and embedded operating systems; driver development; embedded debugging techniques;hardware and software architectures of embedded systems; and design, development, and implementation of embedded applications.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$40

Credit Hours:3

ACE:

CSCE838
Internet of ThingsCrosslisted with CSCE 438

Prerequisites: CSCE 230 or CSCE 231; SOFT 260, CSCE 310, CSCE 310H, CSCE 311 or equivalent; senior or graduate standing or instructor permission.

Description: Theoretical and practical insight into the Internet of Things (IoT). Basics of IoT, including devices and sensors, connectivity, cloud processing and storage, analytics and machine learning, security, business models as well as advanced topics such as localization, synchronization, connected vehicles, and applications of IoT. Includes a group project that provides hands-on interaction with IoT.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$20

Credit Hours:3

ACE:

CSCE839
Robotics: Algorithms and ApplicationsCrosslisted with CSCE 439

Prerequisites: A grade of "P" or "C" or better in CSCE 231, CSCE 336 or ECEN 220 and CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H

Description: Fundamental theory and algorithms for real world robot systems. Design and build a robot platform and implement algorithms in C++ or other high level languages. Topics include: open and closed loop control, reactive control, localization, navigation, path planning, obstacle avoidance, dynamics, kinematics, manipulation and grasping, sensing, robot vision processing, and data fusion.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Offered:FALL/SPR
Course and Laboratory Fee:$50

Credit Hours:3

ACE:

CSCE840
Numerical Analysis ICrosslisted with CSCE 440, MATH 440, MATH 840

Credit toward the degree may be earned in only one of the following: CSCE/MATH 440/840 and MECH 480/880.

Description: Principles of numerical computing and error analysis covering numerical error, root finding, systems of equations, interpolation, numerical differentiation and integration, and differential equations. Modeling real-world engineering problems on digital computers. Effects of floating point arithmetic.

This course is a prerequisite for: CSCE 942

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$20

Credit Hours:3

ACE:

CSCE843
Cybersecurity for Big Data, Cloud and CryptocurrenciesCrosslisted with CSCE 443

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H.

Labs will be conducted on academic cloud and compute environments as well as public clouds.

Description: Covers the cybersecurity threat landscape and the mitigation strategies for Big Data, Cloud environments and Cryptocurrencies. Discusses emerging technologies and frameworks such as End-to-end encryption, Blockchains, Smart Contracts, OpenID Connect and OAuth2.0 as promising solutions to ensure data confidentiality and privacy.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Offered:FALL

Credit Hours:3

ACE:

CSCE851
Operating Systems PrinciplesCrosslisted with CSCE 451

Prerequisites: A grade of "P" or "C" or better in CSCE 230 or CSCE 231 and CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H.

Description: Organization and structure of operating systems. Control, communication, and synchronization of concurrent processes. Processor and job scheduling. Memory organization and management including paging, segmentation, and virtual memory. Resource management. Deadlock avoidance, detection, recovery. File system concepts and structure. Protection and security. Substantial programming.

This course is a prerequisite for: CSCE 455, CSCE 855

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$20

Credit Hours:3

ACE:

CSCE854
Human-Robot InteractionCrosslisted with CSCE 454

Prerequisites: A grade of "P" or "C" or better in CSCE 156, CSCE 156H, SOFT 161, SOFT 161H, RAIK 184H or CSCE 311.

Meeting ACE1 and ACE2 requirements prior to taking this course is recommended. Non-CSCE majors may discuss qualifications with the instructor.

Description: Introduction to the area of human-robot interaction through the reading and discussion of current peer-reviewed articles on topic to include teleoperation, social robotics, and open questions with field-based or aerial robotic systems. Areas covered include: research methods, experimental design, and identification of problems/open questions.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Offered:FALL/SPR

Credit Hours:3

ACE:

CSCE855
Distributed Operating SystemsCrosslisted with CSCE 455

Prerequisites: CSCE 451/851.

Description: Organization and structure of distributed operating systems. Control, communication and synchronization of concurrent processes in the context of distributed systems. Processor allocation and scheduling. Deadlock avoidance, detection, recovery in distributed systems. Fault tolerance. Distributed file system concepts and structure.

This course is a prerequisite for: CHME 496, CHME 896

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$20

Credit Hours:3

ACE:

CSCE856
Parallel ProgrammingCrosslisted with CSCE 456

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H, or RAIK 283H.

Description: Introduction to the fundamentals of parallel computation and applied algorithm design. Methods and models of modern parallel computation; general techniques for designing efficient parallel algorithms for distributed and shared memory multiprocessor machines; principles and practice in programming an existing parallel machine.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$10

Credit Hours:3

ACE:

CSCE857
Systems AdministrationCrosslisted with CSCE 457

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H.

Description: Introduction to basic concepts of system administration. Operating systems and networking overview. User and resource management. Networking, systems and internet related security. System services and common applications, web services, database services, and mail servers. Basic scripting in shell, Perl, and Expect. Systems administration on UNIX® platform.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option

Credit Hours:3

ACE:

CSCE858
Molecular and Nanoscale CommunicationCrosslisted with CSCE 458

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H; STAT 380, ECEN 305 or RAIK 270H.

Completing CSCE 462/862 and CSCE 465/865 prior to taking this course is recommended. Exceptions can be granted on a per-student basis by the instructor.

Description: Overview of nanoscale communication options. Focus on bio-inspired communication through molecule exchange and biochemical reactions. Different techniques to realize nanomachines will be surveyed in the course, with particular attention to the tools provided by synthetic biology for the programming of biological cooperative systems.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Offered:FALL/SPR

Credit Hours:3

ACE:

CSCE859
Genetically Engineered SystemsCrosslisted with CSCE 459

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H; STAT 380, ECEN 305 or RAIK 270H.

Completing CSCE/MATH 440/840, MATH 439/839, and CSCE 471/871 prior to taking this course is recommended. Exceptions can be granted on a per-student basis by the instructor. Meeting ACE 1 and ACE 2 requirements prior to taking this course is recommended. Non-CSCE majors may discuss qualifications with the instructor.

Description: Introduction to the field of synthetic biology, and its interdisciplinary foundational concepts. Presents the technologies at the basis of synthetic biology, together with the engineering concepts that underlie the design, modeling, and realization of genetically engineered systems. Surveys examples of cutting edge applications.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Offered:FALL/SPR

Credit Hours:3

ACE:

CSCE860
Software Engineering for RoboticsCrosslisted with SOFT 460, CSCE 460

Prerequisites: SOFT 261 or RAIK 284H or CSCE 361

Description: Application of software engineering practices and principles to autonomous robotic systems.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Graded
Offered:FALL

Credit Hours:3

ACE:

CSCE861
Advanced Topics in Software EngineeringCrosslisted with CSCE 461, SOFT 461

Prerequisites: A grade of "P" or "C" or better in CSCE 361, CSCE 361H, SOFT 261, SOFT 261H or RAIK 284H.

Description: Advanced or emerging techniques in software engineering. Topics include but not limited to design methodology, software dependability, and advanced software development environments.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option

Credit Hours:3

ACE:

CSCE862
Communication NetworksCrosslisted with CSCE 462

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H; STAT 380, ECEN 305 or RAIK 270H.

Description: Introduction to the architecture of communication networks and the rudiments of performance modeling. Circuit switching, packet switching, hybrid switching, protocols, local and metro area networks, wide area networks and the Internet, elements of performance modeling, and network programming. Network security, asynchronous transfer mode (ATM), optical, wireless, cellular, and satellite networks, and their performance studies.

This course is a prerequisite for: CSCE 952; CSCE 953

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$20

Credit Hours:3

ACE:

CSCE863
Data and Network SecurityCrosslisted with CSCE 463

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H.

Description: Concepts and principles of data and network security. Focuses on practical aspects and application of crypto systems in security protocols for networks such as the Internet. Topics include: applications of cryptography and cryptosystems for digital signatures, authentication, network security protocols for wired and wireless networks, cyberattacks and countermeasures, and security in modern computing platforms.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option

Credit Hours:3

ACE:

CSCE864
Internet Systems and ProgrammingCrosslisted with CSCE 464

Prerequisites: A grade of "Pass" or C or better in CSCE 156, SOFT 161, RAIK 184H or CSCE 311 or equivalent programming experience.

A grade of "Pass" or C or better in CSCE 156, SOFT 161, RAIK 184H or CSCE 311 or equivalent programming experience.

Description: Paradigms, systems, and languages for Internet applications. Client-side and server-side programming, object-based and event-based distributed programming, and multi-tier applications. Coverage of specific technologies varies.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option

Credit Hours:3

ACE:

CSCE865
Wireless Communication NetworksCrosslisted with CSCE 465

Prerequisites: A grade of "P" or "C" or better in STAT 380, ECEN 305 or RAIK 270H

Description: Discussion of theoretical and practical insight to wireless communications and wireless networking, current practices, and future trends. Wireless network architectures, mobility management, radio propagation, modulation, power control, antennas, channel access, pricing, and standards.

This course is a prerequisite for: CSCE 954

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option

Credit Hours:3

ACE:

CSCE866
Software Design and ArchitectureCrosslisted with SOFT 466, CSCE 466

Prerequisites: A grade of "P" or "C" or better in CSCE 361, CSCE 361H, SOFT 261, SOFT 261H or RAIK 284H.

Letter grade only.

Description: Introduction to the concepts, principles, and state-of-the-art methods in software design and architecture. Topics include application of software engineering process models and management approaches for the design and architecture of large-scale software systems, trade-offs of designing for qualities such as performance, security, and dependability, and techniques and tools for analyzing and evaluating software architectures.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Graded

Credit Hours:3

ACE:

CSCE867
Testing, Verification and AnalysisCrosslisted with SOFT 467, CSCE 467

Prerequisites: A grade of "P" or "C" or better in CSCE 361, CSCE 361H, SOFT 261, SOFT 261H or RAIK 284H.

Letter grade only.

Description: In-depth coverage of problems related to software quality, and approaches for addressing them. Topics include testing techniques, dynamic and static program analysis techniques, and other approaches for verifying software qualities. Tool support for performing testing, verification, and analysis will also be studied.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Graded
Course and Laboratory Fee:$20

Credit Hours:3

ACE:

CSCE868
Requirements Elicitation, Modeling and AnalysisCrosslisted with SOFT 468, CSCE 468

Prerequisites: A grade of "P" or "C" or better in CSCE 361, CSCE 361H, SOFT 261, SOFT 261H or RAIK 284.

Letter grade only.

Description: In-depth coverage of processes, methods and techniques for determining, or deciding, what a proposed software system should do. Topics include the requirements engineering process, identification of stakeholders, requirements elicitation techniques, methods for informal and formal requirements documentation, techniques for analyzing requirements models for consistency and completeness, and traceability of requirements across system development and evolution. Tool support for modeling functional and non-functional requirements to support elicitation and analysis will be studied.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Graded

Credit Hours:3

ACE:

CSCE869
Secure Software EngineeringCrosslisted with CSCE 469, SOFT 469

Prerequisites: SOFT 261, CSCE 361, RAIK 284H, or graduate standing.

Description: Introduction to concepts, principles and state-of-the-art methods in creating and maintaining secure software systems.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option

Credit Hours:3

ACE:

CSCE870
Computer GraphicsCrosslisted with CSCE 470

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H; MATH 314

Description: Display and recording devices; incremental plotters; point, vector, and character generation; grey scale displays, digitizers and scanners, digital image storage; interactive and passive graphics; pattern recognition; data structures and graphics software; the mathematics of three dimensions; homogeneous coordinates; projections and the hidden-line problem.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$20

Credit Hours:3

ACE:

CSCE871
Computational Methods in BioinformaticsCrosslisted with CSCE 471

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H.

Description: Introduction to computational methods for tackling challenges in biological data analysis and modeling and understanding complex systems at the molecular and cellular level. The main topics include bio-sequence analysis, motif finding, structure prediction, phylogenic inference, regulation network modeling, and high-throughput omics data analysis.

This course is a prerequisite for: CSCE 971

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Offered:SPRING

Credit Hours:3

ACE:

CSCE872
Digital Image ProcessingCrosslisted with CSCE 472

Prerequisites: A grade of "Pass" or C or better in CSCE 156, SOFT 161, RAIK 184H or CSCE 311 or equivalent programming experience.

A grade of "Pass" or C or better in CSCE 156, SOFT 161, RAIK 184H or CSCE 311 or equivalent programming experience.

Description: Digital imaging systems, digital image processing, and low-level computer vision. Data structures, algorithms, and system analysis and modeling. Digital image formation and presentation, image statistics and descriptions, operations and transforms, and system simulation. Applications include system design, restoration and enhancement, reconstruction and geometric manipulation, compression, and low-level analysis for computer vision.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$10

Credit Hours:3

ACE:

CSCE873
Computer VisionCrosslisted with CSCE 473

Prerequisites: CSCE 156, SOFT 161, or CSCE 311 or equivalent programming experience.

A grade of "Pass" or C or better in CSCE 156, SOFT 161, RAIK 184H or CSCE 311 or equivalent programming experience.

Description: High-level processing for image understanding and high-level vision. Data structures, algorithms, and modeling. Low-level representation, basic pattern-recognition and image-analysis techniques, segmentation, color, texture and motion analysis, and representation of 2-D and 3-D shape. Applications for content-based image retrieval, digital libraries, and interpretation of satellite imagery.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$40

Credit Hours:3

ACE:

CSCE874
Introduction to Data MiningCrosslisted with CSCE 474

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H; STAT 380, ECEN 305 or RAIK 270H.

Requires the completion of a project involving the application of data mining techniques to real-world problems.

Description: Data mining and knowledge discovery methods and their application to real-world problems. Algorithmic and systems issues. Statistical foundations, association discovery, classification, prediction, clustering, spatial data mining and advanced techniques.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option

Credit Hours:3

ACE:

CSCE875
Multiagent SystemsCrosslisted with CSCE 475

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H.

Description: Distributed problem solving and planning, search algorithms for agents, distributed rational decision making, learning multiagent systems, computational organization theory, formal methods in Distributed Artificial Intelligence, multiagent negotiations, emergent behaviors (such as ants and swarms), and Robocup technologies and real-time coalition formation.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option

Credit Hours:3

ACE:

CSCE876
Introduction to Artificial IntelligenceCrosslisted with CSCE 476

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H.

Description: Introduction to basic principles, techniques, and tools now being used in the area of machine intelligence. Languages for AI programming introduced with emphasis on LISP. Lecture topics include problem solving, search, game playing, knowledge representation, expert systems, and applications.

This course is a prerequisite for: CSCE 976

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$40

Credit Hours:3

ACE:

CSCE877
Cryptography and Computer SecurityCrosslisted with CSCE 477

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H; MATH 314.

Description: Introductory course on cryptography and computer security. Topics: classical cryptography (substitution, Vigenere, Hill and permutation ciphers, and the one-time pad); Block ciphers and stream ciphers; The Data Encryption Standard; Public-key cryptography, including RSA and El-Gamal systems; Signature schemes, including the Digital Signature Standard; Key exchange, key management and identification protocols.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$35

Credit Hours:3

ACE:

CSCE878
Introduction to Machine LearningCrosslisted with CSCE 478

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H.

STAT 380, ECEN 305, or RAIK 270H recommended.

Description: Introduction to the fundamentals and current trends in machine learning. Possible applications for game playing, text categorization, speech recognition, automatic system control, date mining, computational biology, and robotics. Theoretical and empirical analyses of decision trees, artificial neural networks, Bayesian classifiers, genetic algorithms, instance-based classifiers and reinforcement learning.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$50

Credit Hours:3

ACE:

CSCE879
Introduction to Deep LearningCrosslisted with CSCE 479

Prerequisites: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H.

Completing STAT 380/RAIK 270H or ECEN 305 prior to taking this course is recommended.

Description: Fundamentals and current trends in deep learning. Backpropagation, activation functions, loss functions, choosing an optimizer, and regularization. Common architectures such as convolutional, autoencoders, and recurrent. Applications such as image analysis, text analysis, sequence analysis, and reinforcement learning.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Offered:SPRING
Course and Laboratory Fee:$50

Credit Hours:3

ACE:

CSCE891
Internship in Computer Practice

Description: Experiential learning in conjunction with an approved industrial or governmental agency under the joint supervision of an outside sponsor and a faculty member. A detailed project proposal must be prepared by the student and approved by the department prior to the start of the project. A final report must be submitted.

Course details
Credit Hours:1-3
Max credits per semester:3
Max credits per degree:6
Grading Option:Pass No-Pass
Course and Laboratory Fee:$10

Credit Hours:1-3

ACE:

CSCE892
Special Topics in Computer ScienceCrosslisted with CSCE 492

Prerequisites: CSCE 310/310H, CSCE 311, SOFT 260/260H/RAIK 283H, or graduate standing.

Description: Aspects of computers and computing not covered elsewhere in the curriculum presented as the need arises.

Course details
Credit Hours:1-3
Max credits per semester:3
Max credits per degree:6
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$40

Credit Hours:1-3

ACE:

CSCE897
Masters Project

Prerequisites: Permission of adviser

Designed for students pursuing a non-thesis option (Option III) to work on a project under the supervision of a member of the computer science and engineering faculty.

Course details
Credit Hours:1-6
Max credits per semester:6
Max credits per degree:6
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$10

Credit Hours:1-6

ACE:

CSCE898
Computer ProblemsCrosslisted with CSCE 498

Prerequisites: Senior or graduate standing.

Description: Independent project executed under the guidance of a member of the faculty of the Department of Computer Science. Solution and documentation of a computer problem demanding a thorough knowledge of either the numerical or nonnumerical aspects of computer science.

Course details
Credit Hours:1-6
Max credits per semester:6
Max credits per degree:6
Grading Option:Grade Pass/No Pass Option

Credit Hours:1-6

ACE:

CSCE899
Masters Thesis

Prerequisites: Admission to masters degree program and permission of major adviser

Course details
Credit Hours:1-10
Max credits per semester:10
Max credits per degree:99
Grading Option:Grade Pass/No Pass Option

Credit Hours:1-10

ACE:

CSCE913
Advanced Topics in Database Systems

Prerequisites: CSCE 813

Description: Database system topics, coverage varying from year to year. Examples: Normalization theory; statistical databases; distributed databases; failure recovery; implementation issues. Readings in the current literature.

This course is a prerequisite for: CSCE 914

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option

Credit Hours:3

ACE:

CSCE914
Constraint Database Systems

Prerequisites: CSCE 813 or 913 and permission

Description: Introduction to constraint database systems. Constraint data model, constraint query languages, query optimization and evaluation, constraint data storage and applications. Assignments in both use and the implementation of systems.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option

Credit Hours:3

ACE:

CSCE915
Computational Linguistics

Description: Principles of language modeling, parsing, machine translation, computational and statistical methods in comparative linguistics, ancient and modern scripts, computational methods for script comparison, laws of phonological change and language evolution, language families and script families.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Offered:SPRING

Credit Hours:3

ACE:

CSCE921
Advanced Constraint Processing

Prerequisites: CSCE421/821

Description: A continuation of the course on Foundations of Constraint Processing (CSCE 421/821). Intended for students with some sophistication and considerable interest in exploring methods for designing and using algorithms useful for solving combinatorial problems. The goal of the course is to study, analyze and critique seminal and recent research papers. Projects are optional.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option

Credit Hours:3

ACE:

CSCE923
Development and Analysis of Efficient Algorithms

Prerequisites: CSCE 423/823

Description: Analysis of performance of algorithms on random access machines and Turing machines, data structures for design of efficient algorithms, sorting algorithms, divide and conquer strategies, algorithms on graphs and their performance bounds, pattern matching algorithms, achievable lower bounds on complexity, NP complete problems.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$10

Credit Hours:3

ACE:

CSCE924
Graph Algorithms

Prerequisites: CSCE 423/823

Description: Review concepts related to analysis of algorithms and graph theory. Classical graph theoretic algorithms including Eulerian paths, Hamiltonian circuits, shortest paths, network flows and traveling salesman. Planar graph algorithms. Theory of alternating chains and algorithms for graph matching problems. Approximate and parallel algorithms. Applications of graph algorithms to engineering and physical sciences.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$10

Credit Hours:3

ACE:

CSCE925
Scheduling Theory

Prerequisites: Permission

Description: Scheduling theory with particular emphasis to its application in computer science. Polynomial-time algorithms, NP-hardness proofs and analysis of heuristics. Minimization of makespan and mean flow time. Real-Time scheduling.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option

Credit Hours:3

ACE:

CSCE936
Cyber-Physical Systems

Prerequisites: Permission.

Description: Introduction to the research, design, and analysis of cyber-physical systems - the tight integration of computing, control, and communication. Applications for CPS research are far reaching and span medical devices, smart buildings, vehicle systems, and mobile computing.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option

Credit Hours:3

ACE:

CSCE942
Numerical Analysis III

Prerequisites: CSCE/MATH 840 or 841 or 847

Description: Advanced topics in numerical analysis.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option

Credit Hours:3

ACE:

CSCE952
Advanced Computer Networks

Prerequisites: CSCE 862

Description: Advanced-level course on the recent development in computer networks. Integrated Services Digital Networks (ISDN), Broadband-ISDN and Asynchronous Transfer Mode (ATM), Multimedia Source and Traffic Characteristics, Source Policing, Scheduling and Quality of Service, Wireless Communication, Tracking of Mobile Users, Performance Computer networks.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$10

Credit Hours:3

ACE:

CSCE953
Optical Communication Networks

Prerequisites: CSCE 462/862 or equivalent

Description: State-of-the-art optical communication networks, encompassing traditional networks operating on optical fiber and next-generation networks such as wavelength division multiplexed (WDM) and optical time division multiplexed (OTDM) networks. Fundamentals of optical network design, control, and management. Optical network design and modeling, routing and wavelength assignment algorithms, optical network simulation tools and techniques.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option

Credit Hours:3

ACE:

CSCE954
Advanced Wireless Communications and Networks

Prerequisites: CSCE 465/865 or ECEN 462/862.

Description: Covers the foundation of future generation of wireless systems, principles of physical-layer wireless channels, modulation techniques, and multi-antenna communication systems, architectures of the fifth- generation wireless communications networks, standards and spectrum regulations for existing wireless communication networks, and key enabling technologies and their technical details. Read, review, and discuss research from various emerging directions in next-generation wireless networks. For selected topic in the advanced wireless networks, understand the motivation, requirements, and the state-of-the-art in research, development, and deployment.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Offered:FALL

Credit Hours:3

ACE:

CSCE961
Coding Theory

MATH 817 desirable

Description: Channels, introduction to information theory, Shannon's fundamental theorem, Linear codes, Hamming codes, Reed-Muller codes, cyclic codes, idempotents, BCH codes, Reed-Solomon codes, Quadratic residue codes, perfect single-error correcting codes, Sphere packings, the Golay codes, Lloyds theorem, nonexistence theorems, weight enumerators, the MacWilliams equation, association schemes, quasi-symmetric designs, polarities of designs, extension of graphs, self-orthogonal codes and designs.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option

Credit Hours:3

ACE:

CSCE962
Advanced Software Engineering

Prerequisites: CSCE 361 or CSCE 361H

Description: Recent advances in the field of software engineering. Software reuse, artificial intelligence approaches to software design, usability and requirements engineering, and design environments. Computer tools for the design of software products. Analysis of software artifacts. Coordination in distributed software development. Readings from current software engineering literature discussed and evaluated. Students will participate in a group project which investigates specific software engineering research topics.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$10

Credit Hours:3

ACE:

CSCE970
Pattern Recognition

Prerequisites: CSCE 310 or 311; MATH 314/814; MATH/STAT 380 or STAT 880 or ELEC 305

Description: Introduction to statistical decision theory, adaptive classifiers, supervised and non-supervised training. Pattern recognition systems: Transducers, feature extractors, decision units. Applications to optical character recognition, speech processing, remote sensing.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$10

Credit Hours:3

ACE:

CSCE971
Advanced Bioinformatics

Prerequisites: CSCE 471/871

Description: Advanced algorithmic techniques for bioinformatics. Development and analysis of string matching, graph theoretic and dynamic programming techniques applied to systems and computational biology problems such s multiple sequence alignment, alignment of DNA and protein sequences, genome rearrangements, and phylogeny and haplotypes.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option

Credit Hours:3

ACE:

CSCE975
Advanced Multiagent Systems

Background in artificial intelligence (AI) or MAS is preferred.

Description: Study of advanced multiagent systems (MAS) in theory, applications, and connections to other AI disciplines, notably in uncertainty reasoning and machine learning. The course is a hybrid of project-based and seminar-based presentations with follow-up discussions. Involve developing and implementing MAS solutions for real-world problems or simulations.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option

Credit Hours:3

ACE:

CSCE976
Advanced Artificial Intelligence

Prerequisites: CSCE 876

For students with some sophistication and considerable interest in exploring methods of designing and using algorithms useful for finding adequate answers to combinatorically large problems that require largely symbolic rather than numeric computing.

Description: Study, analyze and critique basic and current research papers and to engage in artificial intelligence projects and experiments either alone or in small groups. Artificial intelligence environments, tools and expert system building. Class participation will be encouraged for the review of the more recent AI literature.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$10

Credit Hours:3

ACE:

CSCE990
Seminar

Prerequisites: Permission

Description: Frontiers of an area of computer science.

Course details
Credit Hours:1-3
Max credits per semester:3
Max credits per degree:24
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$10

Credit Hours:1-3

ACE:

CSCE991
Directed Doctoral Research

Prerequisites: Admission to the doctoral degree program and permission.

Must be completed successfully before registering for CSCE 999 Doctoral Dissertation Research.

Description: Plan and execute a component(s) of a research project, such as a literature review, system development, exploratory experimentation, or proposal development, under supervision of a graduate faculty advisor, as an initial step for doctoral dissertation research. Write a formal report on the research project and its intellectual merit and potential impact. Successfully complete the doctoral program qualifying examination.

Course details
Credit Hours:1-3
Max credits per semester:3
Max credits per degree:9
Grading Option:Pass No-Pass

Credit Hours:1-3

ACE:

CSCE996
Research Problems Other Than Thesis

Description: Investigation of minor research problems to introduce graduate students to the methods of research in computer science by assigning a problem which is of research interest but within the capacity of a graduate student to complete within a semester.

Course details
Credit Hours:1-6
Max credits per semester:6
Max credits per degree:6
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$10

Credit Hours:1-6

ACE:

CSCE999
Doctoral Dissertation

Prerequisites: Admission to doctoral degree program and permission of supervisory committee chair

Course details
Credit Hours:1-24
Max credits per semester:24
Max credits per degree:99
Grading Option:Grade Pass/No Pass Option
Course and Laboratory Fee:$10

Credit Hours:1-24

ACE: