Sie sind auf Seite 1von 4

Computer Science and Engineering

Course Listing
2002-2003
(Updated 3/7/02)

100 Principles of Programming with C++. (3) 226 Assembly Language Programming (Intel). (4)
Principles of problem solving using C++, algorithm design, CPU/memory/peripheral device interfaces and programming.
structured programming, fundamental algorithms and techniques, System buses, interrupts, serial and parallel I/O, DMA,
and computer systems concepts. Social and ethical coprocessors. Intel-based assignments. Lecture, lab. Cross-
responsibility. Lecture, lab. Prerequisite: MAT 170. General listed as EEE 226. Credit is allowed for only CSE 226 or
Studies: CS EEE 226. Prerequisites: CSE 100 (or 110 or 200); CSE 120
or EEE 120.
110 Principles of Programming with Java. (3)
Concepts of problem solving using Java, algorithm design, 240 Introduction to Programming Languages. (3)
structured programming, fundamental algorithms and techniques, Introduces the procedural (C++), applicative (LISP), and
and computer systems concepts. Social and ethical declarative (Prolog) languages. Lecture, lab. Prerequisite:
responsibility. Lecture, lab. Prerequisite: MAT 170. CSE 210.

120 Digital Design Fundamentals. (3) 310 Data Structures and Algorithms. (3)
Number systems, conversion methods, binary and complement Advanced data structures and algorithms, including stacks,
arithmetic, Boolean algebra, circuit minimization, ROMs, PLAs, queues, trees (B, B+, AVL), and graphs. Searching for
flipflops, synchronous sequential circuits. Lecture, lab. Cross- graphs, hashing, external sorting. Lecture, lab. Prerequisites:
listed as EEE 120. Credit is allowed for only CSE 120 or EEE CSE 210; MAT 243.
120. Prerequisite: computer literacy.
330 Computer Organization and Architecture. (3)
180 Computer Literacy. (3) Instruction set architecture, processor performance and
Introduces personal computer operations and their place in design; data path, control (hardwired, micro programmed),
society. Problem solving approaches using databases, pipelining, input/output. Memory organization with cache,
spreadsheets, and word processing. May be taken for credit on virtual memory. Prerequisite: CSE 225 (or 226) or EEE 225
either Windows or Macintosh, but not both. Lecture, (or 226).
demonstration. Prerequisite: non-major. General Studies: CS
340 Principles of Programming Languages. (3)
181 Applied Problem Solving with Visual BASIC. (3) Introduces language design and implementation. Parallel,
Introduces systematic definition of problems, solution formulation, machine dependent and declarative features; type theory;
and method validation. Requires computer solution using Visual specification, recognition, translation, run-time management.
BASIC for projects. Lecture, lab. Prerequisites: MAT 117; non- Prerequisites: CSE 225 (or 226) or EEE 225 (or 226); CSE
major. General Studies: CS 240, 310.

185 Internet and the World Wide Web. (3) 355 Introduction to Theoretical Computer Science. (3)
Fundamental Internet concepts, World Wide Web browsing, Introduces formal language theory and automata, Turing
publishing, searching, advanced Internet productivity tools. machines, decidability/undecidability, recursive function
theory, and complexity theory. Prerequisite: CSE 310.
200 Concepts of Computer Science. (3)
Overview of algorithms, languages, computing systems, theory. CSE 360 Introduction to Software Engineering. (3)
Problem solving by programming with a high-level language Software life cycle models; project management, team
(Java or other). Lecture, lab. Prerequisite: CSE 100 or 110 or one development environments and methodologies; software
year of high school programming with Java or C++ or PASCAL. architectures; quality assurance and standards; legal, ethical
General Studies: CS issues. Prerequisites: CSE 210, 240.

210 Object-Oriented Design and Data Structures. (3) CSE 408 Multimedia Information Systems. (3)
Object-oriented design, static and dynamic data structures Design, use, and applications of multimedia systems.
(strings, stacks, queues, binary trees), recursion, searching, and Introduces acquisition, compression, storage, retrieval, and
sorting. Professional responsibility. Prerequisite: CSE 200. presentation of data from different media such as images,
General Studies: text, voice, and alphanumeric. Prerequisite: CSE 310.

