CSE
1000
FRESHMAN UNDERGRADUATE RESEARCH
(0-0)
Freshman level undergraduate research course. Prerequisites: Departmental good standing and permission of instructor. May be taken a maximum of 3 times.
|
CSE
1104
INTRODUCTION TO ENGINEERING
(1-0)
Introduction to basic engineering concepts. Students will become familiar with engineering and its many sub-fields, ethical responsibilities, creativity and design. Corequisite: CSE 1105.
|
CSE
1105
INTRODUCTION TO COMPUTER SCIENCE AND ENGINEERING
(1-0)
Introduction to engineering concepts, the computer science and engineering disciplines, skills for written communication, and departmental orientation. Corequisite: CSE 1104.
|
CSE
1301
COMPUTER LITERACY
(2-3)
For those persons having an interest in finding out what a computer is (and is not), the types of problems suited for computers, and how to utilize a computer to solve problems. The organization and characteristics of computers; application of commercial software such as word processors, spreadsheets, database packages, and communications packages.
|
CSE
1310
INTRODUCTION TO COMPUTERS & PROGRAMMING
(3-0)
An introduction to the computer, to the algorithmic process, and to programming using basic control and data structures, using a procedural language. Prerequisite: MATH 1302 (or concurrently).
|
CSE
1311
INTRODUCTORY PROGRAMMING FOR ENGINEERS & SCIENTISTS
(3-0)
An introduction to the computer, to the algorithmic process, and to programming using basic control and data structures. Prerequisite: MATH 1323 (or concurrently).
|
CSE
1320
INTERMEDIATE PROGRAMMING
(3-0)
Programming concepts beyond basic control and data structures. Emphasis is given to data structures including linked-lists and trees as well as modular design consistent with software engineering principles. Prerequisite: CSE 1104, CSE 1105, CSE 1310 (or CSE 1311), and MATH 1323 (or concurrently).
|
CSE
1325
OBJECT-ORIENTED PROGRAMMING
(3-0)
Program design and implementation using Java. Object-oriented concepts, basic Unified Modeling Language (UML) modeling, collection classes, generics, reflection, reusability, and introduction to design patterns. Projects involve extensive programming and may include user interfaces and multithreading. Prerequisite: CSE 1320.
|
CSE
1392
SPECIAL TOPICS
(3-0)
New developments in the field of computer science and engineering. Topic may vary from semester to semester. May be repeated for credit when topic changes. Departmental approval required in advance to use for degree credit. Prerequisite: consent of advisor.
|
CSE
2000
SOPHOMORE UNDERGRADUATE RESEARCH
(0-0)
Sophomore level undergraduate research course. Prerequisites: Departmental good standing and permission of instructor. May be taken a maximum of 3 times.
|
CSE
2312
COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING
(3-0)
Computer organization from the viewpoint of software, including: the memory hierarchy, instruction set architectures, memory addressing, input-output, integer and floating-point representation and arithmetic. The relationship of higher-level programming languages to the operating system and to instruction set architecture are explored. Some programming in an assembly language. Prerequisite: CSE 1320.
|
CSE
2315
DISCRETE STRUCTURES
(3-0)
Propositional and predicate logic, mathematical proof techniques, sets, combinatorics, functions and relations, graphs, and graph algorithms. Prerequisites: CSE 1310 and MATH 1426.
|
CSE
2320
ALGORITHMS & DATA STRUCTURES
(3-0)
Design and analysis of algorithms with an emphasis on data structures. Approaches to analyzing lower bounds on problems and upper bounds on algorithms. Classical algorithm design techniques including algorithms for sorting, searching, and other operations on data structures such as hash tables, trees, graphs, strings, and advanced data structures, dynamic programming and greedy approaches. Prerequisite: CSE 1320 and CSE 2315.
|
CSE
2392
SPECIAL TOPICS
(3-0)
New developments in the field of computer science and engineering. Topic may vary from semester to semester. May be repeated for credit when topic changes. Departmental approval required in advance to use for degree credit. Prerequisite: consent of advisor.
|
CSE
2441
INTRODUCTION TO DIGITAL LOGIC
(3-3)
INTRODUCTION TO DIGITAL LOGIC (3-3) Analysis, design and testing of combinational and sequential logic circuits. Topics include Boolean algebra, logic circuit minimization techniques, synchronous sequential circuit design, algorithmic state machine design, design of arithmetic/logic and control units. Computer aided design tools are utilized throughout the course. Prerequisite: CSE 1320 and CSE 2315.
|
CSE
3000
JUNIOR UNDERGRADUATE RESEARCH
JUNIOR UNDERGRADUATE RESEARCH
(0-0)
Junior level undergraduate research course. Prerequisites: Departmental good standing and permission of instructor. May be taken a maximum of 3 times.
|
CSE
3302
PROGRAMMING LANGUAGES
(3-0)
Introduction, analysis, and evaluation of the important concepts found in a variety of programming languages. Formalisms useful in specifying language syntax and semantics; programming language paradigms such as algorithmic, functional, logic, and object-oriented. Prerequisite: CSE 1325 and CSE 2320.
|
CSE
3310
FUNDAMENTALS OF SOFTWARE ENGINEERING
(3-0)
Software engineering principles, processes, and techniques; software development approaches focusing on functional analysis and functional design methods. Configuration management, implementation strategies, and testing. Team project. Prerequisite: CSE 1325 and CSE 2315.
|
CSE
3311
OBJECT-ORIENTED SOFTWARE ENGINEERING
(3-0)
Study of an agile unified methodology and its application to object-oriented software development. Topics include requirements acquisition, use case derivation, modeling and design of interaction behavior and state behavior, introduction to design patterns, derivation of design class diagrams, implementation considerations and deployment. Team project. Prerequisite: CSE 1325 and CSE 2320.
|
CSE
3313
INTRODUCTION TO SIGNAL PROCESSING
(3-0)
Examines models for presentation and processing of digital signals. Sampling theorem, correlation and convolution, time and frequency analysis of linear systems, Fourier transform, Z-transform, design of digital filters structures for discrete time systems. Prerequisite: CSE 2320, IE 3301, MATH 3330.
|
CSE
3315
THEORETICAL CONCEPTS IN COMPUTER SCIENCE AND ENGINEERING
(3-0)
Selected theoretical concepts including regular and context free languages, finite state and pushdown automata, Turing machines, computability, and NP-completeness. Prerequisite: CSE 2315.
|
CSE
3316
PROFESSIONAL PRACTICES
(3-0)
Ethics. Contemporary social aspects and responsibilities of computing in a global, societal context. Lifelong learning goals and resources. Entrepreneurship and intellectual property. Project involving written and oral communication. Prerequisite: COMS 3302, IE 3312. Corequisite: CSE 3310.
|
CSE
3320
OPERATING SYSTEMS
(3-0)
Functions and components of an operating system, including process synchronization, job scheduling, memory management, file systems protection, and deadlocks. Related system software, such as loaders, linkers, assemblers, and windowing systems. Prerequisite: CSE 2312; and IE 3301 or MATH 3313 (or concurrently).
|
CSE
3330
DATABASE SYSTEMS AND FILE STRUCTURES
(3-0)
Database system architecture; file structures for databases, including indexing hashing, and B+-trees; the relational model and algebra; the SQL database language; Entity-Relationship data modeling; functional dependencies and basic normalization. Prerequisite: CSE 1325 and CSE 2320.
|
CSE
3392
SPECIAL TOPICS
(3-0)
New developments in the field of computer science and engineering. Topic may vary from semester to semester. May be repeated for credit when topic changes. Departmental approval required in advance to use for degree credit. Prerequisite: consent of advisor.
|
CSE
3442
EMBEDDED SYSTEMS I
(3-3)
Design of microcomputer based systems: microcomputer programming, component and system architectures, memory interfacing, parallel and serial input/output ( I/O) interfacing, analog to digital (A/D) and digital to analog ( D/A) conversion, and typical applications. Prerequisite: CSE 2441, EE 2440.
|
CSE
4000
SENIOR UNDERGRADUATE RESEARCH
SENIOR UNDERGRADUATE RESEARCH
(0-0)
Senior level undergraduate research course. Prerequisites: Departmental good standing and permission of instructor. May be taken a maximum of 3 times.
|
CSE
4191
INDIVIDUAL PROJECTS
(1-0)
Special problems in computer science and engineering on an individual basis. Topics may change from semester to semester. May be repeated for credit. Departmental approval must be obtained in advance for degree credit. Prerequisite: consent of instructor and department chairperson.
|
CSE
4303
COMPUTER GRAPHICS
(3-0)
Theory and practice for the visual representation of data by computers including display devices, output primitives, planes and curved surfaces, two- and three-dimensional transformations, parallel and perspective viewing, removal of hidden lines and surfaces, illumination models, ray tracing, radiosity, color models, and computer animation. Prerequisite: CSE 2320, and MATH 3319 or MATH 3330.
|
CSE
4305
COMPILERS FOR ALGORITHMIC LANGUAGES
(3-0)
Review of programming language structures, translation, and storage allocation. Theory and practice of compilers and issues in compiler construction including parsing, intermediate code generation, local optimization problems such as register allocation, data-flow analysis, and global optimization. Prerequisite: CSE 3302.
|
CSE
4308
ARTIFICIAL INTELLIGENCE I
(3-0)
An introduction to the field of artificial intelligence studying basic techniques such as heuristic search, deduction, learning, problem solving, knowledge representation, uncertainty reasoning and symbolic programming languages such as LISP. Application areas may include intelligent agents, data mining, natural language, machine vision, planning and expert systems. Prerequisite: CSE 3302 & 3315.
|
CSE
4309
ARTIFICIAL INTELLIGENCE II
(3-0)
Continuation of artificial intelligence methods and techniques, including uncertainty reasoning, machine learning, perception, and advanced topics in knowledge representation, search and planning. Emphasis on design and implementation of AI solutions. Prerequisite: CSE 4308 and IE 3301.
|
CSE
4316
COMPUTER SYSTEM DESIGN PROJECT I
(2-3)
Analysis and design of an industry-type project that involves hardware and software components to meet desired needs within realistic constraints and standards. The project is to be completed in CSE 4317 the following semester. Multidisciplinary teams of CSE 4316 students are required to develop, review, and present problem definition, project planning, requirements formulation, and design specification.Corequisite: CSE 3316. Prerequisite: CSE 3310, CSE 3320. In addition, CSE 3442 for Computer Engineering (CpE) Majors.
|
CSE
4317
COMPUTER SYSTEM DESIGN PROJECT II
(2-3)
Implementation, integration, quality assurance through peer review and testing, and deployment of the project designed in CSE 4316; oral presentation, documentation and project demonstration. Prerequisite: CSE 4316 and continuation with the same team.
|
CSE
4319
MODELING AND SIMULATION
(3-0)
Techniques for system modeling and simulation of stochastic and knowledge-based systems. Modeling methods, model validation and verification procedures, and steady state solution techniques. Prerequisite: CSE 3310 and IE 3301.
|
CSE
4321
SOFTWARE TESTING & MAINTENANCE
(3-0)
Study of software quality assurance, software testing, and software maintenance processes, methods and techniques including formal review techniques, software verification, validation, and testing, types of software maintenance, maintenance activities, and regression testing. Prerequisite: CSE 3310.
|
CSE
4322
SOFTWARE PROJECT MANAGEMENT
(3-0)
Introduction to software project management. Issues include effort estimation and costing, project planning and scheduling, option analysis, software quality assurance, and formal technical reviews. Prerequisite: CSE 3310.
|
CSE
4323
QUANTITATIVE COMPUTER ARCHITECTURE
(3-0)
Pipelined processors, parallel processors including shared and distributed memory, multicore, Very Long Instruction Word (VLIW) and graphics processors, memory and cache design, computer peripherals, and computer clusters. Prerequisite: CSE 3320 or consent of instructor.
|
CSE
4331
DATABASE IMPLEMENTATION AND THEORY
(3-0)
Review of the relational model and algebra; relational calculus; relational database design theory; advanced data modeling concepts; object-oriented and object-relational databases; database system implementation techniques, including concurrency control, recovery, atomic commitment, and query processing and optimization, database security; introduction to advanced concepts, such as active, deductive, spatial, temporal, multimedia and distributed databases. Prerequisite: CSE 3330.
|
CSE
4334
DATA MINING
(3-0)
Automatic discovery of patterns and knowledge from large data repositories, including databases, data warehouses, Web, document collections, and transactions. Basic topics of data mining including data preprocessing, data warehousing and online analytical processing (OLAP), data cube, frequent pattern and association rule mining, correlation analysis, classification and prediction and clustering, as well as advanced topics covering the techniques and applications of data mining on Web and text documents. Prerequisite: CSE 3330 and IE 3301 (or MATH 3313).
|
CSE
4340
MOBILE SYSTEMS ENGINEERING
(3-0)
Mobile devices including hand-held computers, sensor nodes and smart phones, operating systems, middleware and communication in mobile environments. Applications of mobile systems in health, entertainment, security and other areas. Prerequisite: CSE 4344.
|
CSE
4342
EMBEDDED SYSTEMS II
(2-3)
Advanced course in design of microcomputer-based systems. Emphasis is on the application of state-of-the-art microprocessors, microcomputers, and other LSI (large-scale integration) and VLSI (very-large-scale integration) components to real-time, interactive, and online problems. Prerequisite: CSE 3442.
|
CSE
4344
COMPUTER NETWORK ORGANIZATION
(3-0)
Design and analysis of computer networks. Emphasis on the OSI architecture but discusses other schemes (e.g., ARPAnet). Data link control, local networks, protocols/architectures, network access protocols, transport protocols, internetworking, and ISDN. Prerequisite: CSE 3320.
|
CSE
4345
COMPUTATIONAL METHODS IN COMPUTER ENGINEERING
(3-0)
Study of the mathematical foundations for computer engineering. The course will cover selected topics from probability and queuing theory, approximation and numerical methods, and optimization. Includes discussion of applications in such areas as databases, human-machine interface, robotics, networks, security and vision. Prerequisite: CSE 2320, IE 3301, MATH 3330.
|
CSE
4346
ADVANCED COMPUTER NETWORKS
(3-0)
Design and engineering issues in networking. Topics include congestion control, scheduling, multicast routing, connection-oriented switching, DNS, bind, domain name space issues, flow control, traffic management, and admission control. Prerequisite: CSE 4344.
|
CSE
4348
MULTIMEDIA SYSTEMS
(3-0)
A hands-on approach to the study of principles underlying multimedia systems. Topics include multimedia systems design, multimedia hardware and software, issues in effective representation, processing, and communication of multimedia data such as text, graphics, audio, images, and video. Prerequisite: CSE 3320.
|
CSE
4351
PARALLEL PROCESSING
(3-0)
Theory and practice of parallel processing, including characterization of parallel processors, models for memory, algorithms, and interprocess synchronization. Issues in parallelizing serial computations, efficiency and speedup analysis. Programming exercises using one or more concurrent programming languages, on one of more parallel computers. Prerequisite: CSE 3320.
|
CSE
4360
AUTONOMOUS ROBOT DESIGN AND PROGRAMMING
(2-3)
An introduction to robotics and the design and programming of autonomous robot systems. Topics include basic kinematics, dynamics, and control, as well as sensors, knowledge representation, and programming techniques. Course work includes individual and group projects involving the building and programming of simulated and real robots. Prerequisite: CSE 2320 and CSE 3320.
|
CSE
4361
SOFTWARE DESIGN PATTERNS
(3-0)
In-depth study of software design patterns including description of patterns, design principles and techniques used by patterns as well as application of patterns to solving practical design problems. Team project. Prerequisites: CSE 3310 and CSE 3311.
|
CSE
4380
INFORMATION SECURITY
(3-1)
Hands-on introduction to the basics of security. Includes system security, buffer overflows, a high-level overview of cryptography, firewalls and intrusion detection/prevention, malware, penetration testing, forensics, and system administration. Prerequisite: CSE 3320.
|
CSE
4391
INDIVIDUAL PROJECTS
(3-0)
Special problems in computer science and engineering on an individual basis. Topics may change from semester to semester. May be repeated for credit. Departmental approval must be obtained in advance for degree credit. Prerequisite: consent of instructor and department chairperson.
|
CSE
4392
SPECIAL TOPICS
(3-0)
New developments in the field of computer science and engineering. Topic may vary from semester to semester. May be repeated for credit when topic changes. Departmental approval required in advance to use for degree credit. Prerequisite: consent of instructor.
|