Abstraction-based software development. - Berzins, Valdis; Gray, Michael; Naumann, David (Communications of the ACM, 1986)