Development of parallel programs on shared data-structures -- Revised version | Synapse