data abstraction a review 1309183