The concept that internal details of a system can be ignored if you know the overall inputs, outputs and behaviour, so that the component may be used as part of a larger system or to operate on its own.
Examples:
- If you can operate a TV remote, you don't need to open up the set and fiddle with the CathodeRayTube (or LCD/PlasmaDisplay these days)
- The ObjectModel for the MsXml DLL: you can call methods without knowing how they were coded
See also: InformationHiding, BlackBoxTesting, BlackBoxWindowManager