separation of abstract data properties from concrete details of its implementation or storage
separation of the logical view of data (definition) from its implementation (app programs)
system hides certain details of how the data are stored and maintained; simplifies users' interactions with the system.