225 Assembly Language Programming (Motorola). (4) CSE 412 Database Management. (3)
Assembly language programming, including input/output Introduces DBMS concepts. Data models and languages.
programming and exception/interrupt handling. Register-level Relational database theory. Database security/integrity and
computer organization, I/O interfaces, assemblers, and linkers. concurrency. Prerequisite: CSE 310.
Motorola-based assignments. Lecture, lab. Cross-listed as EEE
225. Credit is allowed for only CSE 225 or EEE 225.
Prerequisites: CSE 100 (or 110 or 200); CSE 120 or EEE 120.
CSE 420 Computer Architecture I. (3) distributed object systems. Dynamic discovery and
Computer architecture. Performance versus cost tradeoffs. invocation. Lecture, projects. Prerequisite: CSE 360 or
Instruction set design. Basic processor implementation and instructor approval.
pipelining. Prerequisite: CSE 330.
446 Client-Server User Interfaces. (3)
Client-server model and its use in creating and managing
421 Microprocessor System Design I. (4) window interfaces. Toolkits and libraries including X11,
Assembly language programming and logical hardware design of Microsoft Foundation Classes, and Java Abstract Window
systems using 8-bit microprocessors and micro controllers. Toolkit. Lecture, projects. Prerequisite: CSE 310 or instructor
Fundamental concepts of digital system design. Reliability and approval.
social, legal implications. Lecture, lab. Prerequisite: CSE 225 or
EEE 225. 450 Design and Analysis of Algorithms. (3)
Design and analysis of computer algorithms using analytical
422 Microprocessor System Design II. (4) and empirical methods; complexity measures, design
Design of microcomputer systems using contemporary logic and methodologies, and survey of important algorithms.
microcomputer system components. Requires assembly Prerequisite: CSE 310.
language programming. Prerequisite: CSE 421
457 Theory of Formal Languages. (3)
423 Microcomputer System Hardware. (3) Theory of grammar, methods of syntactic analysis and
Information and techniques presented in CSE 422 are used to specification, types of artificial languages, relationship
develop the hardware design of a multiprocessor, between formal languages, and automata. Prerequisite: CSE
multiprogramming, microprocessor- based system. Prerequisite: 355.
CSE 422. General Studies: L
459 Logic for Computing Scientists. (3)
428 Computer-Aided Processes. (3) Propositional logic, syntax and semantics, proof theory
Hardware and software considerations for computerized versus model theory, soundness, consistency and
manufacturing systems. Specific concentration on automatic completeness, first order logic, logical theories, automated
inspection, numerical control, robotics, and integrated theorem proving, ground resolution, pattern matching
manufacturing systems. Prerequisite: CSE 330. unification and resolution, Dijkstras logic, proof obligations,
and program proving. Prerequisite: CSE 355.
430 Operating Systems. (3)
Operating system structure and services, processor scheduling, 460 Software Analysis and Design. (3)
concurrent processes, synchronization techniques, memory Requirements analysis and design; architecture and
management, virtual memory, input/output, storage patterns; representations of software; formal methods;
management, and file systems. Prerequisites: CSE 330, 340. component-based development. Lecture, projects.
Prerequisite: CSE 360.
432 Operating System Internals. (3)
IPC, exception and interrupt processing, memory and thread 461 Software Engineering Project I. (3)
management, user-level device drivers, and OS servers in a First of two-course software team-development sequence.
modern micro kernel-based OS. Prerequisite: CSE 430. Planning, management, design, and implementation using
object-oriented technology, CASE tools, CMM-level-5
434 Computer Networks. (3) guidelines. Lecture, lab, oral and written communications.
Cryptography fundamentals; data compression; error handling; Prerequisite: CSE 360.
flow control; multihop routing; network protocol algorithms;
network reliability, timing, security; physical layer basics. CSE 462 Software Engineering Project II. (3)
Prerequisite: CSE 330. Second of two-course software team-development
sequence. Software evolution, maintenance, reengineering,
438 Systems Programming. (3) reverse engineering, component-based development, and
Design and implementation of systems programs, including text outsourcing. Lecture, lab, oral and written communications.
editors, file utilities, monitors, assemblers, relocating linking Prerequisite: CSE 461.
loaders, I/O handlers, and schedulers. Prerequisite: CSE 421 or
instructor approval. General Studies: L 470 Computer Graphics. (3)
Display devices, data structures, transformations, interactive
440 Compiler Construction I. (3) graphics, 3-dimensional graphics, and hidden line problem.
Introduces programming language implementation. Prerequisites: CSE 310; MAT 342.
Implementation strategies such as compilation, interpretation,
and translation. Major compilation phases such as lexical
analysis, semantic analysis, optimization, and code generation.
Prerequisites: CSE 340, 355.
471 Introduction to Artificial Intelligence. (3)
State space search, heuristic search, games, knowledge
representation techniques, expert systems, and automated
445 Distributed Computing with Java and CORBA. (3) reasoning. Prerequisites: CSE 240, 310.
Frameworks for distributed software components.
Foundations of client-server computing and architectures for 473 Nonprocedural Programming Languages. (3)
Functional and logic programming using languages like Lucid physical layout. Application of synthesis tools. Prerequisite:
and Prolog. Typical applications would be a Screen Editor and an CSE 517.
Expert System. Prerequisite: CSE 355.
520 Computer Architecture II. (3)
476 Introduction to Natural Language Processing. (3) Computer architecture description languages, computer
Principles of computational linguistics, formal syntax, and arithmetic, memory-hierarchy design, parallel, vector,
semantics, as applied to the design of software with natural multiprocessors, and input/ output. Prerequisites: CSE 420,
(human) language I/O. Prerequisite: CSE 310 or instructor 430.
approval.
521 Microprocessor Applications. (4)
477 Introduction to Computer-Aided Geometric Design. (3) Microprocessor technology and its application to the design
Introduces parametric curves and surfaces, Bezier and B-spline of practical digital systems. Hardware, assembly language
interpolation, and approximation techniques. Prerequisites: CSE programming, and interfacing of microprocessor-based
210, 470; MAT 342. systems. Lecture, lab. Prerequisite: CSE 421.

