This report provides a basic understanding of Object-Oriented Design (OOD) and some of its features. The report briefly summarizes the history of OOD, includes a description of an OOD methodology, and defines and discusses various concepts and terminology used in COD. The level of support that various programming languages provide for COD is discussed in some detail. Languages covered include Modula-2, Ada, C++, Object C, LISP, Smalltalk, and Eiffel. Section 4 discusses how OOD interacts with areas of current software engineering research, especially software reuse and alternative life cycle models. The report also includes a glossary of OOD terms and an annotated bibliography of related papers and reports.