Formal refinement patterns for goal-driven requirements elaboration | Synapse