GRADUATE COURSE WORK

University of California, Irvine

 

Course Name

Course Description

Link to the Course web page along with instructor

Fall 2000

 

 

Information Retrieval

Algorithms for the storage, retrieval, filtering, and classification of textual and multimedia data. The vector space model, Boolean and probabilistic queries, and
relevance feedback. Latent semantic indexing; collaborative filtering; and relationship to machine learning methods

Prof Wanda Pratt

Data Structures

An in-depth treatment of data structures and their associated management algorithms including resource complexity analysis.

Prof George Leuker

Configuration Management

This graduate course aims to create a detailed understanding of the relationship between two notions that are pertinent to software evolution: configuration management and run-time change. Two separate exercises will be carried out:  Reading and discussing a series of papers. Performing an individual research project.

Prof Andre van der Hoek

Winter 2001

 

 

Software Engineering

Introduction to the concepts, methods, and current practice of software engineering. The study of large-scale software production; software life cycle models as an organizing structure; principles and techniques appropriate for each stage of production. Laboratory work involves a project illustrating these elements.

Prof David Rosenblum

Formal Methods in Software Engineering

Examination of formal specification models, including algebraic/axiomatic, state-transition, model-based, operational, and temporal logics, along with their related analysis techniques. Formal models in software development are discussed as are different proof techniques

Prof David Rosenblum

Computer Networks

An introductory course on computer network architectures. Layering approach of communication protocols is introduced, and the function of each layer is explained. Various examples are shown from long-haul networks and local area networks to B-ISDN and high speed networks.

Luis Miguel Campos

Spring 2001

 

 

Advanced Computer Networks

Fundamental principles in computer networks are applied to obtain practical experience and skills necessary for designing and implementing computer networks, protocols, and network applications. Various network design techniques, simulation techniques, and UNIX network programming are covered. Prerequisite

 

Steve Silverman

Parallel Computing

Definition of parallel processing systems. Theory and application of arrays, trees, and hypercubes. Computational models, applications: sorting, integer arithmetic, matrix operations, Fast Fourier Transform, and others. Interconnection networks: a framework for the description, analysis, and construction of hypercube-derived networks

 

Prof Isaac Scherson

Internet Technologies

Introduction to Internet technologies. The focus is on both the Internet architecture and applications. Topics covered include Internet routing and multicast protocols, Internet support protocols, Unix network programming, Web, Internet design, and measurement tools.

Mostafa Elderfawy

Computer System Architecture

Design of computer elements: ALU, control unit, and arithmetic circuits. Memory hierarchy and organization. Caches. Function unit sharing and pipelining. I/O and interrupt processing. RTL and behavioral modeling using hardware description languages. Microprocessor organization and implementation techniques.

 

Prof Isaac Scherson

Fall 2001

 

 

Advance Compiler Construction

Advanced study of programming language implementation techniques: optimizations such as common sub-expression elimination, register allocation, and instruction scheduling. Implementation of language features such as type-directed dispatch, garbage collection, dynamic linking, and just-in-time code generation.

 

Prof Michael Franz

Winter 2002

 

 

 

Advanced System Software

Study of operating systems including interprocess communication, scheduling, resource management, concurrency, reliability, validation, protection and security, and distributed computing support. System software design languages and modeling analysis.

 

Prof Stephen Jenks

Real-Time Systems

 

Prof K.J Lin

Spring 2002

 

 

Graph Algorithms

Algorithms for solving fundamental problems in graph theory. Graph representations, graph traversal, network flow, connectivity, graph layout, matching problems

 

Prof David Eppestine

Distributed Software Architecture

Practical issues for reducing the software complexity, lowering cost, and designing and implementing distributed software applications. Topics include the distributed object model distributed environment, platform-independent software agents and components, the middleware architecture for distributed real-time and secure services.

Hadar Ziv

Fall 2002

 

 

Parallel Computer Systems

This course will discuss the fundamental issues associated with parallel computing, with particular emphasis on scalability (of both hardware and software) and techniques to exploit available locality. The course will include several project assignments, most of which will involve significant programming effort for parallel machines. In addition, a research-oriented project with written report will be required.

Prof Stephen Jenks

 

Computer Science Department Course Listing: http://www.editor.uci.edu/98-99/ics/ics.3.html

Electrical and Computer Engineering Department: http://www.editor.uci.edu/01-02/engr/engr.8.html