Software entities are more complex for their size than perhaps any other human construct, because no...An abstract program consists of conceptual constructs: operations, data types, sequences, and communication...To be sure, the level of our sophistication in thinking about data structures, data types, and operations...Many students of the art hold out more hope for object- oriented programming than for any of the other...use other elements of the metaphor, such as specifications, assembly of components, and scaffolding.