This document provides an introduction to object-oriented analysis and design (OOAD). It discusses why the OO approach is useful, specifically for modeling complex systems using concepts and objects. The key aspects of OO covered include abstraction, encapsulation, classes, objects, inheritance, messaging, and the overall application structure of discrete interacting objects. The document also outlines the basic steps of OO analysis to understand the problem domain and OO design to define the software solution. It discusses the use of OO throughout the software development lifecycle.