Many years ago, when the idea of software prototyping was born first we thought of throwaway prototypes. Later we were more specific and distinguished:
- explorative prototypes - those to better understand user interaction patterns
- experimental prototypes - those to clarify the decomposition type, software architecture and complexity by drilling down to critical functionality
With the availability of development workbenches and tools we went into
- evolutionary prototyping - build the system by refining it and stretching and expanding its operational environment, this might be incremental or extreme ...
We now should think of evolutionary system development. Choose a universal working environment to create software systems in one flow by flatten the dimensions components, variants and revisions to revisions. Multi-strategy, multi-model, multi-datasource, multi-timeframe, cross-platform, multi-front-end, .....
Mathematica. It is a development platform integrating computation in any workflow supporting many technology platforms. If you view processes as computation you sit down, describe and get immediate results. This is the start point of an innovative spiral. It is more than refining, stretching and expanding.
Use the insight you get in step n to abstract, systematize, simplify or expand in step n+1.....