Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
In general, an abstraction is a model or ideal. You don't have all of the details, but you have the general parameters that can be filled in with details. Further, an abstraction is clear enough for you to tell one abstraction from another. Take, for example, two jobs your company is trying to fill. One's for a Web designer and the other's for a programmer. To advertise for the position, you would not describe the person as a specific person but instead in terms of the characteristics you want for the position. You might have the two abstractions representing the two different positions:
Two Positions Open:
Programmer
Experienced with multi-programmer projects
Experienced with middleware and database programming
ECMAScript programming background
OOP and Design Pattern programming skills
Web designer
Experienced with creating Web graphics
Familiar with animation graphics
Can work with vector graphics
Client-centered approach