484 Internship. (1–12) 523 Microcomputer Systems Software. (3)


Developing system software for a multiprocessor,
507 Virtual Reality Systems. (3) multiprogramming, microprocessor-based system using
Computer generated 3D environments, simulation of reality, information and techniques presented in CSE 421, 422.
spatial presence of virtual objects, technologies of immersion, Prerequisite: CSE 422.
tracking systems. Lecture, lab. Prerequisite: CSE 408 or 470 or
508 or instructor approval. 526 Parallel Processing. (3)
Real and apparent concurrency. Hardware organization of
508 Digital Image Processing. (3)Digital image fundamentals, multiprocessors, multiple computer systems, scientific
image transforms, image enhancement and restoration attached processors, and other parallel systems.
techniques, image encoding, and segmentation methods. Prerequisite: CSE 330 or 423.
Prerequisite: EEE 303 or instructor approval.
531 Distributed & Multiprocessor Operating Systems. (3)
510 Database Management System Implementation. (3) Distributed systems architecture, remote file access,
Implementation of database systems. Data storage, indexing, message-based systems, object-based systems,
querying, and retrieval. Query optimization and execution, client/server paradigms, distributed algorithms, replication
concurrency control, and transaction management. Prerequisite: and consistency, and multiprocessor operating systems.
CSE 412. Prerequisite: CSE 432 or instructor approval.
512 Distributed Database Systems. (3)
Distributed database design, query processing, and transaction 532 Advanced Operating System Internals. (3)
processing. Distributed database architectures and Memory, processor, process and communication
interoperability. Emerging technology. Prerequisite: CSE 412. management, and concurrency control in the Windows NT
multiprocessor and distributed operating system kernels and
513 Rules in Database Systems. (3) servers. Prerequisites: CSE 432, 531 (or 536).
Declarative and active rules. Logic as a data model. Evaluation
and query optimization. Triggers and ECA rules. Current 534 Advanced Computer Networks. (3)
research topics. Prerequisite: CSE 412. Advanced network protocols and infrastructure, applications
of high performance networks to distributed systems, high-
514 Object-Oriented Database Systems. (3) performance computing and multimedia domains, special
Object-oriented data modeling, definition, manipulation. Identity features of networks. Prerequisite: CSE 434.
and inheritance. Query languages. Schema evolution.
Versioning. Distributed object management. Extended relational 536 Advanced Operating Systems. (3)
systems. Prerequisite: CSE 412. Protection and file systems. Communication, processes,
synchronization, naming, fault tolerance, security, data
515 Multimedia and Web Databases. (3) replication, and coherence in distributed systems. Real-time
Data models for multimedia and Web data; query processing and systems. Prerequisite: CSE 430.
optimization for inexact retrieval; advanced indexing, clustering,
and search techniques. Prerequisites: CSE 408, 412.

