Prereq: 4 years high school mathematics.
Description:Computer based problem solving and programming fundamentals using a popular high-level programming language and the creation and manipulation of media including audio, video and images.? Computer Science topics including algorithms, data structures, mathematics, information encoding and object-oriented programming.
CSCE101 Fundamentals of Computer Science (3 cr) Lect 3
Prereq: Use of computing applications, high school algebra.
Description: (ACE 3) Introduction to problem solving with computers, including problem analysis and specification, algorithm development, program design, simulations based on knowledge of physical world, and implementation in a high-level programming environment. The course also covers topics that include hardware, software, software engineering, networks, and impacts of computing on society. This course is intended for non-CSCE majors and prospective CSCE majors who desire a deeper understanding of computers and the work of computer scientists.
CSCE101L Fundamentals of Computing Laboratory (1 cr) Lab 3
Prereq: CSCE 101 or parallel.
Description: [ES] Will not count towards the requirements for a major or minor in computer science and computer engineering. A variety of computer oriented exercises using many software tools is presented which supplement and are coordinated with the topics taught in CSCE101. Students are exposed to programming, operating systems, simulation software, spreadsheets, database software, the Internet, etc. Applications software introduced in the context of tools to explore the computer science topics and as alternatives to traditional programming languages. Emphasis on learning by experiment, with a goal of developing problem solving skills. A major component is the study of a programming language-the choice of which may vary by course section.
CSCE155A Computer Science I (3 cr) Lec 3, Lab 1.
Prereq: Appropriate score on the CSE Placement Exam or CSCE101; MATH103 or equivalent.
Description:Recommended for students majoring in computer science or computer engineering. Introduction to problem solving with computers. Topics include problem solving methods, software development principles, computer programming, and computing in society.
CSCE155E Computer Science I: Systems Engineering Focus 3 cr Lec 3, Lab 1.
Prereq: Appropriate score on the CSE Placement Exam; MATH 103 or equivalant
Description:Recommended for students interested in systems engineering, such as operating systems, mobile computing, and embedded devices. Introduction to problem solving with computers. Topics include problem solving methods, software development principles, computer programming, and computing in society.
CSCE155H Honors: Computer Science I (3cr) Lec 3; lab 1
Prereq: Good standing in the University Honors Program or by invitation; appropriate score on the CSE Placement Exam or CSCE 101; MATH 103 or equivalent.
Description:Recommended for students majoring in computer science or computer engineering. Introduction to problem solving with computers. Topics include problem solving methods, software development principles, computer programming, and computing in society.
CSCE155N Computer Science I: Engineering and Science Focus (3 cr) Lec 3, lab 1
Prereq: Appropriate score on the CSE Placement Exam; MATH 103 or equivalent
Description:Recommended for students interested in numerical and graphical applications in engineering and science, such as applied physics, working with time-sequence data, and matrix applications. Introduction to problem solving with computers. Topics include problem solving methods, software development principles, computer programming, and computing in society.
CSCE155T Introduction to Computer Science I 3 cr
Prereq: Appropriate score on the CSE Placement Exam; MATH 103 or equivalent
Description:Recommended for students interested in data and information processing, such as library and database applications, online commerce, and bioinformatics. Introduction to problem solving with computers. Topics include problem solving methods, software development principles, computer programming, and computing in society.
CSCE156 Computer Science II (4 cr) Lec 3, lab 2.
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 multilayer application with SQL database.
CSCE156H Honors: Computer Science II (4 cr) Lec 3, lab 2.
Prereq: Good standing in the University Honors Program or by invitation; appropriate score on the CSE Placement Exam or a grade of
Description: CSCE156H covers the same topics as CSCE156, but in greater depth. Laboratories supplement the lecture material and give an opportunity to practice concepts.
For course description, see CSCE156.
CSCE183H, RAIK183H Honors: Coputer Problem Solving Essentials (4 cr) Lec 3, rct 1.
Prereq: Good standing in the University Honors Program; admission to the Jeffrey S. Raikes School of Computer Science and Management.
Description:CSCE/RAIK 183His the first course in the Jeffrey S. Raikes School of Computer Science and Management core. CSCE/RAIK183 has programming laboratory activities. Introduction to problem solving with computers. Problem analysis and specification, algorithim development, program design, and implementation. JAVA in a Windows platform.
CSCE184H, RAIK184H Honors: Software Development Essentials (4 cr) Lec 4
Prereq: Good standing in the University Honors Program; admission to the Jeffrey S. Raikes School of Computer Science and Management; and CSCE/RAIK 183H.
Description:CSCE/RAIK184H is the second course in the Jeffrey S. Raikes School of Computer Science and Management core. Problem solving with computers. Problem analysis and specification, data structures, relational databases, algorithm development, and program design and implementation. Discrete mathematics topics, propositional and predicate logic, sets, relations, functions, and proof techniques. C++, SQL, Windows, Stand Template Library, and Software Development Principles.
CSCE190 Special Topics in Computer Science (1-3 Cr. Max 6)
Prereq: Permission
Description: CSCE190 will not count towards a major or minor in computer science and computer engineering.
Aspects of computers and computing at the freshman level for non-computer science and computer engineering majors and/or minors. Topics will vary.
CSCE196 Special Topics in Computer Science 1-3 cr, max 6
Prereq: Permission
Description: Aspects of computers and computing for computer science and computer engineering majors and minors. Topics vary.
CSCE230 Computer Organization (3 cr) Lec 3, rct1.
Prereq: A grade of 'P' or 'C' or better in CSCE 155A, CSCE 155E, CSCE 155H, CSCE 155N, or CSCE 155T or equivalent knowledge of a high-level programming language; parallel CSCE 230L.
Description:ACE SLO 8 is met if CSCE 230 and either CSCE 486 or CSCE 488 are completed. Introduction to organization and structure of computer systems. Boolean logic, digital arithmetic, processor organization, machine language programming, input/output, memory organization, system support software, communication, and ethics.
CSCE230H Honors: Computer Organization (3 cr) Lec 4
Prereq: Good Standing in UNL Honors Program or by invitation; grade of 'P' or 'C' or better in CSCE 155A, CSCE 155E, CSCE 155H, CSCE 155N, or CSCE 155T or equivalent knowledge of a high-level programming language; parallel CSCE 230L.
Description: [ES][IS] CSCE230H covers the same topics as CSCE230, but in greater depth.
For course description, see CSCE230.
CSCE230L Computer Organization Laboratory (1cr) Lab 2
Prereq: A grade of ?P? or ?C? or better in CSCE 155A, CSCE 155E, CSCE 155H, CSCE 155N, or CSCE 155T or equivalent knowledge of a high-level programming language; parallel CSCE 230 or 230H.
Description:Includes a project designing and implementing a processor. Computer-aided tools to provide practice and reinforcement of concepts and techniques learned in CSCE 230 or 230H. Assembler programming and arithmetic and logic function design.
CSCE235 Introduction to Discrete Structures (3 cr) Lec 3, rct 1.
Prereq: CSCE 155A, 155E, 155H, 155N, or 155T; MATH 106/106H or equivalent.
Description:Theoretical concepts with programming assignments. Survey of elementary discrete mathematics. Elementary graph and tree theories, set theory including relations and functions, propositional and predicate logic, methods of proof, induction, recurrence relations, principles of counting, elementary combinatorics, and asymptotic notations. Homework will emphasize theoretical concepts and will be augmented with programming assignments.
CSCE236 Introduction to Embedded Systems (3 cr) Lec 3
Prereq: CSCE230
Description:Basic hardware and software concepts of embedded microprocessor systems and interfacing with other hardware components. Design and build simple embedded computer systems, configure them to run real-time operating systems, write device drivers in high-level languages, and develop applications to run on them.
CSCE251 Unix Programming (1 cr) Lec 1, Lab 1
Prereq: Familiarity with at least one high level programming language.
Description:Introduction to the Unix operating system. Unix file system. Unix tools and utilities. Shell programming.
CSCE251K C Programming (1 cr) Lec 1
Prereq: Familiarity with one high-level programming language
Description:Required of computer science and engineering majors who do not know C, but who have knowledge of another high-level language.
Introduction to the C programming language.
CSCE252A FORTRAN Programming (1 cr) Lec 1 (Not Currently Offered)
Prereq: Prereq: Familiarity with one high-level programming language.
Description: Credit towards the degree may be earned in only one of:? CSCE150A or CSCE150E or CSCE150M or CSCE252A.
Principles and practice of FORTRAN programming.
CSCE283H, RAIK283H Data Structures and Algorithms (3 cr) Lec 3, rct 2.
Prereq: Good standing in the University Honors Program; admission to the Jeffrey S. Raikes School of Computer Science and Management; CSCE/RAIK 184H.
Description:CSCE/RAIK 283H is the third course in the Jeffrey S. Raikes School of Computer Science and Management core. Advanced data structures and algorithms that solve common problems and standard approaches to solving new problems. Analysis and comparison of algorithms, asymptotic notation and proofs of correctness. Discrete mathematics. Induction and principles of counting and combinatorics as foundation for analysis.
CSCE284H, RAIK284H Honors: Foundations of Computer Systems (4 cr) Lec 4, rct 1.
Prereq: Good standing in the University Honors Program; admission to the Jeffrey S. Raikes School of Computer Science and Management; and CSCE/RAIK283H.
Description:Fourth course in the Jeffrey S. Raikes School of Computer Science and Management core. Introduction to fundamental organization and structure of computer systems. Topics include Boolean logic, data representation, processor organization, input/output, memory organization, system support software and communication.
CSCE290 Special Topics in Computer Science 1-3 cr, max 6
Prereq: Permission
Description:CSCE290 will not count towards a major or minor in computer science and engineering.
Aspects of computers and computing for non-computer science and computer engineering majors and/or minors. Topics vary.
CSCE296 Special Topics in Computer Science 1-3 cr, max 6
Prereq: Permission
Description: Aspects of computers and computing for computer science and computer engineering majors and minors. Topics vary.
CSCE301H, BSAD301H, RAIK301H Honors: RAIK Design Studio I (3 cr) Lec 3, lab.
Prereq: Good standing in the University Honors Program or by invitation; admission to the Jeffrey S. Raikes School of Computer Science and Management; BSAD/RAIK 282H; and CSCE/RAIK 284H.
Description:First semester of Jeffrey S. Raikes School of Computer Science and Management design studio sequence.Application of Jeffrey S. Raikes School of Computer Science and Management core content in a team oriented, project management setting. Complete projects in consultation with private and public sector clients.
CSCE302H, BSAD302H, RAIK302H Honors: RAIK Design Studio II (3 cr) Lec 3, lab
Prereq: Good standing in the University Honors Program or by invitation; admission to the Jeffrey S. Raikes School of Computer Science and Management; and BSAD/CSCE/RAIK301H
Description:Second semester in the Jeffrey S. Raikes School of Computer Science and Management design studio sequence.Application of Raikes School core content in a team oriented, project management setting. Complete projects in consultation with private and public sector clients.
CSCE310 Data Structures and Algorithms (3 cr) Lec 3, rct 1.
Prereq: Grades of 'P' or 'C' or better in CSCE 156/156H and 235/235H.
Description: Theoretical concepts with programming assignments.
A review of algorithm analysis, asymptotic notation, and solving recurrencerelations. Advanced data structures and their associated algorithms, heaps, priority queues, hash tables, trees, binary search trees, and graphs. Algorithmic techniques, divide and conquer, transform and conquer, space-time trade-offs, greedy algorithms, dynamic programming, randomization,and distributed algorithms. Introduction to computability and NP-completeness.
CSCE311 Data Structures and Algorithms for Informatics - (3 cr) Lec 3, rct 1 (3 cr) Lec 3, rct 1
Prereq: Grade of 'Pass' or 'C' or better in CSCE155.
Description:Students may not receive credit for both CSCE310 and 311. CSE majors must take CSCE 310.
An introduction to algorithms and data structures for informatics. Foundational coverage of algorithms includes both problems (such as indexing, searching, sorting, and pattern matching) and methods (such as greedy, divide-and-conquer, and dynamic programming). Foundational coverage of data structures includes lists, tables, relational databases, regular expressions, trees, graphs, and multidimensional arrays. The topics will be studied in the context of informatics applications.
CSCE322 Programming Language Concepts (3 cr) Lec 3
Prereq: CSCE 156 or 311; CSCE 230.
Description:List-processing, string-processing, and other types of high-level programming languages. Fundamental concepts of data types, control structures, operations, and programming environments of various programming languages. Analysis, formal specification, and comparison of language features.
CSCE335, ELEC370 Digital Logic Design 3 cr.
Prereq: CSCE 230 or ELEC 121
Description: Combinational and sequential logic circuits. MSI chips, programmable logic devices (PAL, ROM, PLA) used to design combinational and sequential circuits. CAD tools. LSI and PLD components and their use. Hardware design experience.
CSCE340, CSCE840 Numerical Analysis I (3 cr) Lec 3.
Prereq: Grade of
Description:Credit toward the degree may be earned in only one of the following:? CSCE/MATH340/840 and ENGM480/880.
Algorithm formulation for the practical solution of problems, interpolation, roots of equations, differentiation, and integration. Effects of finite precision.
CSCE351 Operating Systems Kernels (3 cr) Lec 2, lab 2
Prereq: CSCE 230, 230L; CSCE 310 or 311.
Description:Lab content reinforces concepts through practice.
Design and implementation of operating system kernels. Bootstrapping and system initialization, process context switching, I/O hardware and software, DMA, I/O polling, interrupt handlers, device drivers, clock management. Substantial programming implementing or extending an instructional operating system kernel.
CSCE361 Software Engineering (3 cr) Lec 3
Prereq: CSCE 310 or 311.
Description: Requires participation in a group design and implementation of a software project.
Techniques used in the disciplined development of large software projects. Software requirements analysis and specifications, program design, coding and integration testing, and software maintenance. Software estimation techniques, design tools, and complexity metrics.
CSCE378 Human-Computer Interaction (3 cr)
Prereq: CSCE 156 or 311; MATH/STAT 380 or ELEC 305 recommended.
Description:Knowledge and techniques useful in the design of computing systems for human use. Includes models of HCI, human information processing characteristics important in HCI, computer system features, such an input and output devices, information presentation, task analysis, prototyping and the iterative design cycle, user interface implementation, interface evaluation.
CSCE378H Honors: Human-Computer Interaction (3 cr) Lec 3 (Not Currently Offered)
Prereq: CSCE310 or CSCE283H. Good standing in the University Honors Program or by instructor permission.
Description: Honors: Human-Computer Interaction (3 cr) Lec 3. Prereq: CSCE310 or CSCE283H. Good standing in the University Honors Program or by Instructor permission. CSCE378H covers the same topics as CSCE378, but in greater depth or with topical emphasis. For course description, see CSCE378.
CSCE383H, RAIK383H Honors: Fundamentals of Software Engineering ( 3 cr) Lec 3
Prereq: Good standing in the University Honors Program; admission to the Jeffrey S. Raikes School of Computer Science and Management; CSCE/RAIK284H.
Description:Fifth course in the Jeffrey S. Raikes School of Computer Science and Management core. Proper principles and methods of engineering software. Requirements, design, implementation, management and software evolution.
CSCE384H, RAIK384H Honors: Applied Numerical Analysis (3 cr) Lec 3 (Not Currently Offered)
Prereq: Good standing in the University Honors Program; admission to the Jeffrey S. Raikes School of Computer Science and Management; and CSCE/RAIK284H; parallel BSAD/RAIK382H
Description:Sixth course in the Jeffrey S. Raikes School of Computer Science and Management core.
Application of established numerical analysis techniques to selected business and finance problems, finite difference applied to standard options or stochastic processes in modeling financial markets.
CSCE390 Special Topics in Computer Science 1-3 cr, max 6
Prereq: Permission
Description:CSCE390 will not count towards a major or minor in computer science and computer engineering.
Aspects of computers and computing for non-computer science and computer engineering majors and/or minors. Topics vary.
CSCE396 Special Topics in Computer Science 1-3 cr, max 6
Prereq: Permission
Description: Aspects of computers and computing for computer science and computer engineering majors and minors. Topics vary.
CSCE399H Honors Thesis (3 cr)
Prereq: Open to students in the honors program and to candidates for degrees with distinction, with high distinction, and with highest distinction.
Description:
CSCE401H, BSAD401H, RAIK401H Honors: RAIK Design Studio III (3 cr) Lec 3, lab.
Prereq: Good standing in the University Honors Program or by invitation; admission to the Jeffrey S. Raikes School of Computer Science and Management; and BSAD/CSCE/RAIK302H.
Description:Third semester in the Jeffrey S. Raikes School of Computer Science and Management design studio sequence.Application of Raikes School core content in a team oriented, project management setting. Complete projects in consultation with private and public sector clients.
CSCE402H, BSAD402H, RAIK402H Honors: RAIK Design Studio IV (3 cr) Lec 3, lab.
Prereq: Good standing in the University Honors Program or by invitation; admission to the Jeffrey S. Raikes School of Computer Science and Management; and BSAD/CSCE/RAIK401H
Description:Fourth semester in the Jeffrey S. Raikes School of Computer Science and Management design studio sequence.Application of Raikes School core content in a team oriented, project management setting. Complete projects in consultation with private and public sector clients.
CSCE410, CSCE810 Information Retrieval Systems (3 Cr.) Lec 3.
Prereq: CSCE 310 or 311.
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. Hands-on experience with a working experimental information retrieval system.
CSCE413, CSCE813 Database Systems (3 cr) Lec 3.
Prereq: CSCE 310 or 311.
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.
CSCE421, CSCE821 Foundations of Constraint Processing (3 cr) Lec 3.
Prereq: CSCE 235; CSCE 310 or 311
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.
CSCE423, CSCE823 Design and Analysis of Algorithms (3 cr)
Prereq: CSCE 235; CSCE 310 or 311
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.
CSCE424, CSCE824 Computational Complexity Theory (3 cr)
Prereq: CSCE 235; CSCE 310 or 311
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.
CSCE425, CSCE825 Compiler Construction (3 cr) Lec 3.
Prereq: CSCE 235; CSCE 310 or 311
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.
CSCE428, CSCE828 Automata, Computation and Formal Languages (3 cr) Lec 3.
Prereq: CSCE 235; CSCE 310 or 311
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.
CSCE430, CSCE830 Computer Architecture (3 cr) Lec 3.
Prereq: Prereqs: CSCE 230, 230L; CSCE 310 or 311; Coreqs: MATH/STAT 380 or ELEC 305.
Description:Addresses the 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 processor 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.
CSCE432, CSCE832 High Performance Processor Architecture (3 cr) Lec 3
Prereq: CSCE430; MATH314; MATH/STAT380 or ELEC410.
Description:CSCE 432 assumes knowledge of computer architecture, pipelining, memory hierarchy, instruction level parallelism, and compiler principles. High performance computing at the processor level. The underlying principles and micro-architectures of contemporary high-performance processors and systems. State-of-the-art architectural approaches to exploiting instruction level parallelism for performance enhancements. Case studies of actual systems highlight real-world trade-offs and theories.
CSCE434, CSCE834 VLSI Design (3 cr) Lec 3
Prereq: CSCE335 or permission.
Description:Introduction to VLSI design using metal-oxide semiconductor (MOS) devices primarily aimed at computer science majors with little or no background in the physics or circuitry of such devices. Includes design of nMOS and CMOS logic, data-path, control unit, and highly concurrent systems as well as topics in design automation.
CSCE435, CSCE835 Cluster and Grid Computing (3 cr) Lec 3.
Prereq: CSCE 310 or equivalent programming experience
Description:CSCE 435/835 is designed for CSCE and non-CSCE students who have an interest in building or programming clusters to enhance their computationally-intense research. Build and program clusters. Cluster construction, cluster administration, cluster programming, and grid computing.
CSCE437, CSCE837 File and Storage Systems (3 cr) Lec 3
Prereq: CSCE351 or 451/851; CSCE430/830.
Description:CSCE437/837 requires the designing and implementation of a real-life file and storage system. System-level and device-level topics in the design, implementation, and use of file and storage systems. Components and organization of storage systems, disk drive hardware and firmware, multi-disk systems, RAIDs, local distributed and P2P file systems, and low-power designs.
CSCE441, CSCE841, MATH 441, MATH841 Approximation of Functions (3 cr) Lec 3 (Not Currently Offered)
Prereq: A programming language, MATH221 and 314.
Description: Polynomial interpolation, uniform approximation, orthogonal polynomials, least-first-power approximation, polynomial and spline interpolation, approximation and interpolation by rational functions.
CSCE447, CSCE847 Numerical Analysis II (3 cr) Lec 3. (Not Currently Offered)
Prereq: CSCE 340, Math 221 and 314
Description: Numerical matrix methods and numerical solutions of ordinary differential equations
CSCE451, CSCE851 Operating Systems Principles (3 cr) Lec 3
Prereq: CSCE 230 and CSCE 310.
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.
CSCE455,CSCE855 Distributed Operating Systems (3 cr) Lec 3
Prereq: CSCE451/851
Description: CSCE455/855 requires a substantial programming project in distributed systems.
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.
CSCE456, CSCE856 Parallel Algorithms and Programming (3 cr)
Prereq: CSCE 310 or 311 or equivalent programming experience
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 multi-processor machines; principles and practice in programming an existing parallel machine.
CSCE457, CSCE857 Systems Administration (3 cr) Lec 3
Prereq: CSCE310 or equivalent programming experience.
Description:CSCE 457/857 Prereqs: CSCE 310 or 311 or equivalent programming experience. Introduction to basic concepts of system administration. Topics covered include 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.
CSCE462,CSCE862 Communication Networks (3 cr) Lec 3
Prereq: CSCE 230 and 310; STAT/MATH380 or STAT880.
Description:CSCE 462/862 Prereqs: CSCE 230, 230L; CSCE 310 or 311; MATH/STAT 380 or ELEC 305. 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.
CSCE463, CSCE863 Introduction to Coding Theory (3 cr) (Not Currently Offered)
Prereq: CSCE 310, Math 314/814, Math 380 or equivalent.
Description: An introduction to the theory of Error Correcting Codes. The topics to be covered include the binary symmetric channel, probability of error, finite fields, linear codes, dual codes, parity check and generator matrices, standard array, maximum likelihood decoding, sphere packing bound, Plotkin and other bounds, Hamming codes, Perfect Codes, Cyclic codes, BCH codes, Reed-Solomon codes, Reed-Muller codes.
CSCE464, CSCE864 Internet Systems and Programming (3 cr) Lec 3
Prereq: CSCE310
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.
CSCE465, CSCE865 (865 T) Introduction to Mathematical Logic I 3 cr (Not Currently Offered)
Description: Semantical and syntactical developments of propositional logic, discussion of several propositional calculi, applications to Boolean algebra and related topics, semantics and syntax of first-order predicate logic including Godel's completeness theorem, the compactness theorem.
CSCE466, CSCE866 Software Design Methodologies 3 cr Lec 3 (Not Currently Offered)
Prereq: CSCE 310 or permission
Description: Analysis and design for software systems development, including problem analysis, requirements specification, usability, software system models, maintenance and enhancement. Understanding of methodologies and skills in the practice of design, including design and integration within existing systems. Design of both functional and structural aspects of software that is of sufficient size and complexity as to require the efforts of several people for many months.
CSCE467, CSCE867 Software Quality (3 cr) Lec 3 (Not Currently Offered)
Prereq: CSCE310 or permission
Description: Initial and ongoing software analysis, including metrics, requirements, correctness, performance, testing and validation. Frameworks and methods for software quality. Benchmarks and testing, processes for quality assurance, performance and quality models, software quality tools, testable designs and automated testing.
CSCE470, CSCE870 Computer Graphics (3 cr) Lec 3
Prereq: CSCE310 and MATH314/814
Description:CSCE 470/870 Prereqs: CSCE 310 or 311; MATH 314. 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.
CSCE471, CSCE871 Introduction to Bioinformatics (3 cr) Lec 3
Prereq: CSCE310; STAT/MATH380 or STAT880
Description:Fundamentals and trends in bioinformatics. Scoring matrices and pairwise sequence alignments via dynamic programming, BLAST, and other heuristics. Multiple sequence alignments. Applications of machine learning methods such as hidden Markov models and support vector machines to biological problems such as family modeling and phylogeny.
CSCE472, CSCE872 Digital Image Processing (3 cr) Lec 3
Prereq: CSCE156 or permission.
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.
CSCE473, CSCE873 Computer Vision (3 cr) Lec 3
Prereq: CSCE156 or permission.
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.
CSCE474, CSCE874 Introduction to Data Mining (3 cr) Lec 3
Prereq: CSCE310; STAT/MATH380 or STAT880.
Description:CSCE 474/874 Prereq: CSCE 310 or 311; MATH/STAT 380. CSCE 474/874 requires the completion of a project involving the application of data mining techniques to real-world problems. 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.
CSCE475, CSCE875 Multiagent Systems (3 cr) Lec 3
Prereq: CSCE310
Description: [IS] 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 worms), and Robocup technologies, and real-time coalition formation.
CSCE476, CSCE876 Introduction to Artificial Intelligence (3 cr) Lec 3
Prereq: CSCE310
Description:CSCE 476/876 Prereqs: CSCE 310 or 311. 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.
CSCE476H Honors: Introduction to Artificial Intelligence (3 cr) Lec 3 (Not Currently Offered)
Prereq: CSCE310 or CSCE283H. Good standing in the University Honors Program or by permission.
Description: Honors: Introduction to Artificial Intelligence (3 cr) Lec 3. CSCE476H covers the same topics as CSCE476, but in greater depth or with topical emphasis. For course description, see CSCE476.
CSCE477, CSCE877 Cryptography and Computer Security (3 cr) Lec 3
Prereq: CSCE 310, Math 314/814 or equivalent
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.
CSCE478, CSCE 878 Introduction to Machine Learning (3 cr) Lec 3
Prereq: CSCE 310 or 311
Description:Introduction to the fundamentals and current trends in machine learning. Possible applications for game playing, text categorization, speech recognition, automatic system control, data mining, computational biology, and robotics. Theoretical and empirical analyses of decision trees, artificial neural networks, Bayesian classifiers, genetic algorithms, and instance-based classifiers and reinforcement learning.
CSCE479, CSCE879 Introduction to Neural Networks (3 cr) Lec 3
Prereq: CSCE 310 or 311
Description:Introduction to the concepts, design and application of connection-based computing begins by simulating neural networks, focusing on competing alternative network architectures, including sparse distributed memories, Hopfield networks, and the multilayered feed-forward systems. Construction and improvement of algorithms used for training of neural networks addressed to reduce training time and improve generalization. Algorithms for training and synthesizing effective networks are implemented in high level language programs running on conventional computers. Emphasis on methods for synthesizing and simplifying network architectures for improved generalization. Application areas include: pattern recognition, computer vision, robotics, medical diagnosis, weather and economic forecasting.
CSCE486 Computer Science Professional Development (2 cr) Lec 1
Prereq: CSCE 361. CSCE 486 must be taken exactly one semester before CSCE 487.
Description:Prepares students for the Senior Design Project course and professional practice through familiarity and practice with current tools, resources, and technologies; professional standards, practices and ethics; and oral and written report styles used specifically in the computer science field.
CSCE487 Computer Science Design Project (3 cr) Lec 3
Prereq: CSCE 361 and CSCE 486 and senior standing
Description:Students are organized into teams to undertake a substantial design project proposed and supervised by the instructor. They will be given a broadly defined problem that requires aggregation of the technical and analytical skills obtained in other CSCE courses. The projects offered will be sufficiently complex to require team members to partition and coordinate their efforts for successful completion. Assessment in this course is based on a series of intermediate project checkpoints, oral presentations and the final project and reports. Marks will be allocated on both an individual and a team basis.
CSCE488 Computer Engineering Professional Development (2 cr) Lec 2
Prereq: JGEN 200; ELEC 362, 476 and CSCE 430. Must be taken exactly one semester before CSCE 489
Description:Must be taken exactly one semester before CSCE-489. Prepares students for the Senior Design Project course and professional practice through familiarity and practice with current tools, resources, and technologies; professional standards, practices and ethics; and oral and written report styles used specifically in the computer engineering field.
CSCE489 Computer Engineering Senior Design Project (3 cr) Lec 3
Prereq: ELEC 362 and 476; CSCE 430 and 488 (488 must be taken first and in the term previous to registering for CSCE 489.
Description:A substantial computer engineering project requiring hardware-software co-design, planning and scheduling, teamwork, written and oral communications, and the integration and application of technical and analytical aspects of computer science and computer engineering.
CSCE490, CSCE890 Special Topics in Computer Science 1-3 cr, max 6
Prereq: Permission
Description: CSCE 490/890 will not count towards a major or minor in computer science and computer engineering.
Aspects of computers and computing for non-computer science and computer engineering majors and/or minors. Topics vary.
CSCE491 Internship in Computing Practice (1-3 cr, max 6)
Prereq: CSCE310 and permission
Description: CSCE491 requires a detailed project proposal and final report. Experiential learning in conjunction with an approved industrial or governmental agency under the joint supervision of an outside sponsor and a faculty advisor.
CSCE496, CSCE896 Special Topics in Computer Science (1-3 cr per sem, max 6)
Prereq: Senior or graduate standing
Description:Aspects of computers and computing not covered elsewhere in the curriculum presented as the need arises.
CSCE496H Honors: Special Topics in Computer Science (3 cr)
Prereq: Good standing in the University Honors Program or by invitation, specific course prerequisites will vary depending on the topic.
Description:
CSCE498, CSCE898 Computer Problems 3 cr
Prereq: 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.
CSCE891 Internship in Computer Practice 1
Description: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. Experiential learning in conjunction with an approved industrial or governmental agency under the joint supervision of an outside sponsor and a faculty member.
CSCE897 Masters Project (1-6 cr)
Prereq: Permission of adviser
Description:
CSCE899 Masters Thesis 6-10
Prereq: Admission to masters degree program and permission of major adviser
Description:
CSCE910 Information Organization and Retrieval 3
Prereq: CSCE810
Description:Aspects of natural language processing on digital computers.? Analysis of information content by statistical, syntactic, and logical methods. Search and matching techniques. Automatic retrieval systems, question-answering systems. Evaluation of retrieval effectiveness.
CSCE913 Advanced Topics in Database Systems 3
Prereq: CSCE 813
Description:
Database system topics, coverage varying from year to year. Examples: Normalization theory; statistical databases; distributed databases; failure recovery; implementation issues.
CSCE914 Constraint Database Systems 3
Prereq: 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.
CSCE920 Formal Languages 3
Prereq: CSCE 820 and 828 or permission
Description:
Definition of formal grammars; arithmetic expressions and precedence grammars, context-free and finite-state grammars. Algorithms for syntactic analysis; recognizers, backtracking, operator precedence techniques. Semantics of grammatical constructs; reductive grammars. Floyd productions, simple syntactical compilation. Relationship between formal languages and automata.
CSCE923 Development and Analysis of Efficient Algorithms 3
Prereq: CSCE 820 and 827
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.
CSCE924 Graph Algorithms 3
Prereq: CSCE 827, MATH 852, or permission
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.
CSCE925 Scheduling Theory 3
Prereq: 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.
CSCE930 Advanced Computer Architecture 3
Prereq: CSCE 830
Description:
Recent advances in computer architecture including the effects of VLSI and methods of improving performance. Parallelism, pipelining, vector and array processors, multiprocessors and distributed processors, and data-flow architectures.
CSCE932 Fault-Tolerance: Testing and Testable Design 3
Prereq: CSCE 834 or permission
Description:
Increasing density of microelectronic circuits makes them harder to test during production and field operation. Theory and techniques developed to solve this problem. Faults and fault modeling; algorithms for test generation and fault simulation; built-in-self-test methods and standards; design for testability; and self-checking circuits.
CSCE933 Fault-Tolerance: System Design and Analysis 3
Prereq: CSCE 830 or permission
Description:
Theory and practice of creating extremely dependable digital systems through on-line fault-tolerance. Emphasizes modular redundancy in hardware and software to permit detection, masking, and removal of faulty components. Case studies from aerospace, banking, and other disciplines. Fault classification, error detection and diagnosis, dependability metrics, Byzantine Agreement, design trade-offs, and system simulation and modeling (esp. Markov).
CSCE935 Mathematical Theory of Finite Automata 3
Description:
Introductory course in automata theory in which the behavior and structure of automata discussed.
CSCE942 Numerical Analysis III 3
Prereq: CSCE/MATH 840 or 841 or 847 or permission
Description:
Advanced topics in numerical analysis
CSCE952 Advanced Computer Networks 3
Prereq: 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.
CSCE953 Optical Communication Network 3
Prereq: CCE 462/862 or equivalent
Description: This course presents the state-of-the-art in the field of "Optical communication networks" which encompasses traditional networks operating on optical fiber as well as the next-generation networks such as wavelength division multiplexed (WDM) and optical time division multiplexed (OTDM) networks. The course will provide students with a fundamental understanding of optical network design, control, and management. The topics which will be covered in this course include: Optical network design, optical network modeling, routing and wavelength assignment algorithms, optical network simulation tools and techniques (including OPNET and SIMON simulators). An additional important focus this year will be on Optical network security and the emerging fields of Optical Burst Switching (OBS) and EPONs (Ethernet Passive Optical Networks).
CSCE961 Coding Theory 3
Prereq: 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.
CSCE962 Advanced Software Engineering 3
Prereq: CSCE 361
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.
CSCE963 Software Process Engineering 3
Prereq: CSCE 361 or permission
Description:
Engineering of the software development process including software life-cycle, maturity models, process programming, and process management. Both theory and practice of engineering large, long-lived software systems. Process analysis, modeling, workflows, standards, process environments and tools, automation, and organizational context. Case studies illuminate the application of software process theory to engineering practice. Teams analyze and develop software management plans and tools.
CSCE966 Software Architecture and Frameworks 3
Prereq: CSCE 866 or permission
Description:
CSCE970 Pattern Recognition 3
Prereq: MATH 814, STAT 880, CSCE 810, or equivalent
Description:
Introduction to statistical decision theory, adaptive classifiers, supervised and nonsupervised training. Pattern recognition systems: transducers, feature extractors, decision units. Applications to optical character recognition, speech processing, remote sensing.
CSCE971 Advanced Bioinformatics 3
Prereq: 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.
CSCE973 Support Vector Machines Lec 3
Prereq: CSCE 310; STAT/MATH 380 or STAT 880; MATH 314/814
Description:Core theory of the machine learning technique called support vector machines. Margin, kernels, and the formulation of a machine learning problem as an optimization problem that can be solved optimally. Implementation issues, kernel design, the appropriateness of various kernels for different applications, and regularization.
CSCE974 Genetic Algorithms 3
Prereq: CSCE 310 and 876 For students taking this course, no biological sciences background is needed. However, a knowledge of genetic principles may help student to improve current algorithms.
Description:
Introduction of the motivation and current implementations of advanced genetic algorithms. These algorithms are built on basic principles borrowed from biology. Illustrates how a novel, implicitly-parallel search is implemented to obtain solutions for combinatorically-difficult problems.
CSCE975 Computational Algebra 3
Prereq: MATH 817, CSCE 310, or permission
Description:
History of Symbolic and Algebraic Computation, Applications of Computer Algebra Systems to scientific problems. Survey of Symbolic Systems MACSYMA, CAYLEY, CAS, SOGOS, Computational Group Theory Algorithms and their complexity: Coset enumeration, bases and strong generators and the Schreier-Sims algorithm. Centralizer, normalizer algorithms, p-sylow calculus, conjugacy classes, and characters of groups, permutation group algorithms, characters of the symmetric group, maximal subgroups of a group. Transitive and primitive extensions and the Hecke Ring relations. Word problems, lattice dynamical problems, crystallography and other applications
CSCE976 Artificial Intelligence 3
Prereq: CSCE 876 or equivalent
Description:
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. It will be assumed students are highly proficient in one or more high-level computer languages and either are or will be able to function in functional and descriptive languages such as LISP and PROLOG. 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.
CSCE977 Data Encryption 3
Prereq: Prereq: STAT 880, CSCE 235 or MATH 817 or permission
Description:
History of public cryptology; elements of statistics, combinatorics, number theory, group theory; symmetric and asymmetric cryptosystems, “trap door” functions; public key cryptosystems; RSA and knapsack; levels of cryptographic security; computational complexity of algorithms; National Bureau of Standards-DES (Data Encryption Standard); block and stream cyphers; cypher key management; protection of proprietary software and data.
CSCE978 Human Factors in Computer Systems 3
Prereq: Prereq: Permission
Description:
Human factors area of computer science which has to do with human-computer communication and how to facilitate it. Introduces the behavioral and linguistic background to human factors studies. Human factors in computer systems, including programming, languages and systems, text editing and word processing, command languages, menu-driven systems, natural language interfaces, direct manipulation systems, response times, and speech I/O. Readings from the human factors literature.
CSCE979 Advances in Neural Networks and Genetic Algorithms 3
Description:
Graduate level course requires reading, research, and programming selected to address the open problems of improving the speed and robustness of algorithms for learning in networks and other self-organizing systems. The state-of-the-art methods for supervised training of neural networks followed by the implementation and application of genetic algorithms. Evolution and self-organization of complex, adaptive, nonlinear systems for solving problems of pattern recognition, cognition, and control. Obtaining insight into the internal workings of neural networks. Current theories and experimental testing used for analysis and testing of connections and thresholds of trained neural networks. Reference materials include research reports, papers, and books on the theory and design of neural network based processors and problem solving systems.
CSCE990 Seminar 1-3, max 6
Prereq: Permission
Description:
To lead graduate students to the current frontiers of a particular area of computer science which is of topical interest.
CSCE990 Sensor Networks 3
Description:In this course, theoretical and practical insight to the wireless sensor networks, networking in these networks, and their applications will be given. Among the topics covered are: basics of sensor networks, including hardware and software considerations; networking in wireless sensor networks, including recent developments in application, transport, routing, link, and physical layers, as well as cross-layer design issues; and applications of sensor networks, including multimedia, underwater, and underground. The course will cover the recent developments in wireless sensor networks and include a group project that will provide hands-on interaction with a wireless sensor network testbed. You will have the chance to apply what you have learned in the course during the project.
CSCE996 Research Problems Other Than Thesis 1-6
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.
CSCE999. Doctoral Dissertation 1-24, max 55
Description:
Admission to doctoral degree program and permission of supervisory committee chair.




