Using weaves for software construction and analysis | Synapse