A Software Stack is an ordered collection of software that makes it possible to complete a particular task. Often a critical part of any stack is the Platform the rest of the stack is built around. Some common platforms are
Graphically, this is represented in Figure 1 See: 1):
In this case we are particularly interested in building an idealized DIDO Stack with an idealized DIDO Platform. The idealized stack may not be completely accurate for all DIDOs, however, it provides a normative structure of what the pieces are in a DIDO Stack and in a DIDO Platform and how they are interrelated.
To accomplish this, a Database stack is presented with some idealized paths through the stack to met certain user scenarios. Then the DIDO Stack is presented as a transform of the Database Stack.