[1] The discussion which follows is in the spirit of the treatment of refinement and abstraction given by Horning and Randell [8], who provide a lucid and wide-ranging exploration of this topic.

2 Note that the common frame of reference may be identical to one of the given frames.

[3] While I have labeled the events in Figure 3, in general I will leave them unlabeled because the specific nature of the events is usually obvious, and in any case of limited relevance to the present analysis.

[4] One hesitates to draw such a presumptuous comparison, but we can all aspire to producing systems with the grace, beauty, and intrinsic value exemplified by Michaelangelo's work!

[5] This discussion omits many aspects of DFDs that are worthy of attention, such as duration and sequencing of processes and flows.

[6] One might imagine dataflow diagrams in which the semantics require synchronization of flows into and out of a datastore, and in these situations the approach we are taking is somewhat lax, permitting sequences that should be prohibited. While addressing this issue is beyond the scope of the present paper, it is worth noting that this problem might be resolved by introducing additional constructs to indicate the presence of such synchronous flows.

[7] Note that strictly speaking, such decomposition must be thought of as a composite of a refining transformation and a specializing transformation.