Reification & Decomposition with Schemas
Schemas: used to define the state space of some problem domain and to specify various operations on that state space.
Retrieve Functions: relates objects in the concrete world to those object in the abstract world they are modelling.
We may use a schema to perform the work done by a retrieve function
Specification: the abstract specification
Design: the concrete specification