Teaching

Table of Contents

I will be teaching CS 2073 Computer Programming with Engineering Applications this Fall 2008.

CS 6463 Software Testing and Quality Assurance, Syllabus

Courses I teach at UTSA:

CS 1033 Microcomputer Applications
CS1063 Introduction to Programming, Syllabus.
CS3773 Software Engineering, Syllabus
CS4713 Compiler Writing, Syllabus
CS5363 Programming Languages and Compilers, Syllabus.
CS6463 Software Testing and Quality Assurance, Syllabus
CS7123 Research Seminar,  Syllabus.

Back to TOC

CS5363 Programming Languages and Compilers, Fall 2003, Fall 2004.

Back to TOC

I taught CS3773 Software Engineering in Fall 2002 and Spring 2003. The class website is hosted in Webct at UTSA. A copy of the syllabus can be found here.

Back to TOC

The following teaching activities were conducted at Computer Science Department, Illinois Institute of Technology.

I taught CS451 the Unix System Programming from Fall 1999 to Spring 2002 and TA'ing the following courses.

CS451 UNIX System Programming (Instructor)

An introductory study in UNIX operating system with an emphasis on programming at the
system level using C and C++ programming languages. UNIX system calls and techniques of
system software development are presented. UNIX shells and shell script programming are
taught. Basic notions of system administration are also presented. Students should
complete several working system programs and C-shell programs. 

Back to TOC

Spring 2001

CS535 Analysis of Algorithms

Precise definition of the concept of an algorithm. The problem of proving the correctness of an algorithm. Concept of optimality. Time and space bounds. Techniques for proving optimality. Application of these principles to practical algorithms.

CS350

Back to TOC

 

Spring 1999

CS350 Computer Organization and Assembly Language Programming

Provides students with an understanding of the basic aspects of computer organization including functional
units, instruction cycle, control, busses and memory. Provides insight into the relationships between machine
hardware, native instruction set and implementation of high level languages in a machine. Familiarizes
students with the instruction set of a computer through programming assignments. A final project that
involves CPU design at gate and functional level is required. 

CS471 Design of Computer Processors

This course deals with the implementation aspects of Computer Architecture. To cope 
with the complexity of a CPU, we introduce an industrial standard hardware 
description language- VHDL (IEEE-1076). This course begins with a summary of syntax 
of VHDL and hardware modeling techniques. The application of VHDL to top-down 
design methodology is presented. Students get familiar with a commercially available
VHDL tool through weekly hands-on laboratory assignments. The practical aspects of 
the implementation are introduced. The principles of design verification, test 
generation and Build-In-Self-Test (BIST) are presented. The course will be supported 
by the Altera-VHDL software and hardware. The laboratory portion of the course 
consists of eleven distinct projects designed, simulated, implemented and tested by
the student.

Back to TOC

 

Fall 1998

CS 551   Operating System Design and Implementation
This course covers the design and implementation in detail of process, inter-process communication, semaphores, monitors, message passing, remote procedure calls, scheduling algorithm, input/output, device drivers, memory management, file system design, network file servers, atomic transactions, and security and protection mechanism. The hardware/software interface is examined in detail. Students modify and extend a multi-user operating system. Prerequisite: CS351, CS450, knowledge of C.

 

CS 555  Analytic Models and Simulation of Computer Systems
This course provides an introduction to the techniques needed to construct and analyze performance models of computer systems and communication networks. The course covers discrete and continuous time Markov chains with applications, queues in isolation, queuing networks, approximate techniques, and discrete event simulation techniques. Numerous modeling case studies will focus on the following topics: computer architecture, parallel processing, information retrieval systems, distributed systems, real-time systems, multimedia systems, quality-of-service (QoS), ATM, the Internet,
and the optical networks. Prerequisites: CS450, a statistics course, or consent of instructor.
 
CS 548  Seminar in Broadband Integrated Services Networks
This course provides a comprehensive overview of the technology and standards of ISDN and broadband ISDN, with emphasis on frame relay and ATM. It presents ISDN in detail, including services, technology, and interfaces, and covers the latest standards such as the ITU-T Recommendations and the Frame Relay Forum specifications. Also covered is the key technology of frame relay, which examines frame relay protocols and services as well as frame relay congestion control. Equally comprehensive treatment is given to broadband ISDN, including the latest standards such as the ITU-T recommendations and the ATM Forum specifications. This course also devotes key lectures to discussion of asynchronous transfer mode (ATM) and to examination of protocols, services, the ATM Adaption Layer (AAL),
and ATM traffic and congestion control. Prerequisites: CS542 or ECE542, and CS555 or ECE545, or consent of instructor.

Back to TOC


Spring 1998

CS 595 Advance Java Programming

Back to TOC

Back Home Next

Last Modified: 星期二, 四月 25, 2006 03:37:24 下午