* Object oriented programming is centered on identifying and describing and describing real-world objects so they can be used by a program the same way that we use objects in real- life.

Object – a person, place, or thing that is defined by an object name, attributes, and behaviors.
Object name – information about the object
Behavior – an activity that is associated with an object.

Identifying and Describing Attributes
  * An Attribute is information that describes an object.
  * Data is the smallest amount of meaningful information.
  * Think of identifying an attribute as naming the attribute, and think of describing an attribute as assigning the attribute name a value.
  * Object oriented programmers determine the number and type of attributes that they need to identify based on the goals of the system they are developing.
  * You should determine the needs of your system before embarking on identifying attributes of objects that will be used by your system. Limit your selection of attributes to only those attributes your system requires.
  * Object oriented programmers decompose each attribute into data and then use data in the corresponding class definition to describe the object. Decomposition is the technique that reduces an attribute into its data component.

Attributes | Data |
Student Name | First name |
| Middle Name |
| Last name |
Student Address | Street Address 1 |
| Street Address 2 |
| City |
| State |
| Zip Code |
Graduated | Graduated |
Decomposing Attributes to Data

  * If the attribute is not the smallest amount of meaningful information, then decompose (break down) the attribute into its data components.

Identifying and Describing Behaviors

  * A behavior of an object is something an object does.
  * You need to identify behaviors that are relative to the goal of your system.
  * Object oriented programmers identify behaviors...