What is VDSF?

The virtual Data Space Framework (vdsf) is a tool to simplify the development of software projects. It provides an alternative to complex multi-threaded applications by simplifying the process and by making it easier to add additional elements later on.

The way it works: you don't need to design mechanisms for threads to exchange data and synchronize accesses to it. What you should do instead is to design your tasks and the data required for communication by the different tasks. Easier to explain using an example (not a very realistic one - just to demonstrate how the whole thing works).

A stock exchange - a list of some of the tasks:

Based on this, our preliminary list of data containers will be:

Note that pending requests could be stored in the database instead. The current design is based on the premise that data in the VDS can be recovered if a crash occurs. Furthermore, RDBMS real strength (IMHO) is in their ability to run complex queries but this is not the case here - all we are doing is trying to match the prices of buying and selling requests.

The programs that we need to write are:

Once this basic structure is in place, it is easy to see how additional programs and data structures can be written to beef up the system:

In conclusion, using VDSF allows a more modular approach to solve complex situations. Each program/module will be simpler, less error prone, and the programming team will be able to concentrate on the actual logic needed to satisfy the requirements of the system instead of putting a lot of effort on unrelated tasks (managing concurrency, for example).

Last updated on May 22, 2008.