We introduce a framework that generalizes algebraic specifications by equipping algebras
with descriptions of evaluation strategies. The resulting abstract mathematical description
allows one to model the implementation of algebras on various platforms in a way that is
independent of the function-oriented specifications.
We study algebras with associated data dependencies. The latter provide separate means for
modelling computational aspects apart from the functional specifications captured by an
algebra. The formalization of evaluation strategies (1) introduces increased portability
among different hardware platforms, and (2) allows a potential increase in execution
efficiency, since a chosen evaluation strategy may be tailored to a particular platform. We
present the development process where algebraic specifications are equipped with data
dependencies, the latter are refined, and, finally, mapped to actual hardware architectures.