Reliable software through requirements definition using data abstractions

Abstract Algebraic specification of data abstractions is a rigorous tool for giving precision to requirements definition. A methodology is discussed for structuring the requirements definition of a system into a multi-leveled specification of data abstractions. The methodology is applied to an example data base system. It is argued that such precision in requirements definition will lead to more reliable software.