539 Applied Cryptography. (3)


Use of cryptography for secure protocols over networked
517 Hardware Design Languages. (3) systems, including signatures, certificates, timestamps, electrons,
Introduces hardware design languages. Modeling concepts digital cash, and other multiparty coordination. Prerequisite: CSE
for specification, simulation, and synthesis. Prerequisite: 310 or instructor approval.
CSE 423 or EEE 425 or instructor approval.
540 Compiler Construction II. (3)
518 Synthesis with Hardware Design Languages. (3) Formal parsing strategies, optimization techniques, code
Modeling VLSI design in hardware design languages for generation, extensibility and transportability considerations, and
synthesis. Transformation of language-based designs to recent developments. Prerequisite: CSE 440.
545 Programming Language Design. (3) Reasoning about time and action, plan synthesis and
Language constructs, extensibility and abstractions, and runtime execution, improving planning performance, applications to
support. Language design process. Prerequisite: CSE 440. manufacturing intelligent agents. Prerequisite: CSE 471 (or
its equivalent).
550 Combinatorial Algorithms and Intractability. (3)
Combinatorial algorithms, non-deterministic algorithms, classes P 576 Topics in Natural Language Processing. (3)
and NP, NP-hard and NP-complete problems, and intractability. Comparative parsing strategies, scoping and reference
Design techniques for fast combinatorial algorithms. Prerequisite: problems, nonfirst-order logical semantic representations,
CSE 450. and discourse structure. Prerequisite: CSE 476 or instructor
approval.
555 Theory of Computation. (3)
Rigorous treatment of regular languages, context-free languages, 577 Advanced Computer-Aided Geometric Design I. (3)
Turing machines and decidability, reducibility, and other General interpolation; review of curve interpolation and
advanced topics in computability theory. Prerequisite: CSE 355 approximation; spline curves; visual smoothness of curves;
or instructor approval. parameterization of curves; introduces surface interpolation
and approximation. Prerequisites: both CSE 470 and 477 or
562 Software Process Automation. (3) only instructor approval.
Representing the software process; creating a measured and
structured working environment; using, constructing, and 578 Advanced Computer-Aided Geometric Design II. (3)
adapting component-based tools. Prerequisite: CSE 360. Coons patches and Bezier patches; triangular patches;
arbitrarily located data methods; geometry processing of
563 Software Requirements and Specification. (3) surfaces; higher dimensional surfaces. Prerequisites: both
Examines the definitional stage of software development; CSE 470 and 477 or only instructor approval.
analysis of specification representations, formal methods, and
techniques emphasizing important application issues. 579 NURBS: Non-uniform Rational B-Splines. (3)
Prerequisite: CSE 460. Projective geometry, NURBS-based modeling, basic theory
of conics and rational Bezier curves, rational B-splines,
564 Software Design. (3) surfaces, rational surfaces, stereographic maps, quadrics,
Examines software design issues and techniques. Includes a IGES data specification. Prerequisites: CSE 470, 477.
survey of design representations and a comparison of design
methods. Prerequisite: CSE 460. CSE 593 Applied Project. (1–12)

565 Software Verification, Validation, and Testing. (3) CSE 598 Special Topics. (1–4)
Test planning, requirements-based and code-based testing
techniques, tools, reliability models, and statistical testing.
Prerequisite: CSE 460.

566 Software Project, Process, and Quality Management. (3)


Project management, risk management, configuration
management, quality management, and simulated project
management experiences. Prerequisite: CSE 360.

570 Advanced Computer Graphics I. (3)


Hidden surface algorithms, lighting models, and shading
techniques. User interface design. Animation techniques.
Fractals and stochastic models. Raster algorithms. Prerequisite:
CSE 470.

571 Artificial Intelligence. (3)


Definitions of intelligence, computer problem solving, game
playing, pattern recognition, theorem proving, and semantic
information processing; evolutionary systems; heuristic
programming. Prerequisite: CSE 471.

573 Advanced Computer Graphics II. (3)


Modeling of natural phenomena: terrain, clouds, fire, water,
and trees. Particle systems, deformation of solids,
antialiasing, and volume visualization. Lecture, lab.
Prerequisite: CSE 470.

574 Planning and Learning Methods in AI. (3)

Das könnte Ihnen auch gefallen