Teaching

Instructor of Record (Summer 2001)
COSMOS-UCI: California State Summer School for Mathematics & Science
Course for Gifted High School Students: The Science of FingerPrinting using MatLab
Teaching Assistant

ICS121 : Software Tools and Methods (Spring 2001)
ICS121 : Software Tools and Methods (Winter 2001)
ICS184 : Introduction to Database Management (Fall 2000)
Guest Lecturer

ICS221 : Software Engineering
ICS229 : Softtalks: Seminar in Software Engineering
ICS52 : Introduction to Software Engineering

Course Descriptions

  • ICS 52: Introduction to Software Engineering
    Concepts, methods, and current practice of software engineering. Large-scale software production, software life cycle models, principles and techniques for each stage of development. Laboratory project applying these concepts.

  • ICS 121: Software Tools and Methods.
    Introduction to software design principles, paradigms, tools, and techniques. Topics include alternative architectural styles, iterative refinement, design patterns, mapping design onto code, design tools, and design notations. Includes extensive practice in creating designs and study of existing designs.

  • ICS 184: Introduction to Database Management.
    Covers fundamental principles underlying data management systems. Content includes key techniques including storage management, buffer management, record-oriented file system, access methods, query optimization, and query processing.

  • ICS 221: Software Engineering
    Study of the concepts, methods, and tools for the analysis, design, construction, and measurement of complex software-intensive systems. Underlying principles emphasized. State-of-the-art software engineering and promising research areas covered, including project management.

  • ICS 229: Softtalks: Seminar in Software Engineering
    Current research and research trends in Informatics. Forum for presentation and criticism by students of research work in progress.