The examination of a problem by modeling it as a group of interacting objects. An object is defined by its class, data elements and behavior. For example; in an order processing system, an invoice is a class, and printing, viewing and totalling are examples of its behavior. Objects (individual invoices) inherit this behavior and combine it with their own data elements. See
CRC cards and
object-oriented programming.