A data processing system containing a development tool that displays a user interface for at least one of reconfiguring the processing flow of an existing software program according to a data flow model, and developing a new software program according to said data flow model, said user interface comprising:
- a first view configured to receive instructions defining a memory region and dividing said memory region into a plurality of blocks, each block of said plurality of blocks defining a set of values associated with a function;
- a second view configured to receive instructions defining sets of the blocks, each block in a set having a predetermined state reflected by a designated portion of said program according to said data flow model that when executed transforms the values defined by said blocks based on the function;
- and
- a third view configured to receive information reflecting any dependencies among the blocks, wherein each dependency indicates a relationship between a plurality of said blocks based on said predetermined state of each block.